Here's a list of test cases that fail when libjs-test262 test cases are run with ASAN.
These failing tests likely represent some gaps in the LibJS test suite in the main serenity repository.
The following steps will reproduce how I ran the tests compared to a pre-asan run with the default run options from the README:
./setup.sh
cmake -B Build -DENABLE_ADDRESS_SANITIZER=ON -DENABLE_UNDEFINED_SANITIZER=ON
ninja -C Build
export ASAN_OPTIONS=strict_string_checks=1:check_initialization_order=1:strict_init_order=1:allocator_may_return_null=1
export UBSAN_OPTIONS=print_stacktrace=1:print_summary=1:halt_on_error=1
python3 main.py --libjs-test262-runner ./Build/libjs-test262-runner --test262-root ./test262/ --json --per-file -c 16 -s --memory-limit -1 --timeout 60 > asan.json
python3 ./per_file_result_diff.py -o pre-asan.json -n asan.json
Summary:
Diff Tests:
-3 β
-33 β +2 π +34 π₯οΈ
Tail Call Optimization tests:
These cause a stack overflow, because the stack overflow detection check seems to fail with ASAN enabled
Summary:
Diff Tests:
-20 β
-78 β +0 β οΈ +0 π +0 βοΈ +2 π +96 π₯οΈ +0 π +0 π
Tail Call Optimization tests:
These cause a stack overflow, because the stack overflow detection check seems to fail with ASAN enabled
Pay now to fund the work behind this issue.
Get updates on progress being made.
Maintainer is rewarded once the issue is completed.
You're funding impactful open source efforts
You want to contribute to this effort
You want to get funding like this too