Open Bug 902001 Opened 12 years ago Updated 3 years ago

Missing [[HasProperty]] call when resolving object environment record references

Categories

(Core :: JavaScript Engine, defect)

defect

Tracking

()

People

(Reporter: anba, Unassigned)

References

(Blocks 1 open bug)

Details

The following test case should output the string "undefined" instead of "0": ----- with (new Proxy({c:0}, { get: (t, pk, r) => pk == "x" ? 0 : 1, has: (t, pk) => pk == "x" && t.c++ == 0 })) {""+x} ----- And this test case should report a ReferenceError: --- with (new Proxy({c:0}, { get: (t, pk, r) => pk == "x" ? 0 : 1, has: (t, pk) => pk == "x" && t.c++ == 0 })) { (function(){"use strict"; ""+x})() } --- See ECMAScript5.1, "10.2.1.2.4 GetBindingValue(N,S)" steps 3-4. Or alternatively "10.2.1.2.6 GetBindingValue(N,S)" steps 3-5 in the ECMAScript6 draft.
Assignee: general → nobody
Status: UNCONFIRMED → NEW
Ever confirmed: true
Shu wants to take a look at this.
Flags: needinfo?(shu)
Flags: needinfo?(shu)
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.