"Assertion failure: !(flags & (0x40 | 0x80)),"

RESOLVED FIXED

Status

()

Core
JavaScript Engine
--
critical
RESOLVED FIXED
5 years ago
4 years ago

People

(Reporter: gkw, Unassigned)

Tracking

(Blocks: 1 bug, {assertion, regression, testcase})

Trunk
x86
Linux
assertion, regression, testcase
Points:
---
Bug Flags:
in-testsuite +

Firefox Tracking Flags

(Not tracked)

Details

(Whiteboard: js-triage-done)

Attachments

(1 attachment)

(Reporter)

Description

5 years ago
Created attachment 606030 [details]
stack

f = (function() {
    "use strict";
    [arguments] = eval()
})

asserts js debug shell on m-c changeset 7e713db43d8d without any CLI arguments at Assertion failure: !(flags & (0x40 | 0x80)),

autoBisect shows this is probably related to the following changeset:

The first bad revision is:
changeset:   87904:bd71047c9b4d
user:        Luke Wagner
date:        Tue Feb 07 12:34:29 2012 -0800
summary:     Bug 724790 - get rid of the hasOverriddenArgs funny business (r=waldo)

Comment 1

5 years ago
The bug here predates bug 724790, bug 724790 just added an assert (at Waldo's suggestion) that caught it.  Waldo: seems like destructuring needs to check for a strict-mode error?
No longer blocks: 724790
Whiteboard: js-triage-needed → js-triage-done

Comment 2

5 years ago
Also, why in the world is the destructoring code emitting qnamepart/enumelem...
(Reporter)

Comment 3

5 years ago
Seems fixed by bug 740446.

autoBisect shows this is probably related to the following changeset:

The first good revision is:
changeset:   91358:fa24b215d49e
user:        Luke Wagner
date:        Mon Apr 02 08:58:30 2012 -0700
summary:     Bug 740446 - make 'arguments' more like a normal local binding (r=bhackett)
Status: NEW → RESOLVED
Last Resolved: 5 years ago
Resolution: --- → FIXED
Yeah, the destructuring code appears to need strict mode error handling.  :-\  Filed bug 757273 on that.
Automatically extracted testcase for this bug was committed:

https://hg.mozilla.org/mozilla-central/rev/efaf8960a929
Flags: in-testsuite+
You need to log in before you can comment on or make changes to this bug.