Closed Bug 668390 Opened 13 years ago Closed 13 years ago

Overwriting arguments.callee and arguments.length changes enumerability

Categories

(Core :: JavaScript Engine, defect)

defect
Not set
normal

Tracking

()

RESOLVED DUPLICATE of bug 649567

People

(Reporter: Waldo, Unassigned)

References

(Blocks 1 open bug)

Details

[jwalden@find-waldo-now src]$ dbg/js
js> function f() { return arguments; }
js> var a = f()
js> a.propertyIsEnumerable("length")
false
js> a.length = 17
17
js> a.propertyIsEnumerable("length")
true
js> a.propertyIsEnumerable("callee")
false
js> a.callee = 42
42
js> a.propertyIsEnumerable("callee")
true

I thought we fixed this in mid-April, but maybe we didn't, or this is a different facet of the problem.

This causes two test262 failures:

10.6-13-a-1	In non-strict mode, arguments object should have its own 'callee' property defined (Step 13.a)	fail
10.6-7-1	Arguments Object has length as its own property and does not invoke the setter defined on Object.prototype.length (Step 7)	fail
Status: NEW → RESOLVED
Closed: 13 years ago
Resolution: --- → DUPLICATE
You need to log in before you can comment on or make changes to this bug.