Closed Bug 373827 Opened 17 years ago Closed 17 years ago

"Assertion failure: OBJ_GET_CLASS(cx, obj)->flags & JSCLASS_HAS_PRIVATE" or crash with let that binds nothing

Categories

(Core :: JavaScript Engine, defect)

x86
macOS
defect
Not set
critical

Tracking

()

VERIFIED FIXED

People

(Reporter: jruderman, Unassigned)

References

Details

(Keywords: crash, testcase)

debug
js> let ([] = [{x: function(){}}]) { }
Assertion failure: OBJ_GET_CLASS(cx, obj)->flags & JSCLASS_HAS_PRIVATE, at jsapi.c:2327

opt
js> let ([] = [{x: function(){}}]) { }; foo;
null deref [@ js_FindProperty]
I wonder if this is related to the kludge of treating lets as vars at the top-level (bug 346749)?  The object being supplied to js_PutBlockObject is the "global" object.
That bug only deals with let declarations. Let statements aren't affected. This is more likely to be bug 361566, though I don't remember the exact reason for the failure.
Depends on: 361566
Fixed by the checkin for bug 375695.
Status: NEW → RESOLVED
Closed: 17 years ago
Depends on: 375695
No longer depends on: 361566
Flags: in-testsuite?
Resolution: --- → FIXED
/cvsroot/mozilla/js/tests/js1_7/regress/regress-373827-01.js,v  <--  regress-373827-01.js
initial revision: 1.1

/cvsroot/mozilla/js/tests/js1_7/regress/regress-373827-02.js,v  <--  regress-373827-02.js
initial revision: 1.1
Flags: in-testsuite? → in-testsuite+
verified fixed 1.9.0 linux/mac*/windows.
Status: RESOLVED → VERIFIED
You need to log in before you can comment on or make changes to this bug.