The default bug view has changed. See this FAQ.

ABORT_IF_XML does not guarantee no XML at runtime

RESOLVED INVALID

Status

()

Core
JavaScript Engine
RESOLVED INVALID
8 years ago
4 years ago

People

(Reporter: jorendorff, Unassigned)

Tracking

Other Branch
Points:
---

Firefox Tracking Flags

(Not tracked)

Details

(Reporter)

Description

8 years ago
As a result, XML objects can end up being treated like regular old objects in several places. This test passes without -j, fails with -j.

var arr = [{}, {},
           {}, {},
           {}, {},
           {}, {},
           <x/>, <x/>];  // these last two are equal
var s = '';
for (var i = 0; i < arr.length; i += 2) {
    if (arr[i] == arr[i + 1])
        s += i;
}
assertEq(s, "8");  // got "", expected "8" with -j
(Reporter)

Comment 1

8 years ago
We could have ABORT_IF_XML emit a guard. That seems heinous. We could split XML objects out into their own trace type, TT_XML. But that might be even worse; we would pay for that every time we unbox an object on trace.
E4X is gone.
Status: NEW → RESOLVED
Last Resolved: 4 years ago
Resolution: --- → INVALID
You need to log in before you can comment on or make changes to this bug.