Could also allow CR LF for some file types on Windows, but it's best if
.c and .h are LF only because they may be used in the dist process, and
that dist package can then be used on Linux. Also Python utilities expect
to see LF only and e.g. code policy checks will fail with CR LF present.
Add explicit check options to code policy checker and expand coverage
to Ecmascript testcases (allowing FIXMEs now since the testcases are
not FIXME clean) and example code.
Fix breakpoint handling when returning from calls caused by side effects,
such as a getter triggered by DUK_OP_GETPROP. Previously effective
breakpoint state would be overwritten by the side effect call and not
restored when returning, which caused breakpoints to be missed.
Add DUK_USE_MARKANDSWEEP_FINALIZE_TORTURE to cause one fake finalizer
per mark-and-sweep so that potential finalizer side effects are realized
on every mark-and-sweep. Combine with DUK_USE_GC_TORTURE for maximum
effect.
Fix a macro typo in duk_tval.h which caused a warning for bytecode dump/load
with non-packed duk_tval and fastints disabled. This warning indicated an
actual error: the macro argument name typo caused a duk_tval macro to refer
to a local variable which was uninitialized and shouldn't have been accessed
by the macro at all.
This is not strictly necessary but a convention used elsewhere too.
It's slightly less risky because duk_tval macros use argument names
like 'tv' and if a variable has the same name there can be subtle
bugs if there are typos in the macros.
Scrub TRYCATCH catch registers on TRYCATCH setup to avoid a previous
temporary value with a finalizer triggering harmful side effects. The
concrete problem is that such a finalizer call would overwrite the
heap->lj.type value which then causes finally handling to fail, see
GH-287.