jugglinmike c5cbf4122d Improve coverage for section 9 (#726)
* Assert creation of 'arguments' object

Ensure that the 'arguments' object is created in cases where it is not
required by the body but is required by the parameters.

* Add tests for cases that disable "arguments" map

* Add tests for NewTarget override of bound function

* Add test for properties of exotic String objects
2016-08-05 10:07:02 -07:00

29 lines
704 B
JavaScript

// Copyright (C) 2016 the V8 project authors. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-functiondeclarationinstantiation
es6id: 9.2.12
description: >
Arguments are "unmapped" when paramater list is non-simple due to "rest"
parameter
info: |
[...]
9. Let simpleParameterList be IsSimpleParameterList of formals.
[...]
22. If argumentsObjectNeeded is true, then
a. If strict is true or if simpleParameterList is false, then
i. Let ao be CreateUnmappedArgumentsObject(argumentsList).
[...]
---*/
var value;
function rest(a, ...b) {
arguments[0] = 2;
value = a;
}
rest(1);
assert.sameValue(value, 1);