mirror of
https://github.com/nodejs/node.git
synced 2024-12-01 16:10:02 +01:00
b73e66e949
Keep track of C++ `TryCatch` state to avoid aborting when an exception is thrown inside one, and re-throw in JS to make sure the exception is being picked up a second time by a second uncaught exception handler, if necessary. Add a bit of a hack to `AppendExceptionLine` to avoid overriding the line responsible for re-throwing the exception. PR-URL: https://github.com/nodejs/node/pull/17394 Fixes: https://github.com/nodejs/node/issues/13258 Reviewed-By: James M Snell <jasnell@gmail.com>
75 lines
2.2 KiB
Plaintext
75 lines
2.2 KiB
Plaintext
[stdin]
|
|
[stdin]:1
|
|
with(this){__filename}
|
|
^^^^
|
|
SyntaxError: Strict mode code may not include a with statement
|
|
at new Script (vm.js:*)
|
|
at createScript (vm.js:*)
|
|
at Object.runInThisContext (vm.js:*)
|
|
at Object.<anonymous> ([stdin]-wrapper:*:*)
|
|
at Module._compile (module.js:*:*)
|
|
at evalScript (bootstrap_node.js:*:*)
|
|
at Socket.<anonymous> (bootstrap_node.js:*:*)
|
|
at Socket.emit (events.js:*:*)
|
|
at endReadableNT (_stream_readable.js:*:*)
|
|
at process._tickCallback (internal/process/next_tick.js:*:*)
|
|
42
|
|
42
|
|
[stdin]:1
|
|
throw new Error("hello")
|
|
^
|
|
|
|
Error: hello
|
|
at [stdin]:1:7
|
|
at Script.runInThisContext (vm.js:*)
|
|
at Object.runInThisContext (vm.js:*)
|
|
at Object.<anonymous> ([stdin]-wrapper:*:*)
|
|
at Module._compile (module.js:*:*)
|
|
at evalScript (bootstrap_node.js:*:*)
|
|
at Socket.<anonymous> (bootstrap_node.js:*:*)
|
|
at Socket.emit (events.js:*:*)
|
|
at endReadableNT (_stream_readable.js:*:*)
|
|
at process._tickCallback (internal/process/next_tick.js:*:*)
|
|
[stdin]:1
|
|
throw new Error("hello")
|
|
^
|
|
|
|
Error: hello
|
|
at [stdin]:1:*
|
|
at Script.runInThisContext (vm.js:*)
|
|
at Object.runInThisContext (vm.js:*)
|
|
at Object.<anonymous> ([stdin]-wrapper:*:*)
|
|
at Module._compile (module.js:*:*)
|
|
at evalScript (bootstrap_node.js:*:*)
|
|
at Socket.<anonymous> (bootstrap_node.js:*:*)
|
|
at Socket.emit (events.js:*:*)
|
|
at endReadableNT (_stream_readable.js:*:*)
|
|
at process._tickCallback (internal/process/next_tick.js:*:*)
|
|
100
|
|
[stdin]:1
|
|
var x = 100; y = x;
|
|
^
|
|
|
|
ReferenceError: y is not defined
|
|
at [stdin]:1:16
|
|
at Script.runInThisContext (vm.js:*)
|
|
at Object.runInThisContext (vm.js:*)
|
|
at Object.<anonymous> ([stdin]-wrapper:*:*)
|
|
at Module._compile (module.js:*:*)
|
|
at evalScript (bootstrap_node.js:*:*)
|
|
at Socket.<anonymous> (bootstrap_node.js:*:*)
|
|
at Socket.emit (events.js:*:*)
|
|
at endReadableNT (_stream_readable.js:*:*)
|
|
at process._tickCallback (internal/process/next_tick.js:*:*)
|
|
|
|
[stdin]:1
|
|
var ______________________________________________; throw 10
|
|
^
|
|
10
|
|
|
|
[stdin]:1
|
|
var ______________________________________________; throw 10
|
|
^
|
|
10
|
|
done
|