quickjs-done-nextgen/tests
Saúl Ibarra Corretgé 61c8fe6fb0 Run FinalizationRegistry callback in the job queue
The spec says HostMakeJobCallback has to be used on the callback: https://tc39.es/ecma262/multipage/managing-memory.html#sec-finalization-registry-cleanup-callback

That makes the following (arguably contrived) example run forever until
memory is exhausted.

```js
let count = 0;
function main() {
    console.log(`main! ${++count}`);
    const registry = new FinalizationRegistry(() => {
        globalThis.foo = main();
    });
    registry.register([]);
    registry.register([]);
    return registry;
}
main();

console.log(count);
```

That is unlike V8, which runs 0 times. This can be explained by the
difference in GC implementations and since FinRec makes GC observable,
here we are!

Fixes: https://github.com/quickjs-ng/quickjs/issues/432
2024-09-09 11:32:36 +02:00
..
function_source.js Retain function source code in serialized bytecode (#218) 2023-12-16 01:01:26 +01:00
microbench.js Improve number to string conversions (#400) 2024-05-26 08:06:36 +02:00
test262.patch 2020-01-05 release 2020-09-06 18:53:08 +02:00
test_bigint.js Remove trailing whitespace (#46) 2023-11-12 10:01:40 +01:00
test_bjson.js Add Float16Array (#491) 2024-09-03 20:32:17 +02:00
test_builtin.js Run FinalizationRegistry callback in the job queue 2024-09-09 11:32:36 +02:00
test_closure.js Remove trailing whitespace (#46) 2023-11-12 10:01:40 +01:00
test_conv.c Fix the Windows x86 MSVC build 2024-06-17 09:59:46 +02:00
test_language.js Fix declaring property named get/set/async 2024-07-25 23:21:16 +02:00
test_loop.js Remove trailing whitespace (#46) 2023-11-12 10:01:40 +01:00
test_queue_microtask.js Add queueMicrotask 2023-11-21 23:43:17 +01:00
test_std.js Implement setInterval() (#338) 2024-03-30 09:36:38 +01:00
test_worker.js Refactor build system to use CMake only 2023-11-17 13:10:18 +01:00
test_worker_module.js Remove trailing whitespace (#46) 2023-11-12 10:01:40 +01:00