ChakraCore
ChakraCore copied to clipboard
ASSERTION Failure "scopeSlotCount != 0" in ChakraCore/lib/Runtime/Language/InterpreterStackFrame.cpp, line 7592
commit : 41ad58a
Engine version : ch version 1.13.0.0-beta
Build platform : Ubuntu 18.04
Clang version : 6.0.0
Build steps : ./build.sh --sanitize=address --static -j -d
POC
cat da5c7dd74b3349db93bbbd5f9340f241.js
-----------------------------------------------------
try {
(function TestFunc() {
var a;
(function outer() {
(function inner() {
outer();
a;
})();
with ({}) {
outer();
outer();
TestFunc();
TestFunc();
TestFunc();
}
})();
})();
} catch (ex) {
if (ex.message == "Out of stack space") {
print("PASSED");
}
}
Assert Log
./ch da5c7dd74b3349db93bbbd5f9340f241.js
ASSERTION 3930: (/data/WYC/engines/ChakraCore-master/lib/Runtime/Language/InterpreterStackFrame.cpp, line 7592) scopeSlotCount != 0
Failure: (scopeSlotCount != 0)
Illegal instruction
Hi, Richard, could you please help check this issue?
@rhuanjl
I can reproduce this in debug mode (sanitizer off), in release mode it crashes without printing "PASSED".