- Add config guards for debug throw/pause uncaught
- Add one missing DUK_USE_DEBUGGER_SUPPORT guard in master
- Add config guards for new config options
- Use duk_debug_halt_execution() for DEBUGGER stmt, which fixes the off-by-one
line number for debugger statement when the executor gets paused
- Add internal duk_safe_to_hstring() and combined safe_to_hstring +
duk_debug_write_hstring() helpers to debugger code
- Debug command capitalization in debug messages
- Some debugger assert additions; in particular, assert that when doing a
halt or entering the message loop the debugger is attached (if this is
not a requirement, it will need special handling)
Duk_debug.js fixes for Throw notify
- Ignore unknown Notify messages, this is probably a better default than
being strict and dropping the connection.
- Add Throw notify command number (earlier GC notify was unused).
- Add minimal web UI integration to report "THROW: xxx" or "UNCAUGHT: xxx"
from Throw notifys
Add 'make rundebug' convenience duk_debug target with logging.
- Fix compile warnings and incorrect condition for halting.
- Fix debugger act->func refs for lightfuncs, use act->tv_func instead. This
was previously never a problem because debug messages were only processed
when the topmost activation was an Ecmascript function. Now with
pause-on-uncaught-throw the topmost function may be native and debugger
code must tolerate that.
- Formatting trivia.
Using a mergeready tag tells others (repo owner in particular) that the
changes are finished and are ready to be merged to master. Without this
indication it may be unclear whether changes should be merged or if more
work or fixes are coming.
Enable fast return which allows unwinding of label sites which is needed to
support returning from inside iterator statements. Fast return is disabled
from inside a try statement. The fast return conditions can be relaxed
further later.