Closed
Bug 1264568
Opened 8 years ago
Closed 8 years ago
Assertion failure: !isIndex(&dummy), at js/src/vm/String.h:1415
Categories
(Core :: JavaScript Engine, defect)
Tracking
()
RESOLVED
WORKSFORME
Tracking | Status | |
---|---|---|
firefox47 | --- | unaffected |
firefox48 | --- | affected |
People
(Reporter: gkw, Unassigned)
References
Details
(Keywords: assertion, testcase, Whiteboard: [jsbugmon:update])
The following testcase crashes on mozilla-central revision 8630367f5e3f (build with --enable-debug --enable-more-deterministic, run with --fuzzing-safe --no-threads --no-baseline --no-ion): f = (function(stdlib, foreign, heap) { "use asm"; ({ "0" () { eval } Backtrace: 0 js-dbg-64-dm-clang-darwin-8630367f5e3f 0x0000000100049d90 js::frontend::Parser<js::frontend::FullParseHandler>::leaveFunction(js::frontend::ParseNode*, js::frontend::ParseContext<js::frontend::FullParseHandler>*, js::frontend::FunctionSyntaxKind) + 1664 (String.h:1415) 1 js-dbg-64-dm-clang-darwin-8630367f5e3f 0x0000000100049503 js::frontend::Parser<js::frontend::FullParseHandler>::functionArgsAndBody(js::frontend::InHandling, js::frontend::ParseNode*, JS::Handle<JSFunction*>, js::frontend::FunctionSyntaxKind, js::GeneratorKind, js::frontend::Directives, js::frontend::Directives*) + 835 (Parser.cpp:3015) 2 js-dbg-64-dm-clang-darwin-8630367f5e3f 0x000000010005c5b0 js::frontend::Parser<js::frontend::FullParseHandler>::functionDef(js::frontend::InHandling, js::frontend::YieldHandling, JS::Handle<JSAtom*>, js::frontend::FunctionSyntaxKind, js::GeneratorKind, js::frontend::Parser<js::frontend::FullParseHandler>::InvokedPrediction, js::frontend::ParseNode**) + 816 (Parser.cpp:2841) 3 js-dbg-64-dm-clang-darwin-8630367f5e3f 0x00000001000663ec js::frontend::Parser<js::frontend::FullParseHandler>::objectLiteral(js::frontend::YieldHandling, js::frontend::Parser<js::frontend::FullParseHandler>::PossibleError*) + 1340 (Parser.cpp:9430) 4 js-dbg-64-dm-clang-darwin-8630367f5e3f 0x0000000100060a67 js::frontend::Parser<js::frontend::FullParseHandler>::primaryExpr(js::frontend::YieldHandling, js::frontend::TripledotHandling, js::frontend::Parser<js::frontend::FullParseHandler>::PossibleError*, js::frontend::TokenKind, js::frontend::Parser<js::frontend::FullParseHandler>::InvokedPrediction) + 743 (Parser.cpp:9501) 5 js-dbg-64-dm-clang-darwin-8630367f5e3f 0x0000000100063f19 js::frontend::Parser<js::frontend::FullParseHandler>::memberExpr(js::frontend::YieldHandling, js::frontend::TripledotHandling, js::frontend::Parser<js::frontend::FullParseHandler>::PossibleError*, js::frontend::TokenKind, bool, js::frontend::Parser<js::frontend::FullParseHandler>::InvokedPrediction) + 809 (Parser.cpp:8742) 6 js-dbg-64-dm-clang-darwin-8630367f5e3f 0x0000000100063811 js::frontend::Parser<js::frontend::FullParseHandler>::unaryExpr(js::frontend::YieldHandling, js::frontend::TripledotHandling, js::frontend::Parser<js::frontend::FullParseHandler>::PossibleError*, js::frontend::Parser<js::frontend::FullParseHandler>::InvokedPrediction) + 737 (Parser.cpp:8270) 7 js-dbg-64-dm-clang-darwin-8630367f5e3f 0x00000001000630c9 js::frontend::Parser<js::frontend::FullParseHandler>::orExpr1(js::frontend::InHandling, js::frontend::YieldHandling, js::frontend::TripledotHandling, js::frontend::Parser<js::frontend::FullParseHandler>::PossibleError*, js::frontend::Parser<js::frontend::FullParseHandler>::InvokedPrediction) + 73 (Parser.cpp:7747) 8 js-dbg-64-dm-clang-darwin-8630367f5e3f 0x0000000100062eaf js::frontend::Parser<js::frontend::FullParseHandler>::condExpr1(js::frontend::InHandling, js::frontend::YieldHandling, js::frontend::TripledotHandling, js::frontend::Parser<js::frontend::FullParseHandler>::PossibleError*, js::frontend::Parser<js::frontend::FullParseHandler>::InvokedPrediction) + 31 (Parser.cpp:7807) 9 js-dbg-64-dm-clang-darwin-8630367f5e3f 0x0000000100061cb1 js::frontend::Parser<js::frontend::FullParseHandler>::assignExpr(js::frontend::InHandling, js::frontend::YieldHandling, js::frontend::TripledotHandling, js::frontend::Parser<js::frontend::FullParseHandler>::PossibleError*, js::frontend::Parser<js::frontend::FullParseHandler>::InvokedPrediction) + 753 (Parser.cpp:7935) 10 js-dbg-64-dm-clang-darwin-8630367f5e3f 0x00000001000616e5 js::frontend::Parser<js::frontend::FullParseHandler>::expr(js::frontend::InHandling, js::frontend::YieldHandling, js::frontend::TripledotHandling, js::frontend::Parser<js::frontend::FullParseHandler>::PossibleError*, js::frontend::Parser<js::frontend::FullParseHandler>::InvokedPrediction) + 37 (Parser.cpp:7584) 11 js-dbg-64-dm-clang-darwin-8630367f5e3f 0x0000000100060dce js::frontend::Parser<js::frontend::FullParseHandler>::primaryExpr(js::frontend::YieldHandling, js::frontend::TripledotHandling, js::frontend::Parser<js::frontend::FullParseHandler>::PossibleError*, js::frontend::TokenKind, js::frontend::Parser<js::frontend::FullParseHandler>::InvokedPrediction) + 1614 (Parser.cpp:9644) 12 js-dbg-64-dm-clang-darwin-8630367f5e3f 0x0000000100063f19 js::frontend::Parser<js::frontend::FullParseHandler>::memberExpr(js::frontend::YieldHandling, js::frontend::TripledotHandling, js::frontend::Parser<js::frontend::FullParseHandler>::PossibleError*, js::frontend::TokenKind, bool, js::frontend::Parser<js::frontend::FullParseHandler>::InvokedPrediction) + 809 (Parser.cpp:8742) 13 js-dbg-64-dm-clang-darwin-8630367f5e3f 0x0000000100063811 js::frontend::Parser<js::frontend::FullParseHandler>::unaryExpr(js::frontend::YieldHandling, js::frontend::TripledotHandling, js::frontend::Parser<js::frontend::FullParseHandler>::PossibleError*, js::frontend::Parser<js::frontend::FullParseHandler>::InvokedPrediction) + 737 (Parser.cpp:8270) 14 js-dbg-64-dm-clang-darwin-8630367f5e3f 0x00000001000630c9 js::frontend::Parser<js::frontend::FullParseHandler>::orExpr1(js::frontend::InHandling, js::frontend::YieldHandling, js::frontend::TripledotHandling, js::frontend::Parser<js::frontend::FullParseHandler>::PossibleError*, js::frontend::Parser<js::frontend::FullParseHandler>::InvokedPrediction) + 73 (Parser.cpp:7747) 15 js-dbg-64-dm-clang-darwin-8630367f5e3f 0x0000000100062eaf js::frontend::Parser<js::frontend::FullParseHandler>::condExpr1(js::frontend::InHandling, js::frontend::YieldHandling, js::frontend::TripledotHandling, js::frontend::Parser<js::frontend::FullParseHandler>::PossibleError*, js::frontend::Parser<js::frontend::FullParseHandler>::InvokedPrediction) + 31 (Parser.cpp:7807) 16 js-dbg-64-dm-clang-darwin-8630367f5e3f 0x0000000100061cb1 js::frontend::Parser<js::frontend::FullParseHandler>::assignExpr(js::frontend::InHandling, js::frontend::YieldHandling, js::frontend::TripledotHandling, js::frontend::Parser<js::frontend::FullParseHandler>::PossibleError*, js::frontend::Parser<js::frontend::FullParseHandler>::InvokedPrediction) + 753 (Parser.cpp:7935) 17 js-dbg-64-dm-clang-darwin-8630367f5e3f 0x00000001000616e5 js::frontend::Parser<js::frontend::FullParseHandler>::expr(js::frontend::InHandling, js::frontend::YieldHandling, js::frontend::TripledotHandling, js::frontend::Parser<js::frontend::FullParseHandler>::PossibleError*, js::frontend::Parser<js::frontend::FullParseHandler>::InvokedPrediction) + 37 (Parser.cpp:7584) 18 js-dbg-64-dm-clang-darwin-8630367f5e3f 0x0000000100054f23 js::frontend::Parser<js::frontend::FullParseHandler>::expressionStatement(js::frontend::YieldHandling, js::frontend::Parser<js::frontend::FullParseHandler>::InvokedPrediction) + 99 (Parser.cpp:7640) 19 js-dbg-64-dm-clang-darwin-8630367f5e3f 0x000000010005439d js::frontend::Parser<js::frontend::FullParseHandler>::statement(js::frontend::YieldHandling, bool) + 1325 (Parser.cpp:7422) 20 js-dbg-64-dm-clang-darwin-8630367f5e3f 0x000000010005253b js::frontend::Parser<js::frontend::FullParseHandler>::statements(js::frontend::YieldHandling) + 571 (Parser.cpp:3557) 21 js-dbg-64-dm-clang-darwin-8630367f5e3f 0x0000000100059c35 js::frontend::Parser<js::frontend::FullParseHandler>::functionBody(js::frontend::InHandling, js::frontend::YieldHandling, js::frontend::FunctionSyntaxKind, js::frontend::Parser<js::frontend::FullParseHandler>::FunctionBodyType) + 229 (Parser.cpp:1366) 22 js-dbg-64-dm-clang-darwin-8630367f5e3f 0x000000010005ab6c js::frontend::Parser<js::frontend::FullParseHandler>::functionArgsAndBodyGeneric(js::frontend::InHandling, js::frontend::YieldHandling, js::frontend::ParseNode*, JS::Handle<JSFunction*>, js::frontend::FunctionSyntaxKind) + 588 (Parser.cpp:3207) 23 js-dbg-64-dm-clang-darwin-8630367f5e3f 0x00000001000494ee js::frontend::Parser<js::frontend::FullParseHandler>::functionArgsAndBody(js::frontend::InHandling, js::frontend::ParseNode*, JS::Handle<JSFunction*>, js::frontend::FunctionSyntaxKind, js::GeneratorKind, js::frontend::Directives, js::frontend::Directives*) + 814 (Parser.cpp:3012) 24 js-dbg-64-dm-clang-darwin-8630367f5e3f 0x000000010005c67f js::frontend::Parser<js::frontend::FullParseHandler>::functionDef(js::frontend::InHandling, js::frontend::YieldHandling, JS::Handle<JSAtom*>, js::frontend::FunctionSyntaxKind, js::GeneratorKind, js::frontend::Parser<js::frontend::FullParseHandler>::InvokedPrediction, js::frontend::ParseNode**) + 1023 (Parser.cpp:2841) 25 js-dbg-64-dm-clang-darwin-8630367f5e3f 0x000000010005ccf3 js::frontend::Parser<js::frontend::FullParseHandler>::functionExpr(js::frontend::Parser<js::frontend::FullParseHandler>::InvokedPrediction) + 451 (Parser.cpp:3366) 26 js-dbg-64-dm-clang-darwin-8630367f5e3f 0x0000000100060b40 js::frontend::Parser<js::frontend::FullParseHandler>::primaryExpr(js::frontend::YieldHandling, js::frontend::TripledotHandling, js::frontend::Parser<js::frontend::FullParseHandler>::PossibleError*, js::frontend::TokenKind, js::frontend::Parser<js::frontend::FullParseHandler>::InvokedPrediction) + 960 (Parser.cpp:9492) 27 js-dbg-64-dm-clang-darwin-8630367f5e3f 0x0000000100063f19 js::frontend::Parser<js::frontend::FullParseHandler>::memberExpr(js::frontend::YieldHandling, js::frontend::TripledotHandling, js::frontend::Parser<js::frontend::FullParseHandler>::PossibleError*, js::frontend::TokenKind, bool, js::frontend::Parser<js::frontend::FullParseHandler>::InvokedPrediction) + 809 (Parser.cpp:8742) 28 js-dbg-64-dm-clang-darwin-8630367f5e3f 0x0000000100063811 js::frontend::Parser<js::frontend::FullParseHandler>::unaryExpr(js::frontend::YieldHandling, js::frontend::TripledotHandling, js::frontend::Parser<js::frontend::FullParseHandler>::PossibleError*, js::frontend::Parser<js::frontend::FullParseHandler>::InvokedPrediction) + 737 (Parser.cpp:8270) 29 js-dbg-64-dm-clang-darwin-8630367f5e3f 0x00000001000630c9 js::frontend::Parser<js::frontend::FullParseHandler>::orExpr1(js::frontend::InHandling, js::frontend::YieldHandling, js::frontend::TripledotHandling, js::frontend::Parser<js::frontend::FullParseHandler>::PossibleError*, js::frontend::Parser<js::frontend::FullParseHandler>::InvokedPrediction) + 73 (Parser.cpp:7747) 30 js-dbg-64-dm-clang-darwin-8630367f5e3f 0x0000000100062eaf js::frontend::Parser<js::frontend::FullParseHandler>::condExpr1(js::frontend::InHandling, js::frontend::YieldHandling, js::frontend::TripledotHandling, js::frontend::Parser<js::frontend::FullParseHandler>::PossibleError*, js::frontend::Parser<js::frontend::FullParseHandler>::InvokedPrediction) + 31 (Parser.cpp:7807) 31 js-dbg-64-dm-clang-darwin-8630367f5e3f 0x0000000100061cb1 js::frontend::Parser<js::frontend::FullParseHandler>::assignExpr(js::frontend::InHandling, js::frontend::YieldHandling, js::frontend::TripledotHandling, js::frontend::Parser<js::frontend::FullParseHandler>::PossibleError*, js::frontend::Parser<js::frontend::FullParseHandler>::InvokedPrediction) + 753 (Parser.cpp:7935) 32 js-dbg-64-dm-clang-darwin-8630367f5e3f 0x00000001000616e5 js::frontend::Parser<js::frontend::FullParseHandler>::expr(js::frontend::InHandling, js::frontend::YieldHandling, js::frontend::TripledotHandling, js::frontend::Parser<js::frontend::FullParseHandler>::PossibleError*, js::frontend::Parser<js::frontend::FullParseHandler>::InvokedPrediction) + 37 (Parser.cpp:7584) 33 js-dbg-64-dm-clang-darwin-8630367f5e3f 0x0000000100060dce js::frontend::Parser<js::frontend::FullParseHandler>::primaryExpr(js::frontend::YieldHandling, js::frontend::TripledotHandling, js::frontend::Parser<js::frontend::FullParseHandler>::PossibleError*, js::frontend::TokenKind, js::frontend::Parser<js::frontend::FullParseHandler>::InvokedPrediction) + 1614 (Parser.cpp:9644) 34 js-dbg-64-dm-clang-darwin-8630367f5e3f 0x0000000100063f19 js::frontend::Parser<js::frontend::FullParseHandler>::memberExpr(js::frontend::YieldHandling, js::frontend::TripledotHandling, js::frontend::Parser<js::frontend::FullParseHandler>::PossibleError*, js::frontend::TokenKind, bool, js::frontend::Parser<js::frontend::FullParseHandler>::InvokedPrediction) + 809 (Parser.cpp:8742) 35 js-dbg-64-dm-clang-darwin-8630367f5e3f 0x0000000100063811 js::frontend::Parser<js::frontend::FullParseHandler>::unaryExpr(js::frontend::YieldHandling, js::frontend::TripledotHandling, js::frontend::Parser<js::frontend::FullParseHandler>::PossibleError*, js::frontend::Parser<js::frontend::FullParseHandler>::InvokedPrediction) + 737 (Parser.cpp:8270) 36 js-dbg-64-dm-clang-darwin-8630367f5e3f 0x00000001000630c9 js::frontend::Parser<js::frontend::FullParseHandler>::orExpr1(js::frontend::InHandling, js::frontend::YieldHandling, js::frontend::TripledotHandling, js::frontend::Parser<js::frontend::FullParseHandler>::PossibleError*, js::frontend::Parser<js::frontend::FullParseHandler>::InvokedPrediction) + 73 (Parser.cpp:7747) 37 js-dbg-64-dm-clang-darwin-8630367f5e3f 0x0000000100062eaf js::frontend::Parser<js::frontend::FullParseHandler>::condExpr1(js::frontend::InHandling, js::frontend::YieldHandling, js::frontend::TripledotHandling, js::frontend::Parser<js::frontend::FullParseHandler>::PossibleError*, js::frontend::Parser<js::frontend::FullParseHandler>::InvokedPrediction) + 31 (Parser.cpp:7807) 38 js-dbg-64-dm-clang-darwin-8630367f5e3f 0x0000000100061cb1 js::frontend::Parser<js::frontend::FullParseHandler>::assignExpr(js::frontend::InHandling, js::frontend::YieldHandling, js::frontend::TripledotHandling, js::frontend::Parser<js::frontend::FullParseHandler>::PossibleError*, js::frontend::Parser<js::frontend::FullParseHandler>::InvokedPrediction) + 753 (Parser.cpp:7935) 39 js-dbg-64-dm-clang-darwin-8630367f5e3f 0x0000000100061f88 js::frontend::Parser<js::frontend::FullParseHandler>::assignExpr(js::frontend::InHandling, js::frontend::YieldHandling, js::frontend::TripledotHandling, js::frontend::Parser<js::frontend::FullParseHandler>::PossibleError*, js::frontend::Parser<js::frontend::FullParseHandler>::InvokedPrediction) + 1480 (Parser.cpp:8041) 40 js-dbg-64-dm-clang-darwin-8630367f5e3f 0x00000001000616e5 js::frontend::Parser<js::frontend::FullParseHandler>::expr(js::frontend::InHandling, js::frontend::YieldHandling, js::frontend::TripledotHandling, js::frontend::Parser<js::frontend::FullParseHandler>::PossibleError*, js::frontend::Parser<js::frontend::FullParseHandler>::InvokedPrediction) + 37 (Parser.cpp:7584) 41 js-dbg-64-dm-clang-darwin-8630367f5e3f 0x0000000100054f23 js::frontend::Parser<js::frontend::FullParseHandler>::expressionStatement(js::frontend::YieldHandling, js::frontend::Parser<js::frontend::FullParseHandler>::InvokedPrediction) + 99 (Parser.cpp:7640) 42 js-dbg-64-dm-clang-darwin-8630367f5e3f 0x00000001000544c6 js::frontend::Parser<js::frontend::FullParseHandler>::statement(js::frontend::YieldHandling, bool) + 1622 (Parser.cpp:7468) 43 js-dbg-64-dm-clang-darwin-8630367f5e3f 0x000000010005253b js::frontend::Parser<js::frontend::FullParseHandler>::statements(js::frontend::YieldHandling) + 571 (Parser.cpp:3557) 44 js-dbg-64-dm-clang-darwin-8630367f5e3f 0x000000010004bc9d js::frontend::Parser<js::frontend::FullParseHandler>::globalBody() + 77 (Parser.cpp:1108) 45 js-dbg-64-dm-clang-darwin-8630367f5e3f 0x00000001009b787d BytecodeCompiler::compileScript(JS::Handle<JSObject*>, JS::Handle<JSScript*>) + 717 (BytecodeCompiler.cpp:531) 46 js-dbg-64-dm-clang-darwin-8630367f5e3f 0x00000001009b96d5 js::frontend::CompileScript(js::ExclusiveContext*, js::LifoAlloc*, JS::Handle<JSObject*>, JS::Handle<js::StaticScope*>, JS::Handle<JSScript*>, JS::ReadOnlyCompileOptions const&, JS::SourceBufferHolder&, JSString*, js::SourceCompressionTask*, js::ScriptSourceObject**) + 197 (BytecodeCompiler.cpp:742) 47 js-dbg-64-dm-clang-darwin-8630367f5e3f 0x0000000100594474 Compile(JSContext*, JS::ReadOnlyCompileOptions const&, SyntacticScopeOption, JS::SourceBufferHolder&, JS::MutableHandle<JSScript*>) + 404 (RootingAPI.h:482) 48 js-dbg-64-dm-clang-darwin-8630367f5e3f 0x00000001005947fb Compile(JSContext*, JS::ReadOnlyCompileOptions const&, SyntacticScopeOption, char const*, unsigned long, JS::MutableHandle<JSScript*>) + 267 (jsapi.cpp:3988) 49 js-dbg-64-dm-clang-darwin-8630367f5e3f 0x0000000100594950 JS::Compile(JSContext*, JS::ReadOnlyCompileOptions const&, __sFILE*, JS::MutableHandle<JSScript*>) + 112 (jsapi.cpp:4014) 50 js-dbg-64-dm-clang-darwin-8630367f5e3f 0x0000000100020fda Process(JSContext*, char const*, bool, FileKind) + 3434 (js.cpp:522) 51 js-dbg-64-dm-clang-darwin-8630367f5e3f 0x000000010000673b main + 11739 (js.cpp:6740) 52 js-dbg-64-dm-clang-darwin-8630367f5e3f 0x00000001000019a4 start + 52
Reporter | ||
Comment 1•8 years ago
|
||
autoBisect shows this is probably related to the following changeset: The first bad revision is: changeset: https://hg.mozilla.org/mozilla-central/rev/0a5cf306560d user: Tom Schuster date: Wed Apr 13 13:43:43 2016 +0200 summary: Bug 1255925 - Give a name to getters/setters and integer-named methods. r=efaust Tom, is bug 1255925 a likely regressor?
Updated•8 years ago
|
Assignee: nobody → evilpies
Flags: needinfo?(evilpies)
Comment 2•8 years ago
|
||
Thanks, I will have to backout bug 1255925, because JSFunction::name is a PropertyName and used everywhere.
Comment 3•8 years ago
|
||
Fixed by backout.
Status: NEW → RESOLVED
Closed: 8 years ago
Resolution: --- → WONTFIX
Updated•8 years ago
|
Assignee: evilpies → nobody
Reporter | ||
Comment 4•8 years ago
|
||
I'd probably use WORKSFORME since regressor is no longer present.
Resolution: WONTFIX → WORKSFORME
You need to log in
before you can comment on or make changes to this bug.
Description
•