Closed Bug 633828 Opened 13 years ago Closed 12 years ago

"Assertion failure: !pn->isOp(JSOP_NOP),"

Categories

(Core :: JavaScript Engine, defect)

defect
Not set
critical

Tracking

()

VERIFIED FIXED
mozilla17
Tracking Status
blocking2.0 --- .x+

People

(Reporter: gkw, Assigned: gkw)

References

Details

(Keywords: assertion, regression, testcase)

Attachments

(2 files, 2 obsolete files)

Attached file stack (obsolete) —
(function() {
  function a() {}
  function a() {}
}
for

asserts js debug shell on TM changeset 8c7a2550e761 without -m nor -j at Assertion failure: pn->pn_op != JSOP_NOP


autoBisect shows this is probably related to the following changeset:

The first bad revision is:
changeset:   27012:2cf0bbe3772a
parent:      26975:7d681f116714
user:        Brendan Eich
date:        Sun Apr 05 21:17:22 2009 -0700
summary:     upvar2, aka the big one take 2 (452498, r=mrbkap).
Attached file corrected stack
previous stack was incomplete :(
Attachment #512031 - Attachment is obsolete: true
If it was a regression in *2009*, we're not going to block on it for FF4.
blocking2.0: ? → -
(In reply to comment #2)
> If it was a regression in *2009*, we're not going to block on it for FF4.

Having .x would be nice.
blocking2.0: - → ?
blocking2.0: ? → .x
OS: Linux → All
Hardware: x86 → All
Whiteboard: js-triage-needed
Still occurs in m-c changeset 5c8405e6226e which has now morphed to:

Assertion failure: !pn->isOp(JSOP_NOP),
Summary: "Assertion failure: pn->pn_op != JSOP_NOP," → "Assertion failure: !pn->isOp(JSOP_NOP),"
I looked into this and this assert seems to be too strict. MakeDefIntoUse checks that this kind of function statments are NOP.
(In reply to Tom Schuster (evilpie) from comment #6)
> I looked into this and this assert seems to be too strict. MakeDefIntoUse
> checks that this kind of function statments are NOP.

Any hope of a quick patch? ;-)
Attached patch Remove bogus assert (obsolete) — Splinter Review
Luke, asking for review here since this somewhat looks like code you recently touched, please feel free to switch reviewers if not correct.
Attachment #644595 - Flags: review?(luke)
I based the patch on evilpie's analysis in comment 6.
Whiteboard: js-triage-needed
Attachment #644595 - Attachment is obsolete: true
Attachment #644595 - Flags: review?(luke)
Attachment #644596 - Flags: review?(luke)
Comment on attachment 644596 [details] [diff] [review]
same as v1, now with a a test

That's right, function definitions get a NOP.
Attachment #644596 - Flags: review?(luke) → review+
Assignee: general → gary
Status: NEW → ASSIGNED
Fantastic, thanks for the quick review!

http://hg.mozilla.org/integration/mozilla-inbound/rev/e9e2767a4275
Flags: in-testsuite+
Target Milestone: --- → mozilla17
https://hg.mozilla.org/mozilla-central/rev/e9e2767a4275
Status: ASSIGNED → RESOLVED
Closed: 12 years ago
Resolution: --- → FIXED
-> VERIFIED based on landed test.
Status: RESOLVED → VERIFIED
Test was nitpicked in preparation for the landing of another test in another bug.

https://hg.mozilla.org/integration/mozilla-inbound/rev/8758f47b0175
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: