metacall / core

MetaCall: The ultimate polyglot programming experience.
https://metacall.io
Apache License 2.0
1.57k stars 160 forks source link

Non-deterministic address sanitizer error in `metacall-cli-core-plugin-await-test` #351

Closed viferga closed 1 year ago

viferga commented 2 years ago

🐛 Bug Report

I hope this is nothing related to set implementation but it can happen. We must intensively test the set implementation to see if it has leaks in some edge case. Also, take into account this:

2022-10-05T17:09:49.4331116Z ----------------- FUNCTIONS -----------------
2022-10-05T17:09:49.4331389Z Allocations: 23
2022-10-05T17:09:49.4331634Z Deallocations: 22
2022-10-05T17:09:49.4331874Z Increments: 25
2022-10-05T17:09:49.4332092Z Decrements: 24

https://github.com/metacall/core/actions/runs/3191095207/jobs/5206997103

2022-10-05T17:09:49.4176650Z 136/162 Test #136: metacall-cli-core-plugin-await-test ..............***Failed    1.83 sec
2022-10-05T17:09:49.4177485Z ==39524==AddressSanitizer: libc interceptors initialized
2022-10-05T17:09:49.4178049Z || `[0x10007fff8000, 0x7fffffffffff]` || HighMem    ||
2022-10-05T17:09:49.4178468Z || `[0x02008fff7000, 0x10007fff7fff]` || HighShadow ||
2022-10-05T17:09:49.4178855Z || `[0x00008fff7000, 0x02008fff6fff]` || ShadowGap  ||
2022-10-05T17:09:49.4179263Z || `[0x00007fff8000, 0x00008fff6fff]` || LowShadow  ||
2022-10-05T17:09:49.4179654Z || `[0x000000000000, 0x00007fff7fff]` || LowMem     ||
2022-10-05T17:09:49.4180096Z MemToShadow(shadow): 0x00008fff7000 0x000091ff6dff 0x004091ff6e00 0x02008fff6fff
2022-10-05T17:09:49.4180475Z redzone=16
2022-10-05T17:09:49.4180776Z max_redzone=2048
2022-10-05T17:09:49.4181111Z quarantine_size_mb=256M
2022-10-05T17:09:49.4181481Z thread_local_quarantine_size_kb=1024K
2022-10-05T17:09:49.4181842Z malloc_context_size=30
2022-10-05T17:09:49.4182170Z SHADOW_SCALE: 3
2022-10-05T17:09:49.4182503Z SHADOW_GRANULARITY: 8
2022-10-05T17:09:49.4182828Z SHADOW_OFFSET: 0x7fff8000
2022-10-05T17:09:49.4183198Z ==39524==Installed the sigaction for signal 11
2022-10-05T17:09:49.4183914Z ==39524==Installed the sigaction for signal 7
2022-10-05T17:09:49.4184336Z ==39524==Installed the sigaction for signal 8
2022-10-05T17:09:49.4185030Z ==39524==T0: FakeStack created: 0x7fe318f2b000 -- 0x7fe319a34000 stack_size_log: 20; mmapped 11300K, noreserve=0 
2022-10-05T17:09:49.4185589Z ==39524==T0: stack [0x7ffffbd8e000,0x7ffffcd8e000) size 0x1000000; local=0x7ffffcd8a644
2022-10-05T17:09:49.4186196Z AddressSanitizer: reading suppressions file at /home/runner/work/core/core/source/tests/sanitizer/lsan.supp
2022-10-05T17:09:49.4186702Z ==39524==AddressSanitizer Init done
2022-10-05T17:09:49.4187076Z [==========] Running 1 test from 1 test suite.
2022-10-05T17:09:49.4187573Z [----------] Global test environment set-up.
2022-10-05T17:09:49.4188102Z [----------] 1 test from metacall_cli_core_plugin_await_test
2022-10-05T17:09:49.4189050Z [ RUN      ] metacall_cli_core_plugin_await_test.DefaultConstructor
2022-10-05T17:09:49.4190156Z [Wed Oct  5 17:09:47] #39524 [ 153 | metacall_initialize | /home/runner/work/core/core/source/metacall/source/metacall.c ] @Debug : MetaCall default logger to stdout initialized
2022-10-05T17:09:49.4190840Z [Wed Oct  5 17:09:47] #39524 [ 163 | metacall_initialize | /home/runner/work/core/core/source/metacall/source/metacall.c ] @Debug : Initializing MetaCall
2022-10-05T17:09:49.4191292Z ==39524==poisoning: 0x7fe319634060 1000
2022-10-05T17:09:49.4191911Z [Wed Oct  5 17:09:47] #39524 [ 77 | configuration_initialize | /home/runner/work/core/core/source/configuration/source/configuration.c ] @Debug : Global configuration loaded from /home/runner/work/core/core/build/configurations/global.json
2022-10-05T17:09:49.4205457Z [Wed Oct  5 17:09:47] #39524 [ 44 | plugin_descriptor_create | /home/runner/work/core/core/source/plugin/source/plugin_descriptor.c ] @Debug : Loading plugin: rapid_json_seriald
2022-10-05T17:09:49.4205968Z ==39524==poisoning: 0x7fe3197350a0 1000
2022-10-05T17:09:49.4206539Z [Wed Oct  5 17:09:47] #39524 [ 57 | plugin_descriptor_create | /home/runner/work/core/core/source/plugin/source/plugin_descriptor.c ] @Debug : Loading plugin symbol: dynlink_symbol_rapid_json_serial_impl_interface_singleton
2022-10-05T17:09:49.4207260Z [Wed Oct  5 17:09:47] #39524 [ 215 | metacall_initialize | /home/runner/work/core/core/source/metacall/source/metacall.c ] @Information : Set MetaCall log level to Debug
2022-10-05T17:09:49.4207983Z [Wed Oct  5 17:09:47] #39524 [ 77 | loader_manager_impl_script_paths_initialize | /home/runner/work/core/core/source/loader/source/loader_manager_impl.c ] @Debug : Loader script path: /home/runner/work/core/core/build/scripts/
2022-10-05T17:09:49.4208530Z ==39524==poisoning: 0x7fe31963a060 1000
2022-10-05T17:09:49.4209075Z [Wed Oct  5 17:09:47] #39524 [ 190 | loader_initialization_register_plugin | /home/runner/work/core/core/source/loader/source/loader.c ] @Debug : Loader __metacall_host__ registered at position (0) in thread #39524
2022-10-05T17:09:49.4209735Z [Wed Oct  5 17:09:47] #39524 [ 137 | loader_initialize | /home/runner/work/core/core/source/loader/source/loader.c ] @Debug : Loader host initialized
2022-10-05T17:09:49.4210351Z [Wed Oct  5 17:09:47] #39524 [ 44 | plugin_descriptor_create | /home/runner/work/core/core/source/plugin/source/plugin_descriptor.c ] @Debug : Loading plugin: ext_loaderd
2022-10-05T17:09:49.4210806Z ==39524==poisoning: 0x7fe3197390a0 1000
2022-10-05T17:09:49.4211363Z [Wed Oct  5 17:09:47] #39524 [ 57 | plugin_descriptor_create | /home/runner/work/core/core/source/plugin/source/plugin_descriptor.c ] @Debug : Loading plugin symbol: dynlink_symbol_ext_loader_impl_interface_singleton
2022-10-05T17:09:49.4212070Z [Wed Oct  5 17:09:47] #39524 [ 247 | loader_get_impl_plugin | /home/runner/work/core/core/source/loader/source/loader.c ] @Debug : Created loader (ext) implementation <0x607000000410>
2022-10-05T17:09:49.4212826Z [Wed Oct  5 17:09:47] #39524 [ 305 | loader_load_from_file | /home/runner/work/core/core/source/loader/source/loader.c ] @Debug : Loading 1 file(s) (ext) from path(s): plugin_extension ...
2022-10-05T17:09:49.4213835Z [Wed Oct  5 17:09:47] #39524 [ 813 | loader_impl_load_from_file | /home/runner/work/core/core/source/loader/source/loader_impl.c ] @Debug : Loading plugin_extension
2022-10-05T17:09:49.4214508Z [Wed Oct  5 17:09:47] #39524 [ 190 | loader_initialization_register_plugin | /home/runner/work/core/core/source/loader/source/loader.c ] @Debug : Loader ext registered at position (1) in thread #39524
2022-10-05T17:09:49.4215177Z [Wed Oct  5 17:09:47] #39524 [ 153 | loader_initialization_debug | /home/runner/work/core/core/source/loader/source/loader.c ] @Debug : Loader initialization order:
2022-10-05T17:09:49.4215812Z -----------------------------------
2022-10-05T17:09:49.4216100Z 0) __metacall_host__ #39524
2022-10-05T17:09:49.4216349Z 1) ext #39524
2022-10-05T17:09:49.4216592Z ==39524==poisoning: 0x7fe31973d0a0 1000
2022-10-05T17:09:49.4217529Z [Wed Oct  5 17:09:47] #39524 [ 840 | loader_impl_load_from_file | /home/runner/work/core/core/source/loader/source/loader_impl.c ] @Debug : Loader interface: 0x7fe317de42a0 - Loader handle: 0x6030000013c0
2022-10-05T17:09:49.4218189Z [Wed Oct  5 17:09:47] #39524 [ 846 | loader_impl_load_from_file | /home/runner/work/core/core/source/loader/source/loader_impl.c ] @Debug : Loader handle impl: 0x621000007900
2022-10-05T17:09:49.4218945Z [Wed Oct  5 17:09:47] #39524 [ 101 | plugin_load_from_path | /home/runner/work/core/core/source/extensions/plugin_extension/source/plugin_extension.cpp ] @Debug : Loading plugin: /home/runner/work/core/core/build/plugins/backtrace_plugin/metacall.json
2022-10-05T17:09:49.4219516Z ==39524==poisoning: 0x7fe3198351e0 1000
2022-10-05T17:09:49.4219785Z ==39524==poisoning: 0x7fe319836260 1000
2022-10-05T17:09:49.4220080Z ==39524==unpoisoning: 0x7fe3198372e0 1000
2022-10-05T17:09:49.4220369Z ==39524==poisoning: 0x7fe3198372e0 1000
2022-10-05T17:09:49.4220935Z [Wed Oct  5 17:09:47] #39524 [ 305 | loader_load_from_file | /home/runner/work/core/core/source/loader/source/loader.c ] @Debug : Loading 1 file(s) (ext) from path(s): /home/runner/work/core/core/build/plugins/backtrace_plugin/backtrace_plugin ...
2022-10-05T17:09:49.4221740Z [Wed Oct  5 17:09:47] #39524 [ 813 | loader_impl_load_from_file | /home/runner/work/core/core/source/loader/source/loader_impl.c ] @Debug : Loading /home/runner/work/core/core/build/plugins/backtrace_plugin/backtrace_plugin
2022-10-05T17:09:49.4222253Z ==39524==poisoning: 0x7fe3197410a0 1000
2022-10-05T17:09:49.4223023Z [Wed Oct  5 17:09:47] #39524 [ 840 | loader_impl_load_from_file | /home/runner/work/core/core/source/loader/source/loader_impl.c ] @Debug : Loader interface: 0x7fe317de42a0 - Loader handle: 0x603000001b70
2022-10-05T17:09:49.4223666Z [Wed Oct  5 17:09:47] #39524 [ 846 | loader_impl_load_from_file | /home/runner/work/core/core/source/loader/source/loader_impl.c ] @Debug : Loader handle impl: 0x62100000b500
2022-10-05T17:09:49.4224473Z [Wed Oct  5 17:09:47] #39524 [ 101 | plugin_load_from_path | /home/runner/work/core/core/source/extensions/plugin_extension/source/plugin_extension.cpp ] @Debug : Loading plugin: /home/runner/work/core/core/source/tests/metacall_cli_core_plugin_await_test/plugins/await_test/metacall.json
2022-10-05T17:09:49.4225085Z ==39524==poisoning: 0x7fe31983d1e0 1000
2022-10-05T17:09:49.4225371Z ==39524==poisoning: 0x7fe31983e260 1000
2022-10-05T17:09:49.4225648Z ==39524==unpoisoning: 0x7fe31983f2e0 1000
2022-10-05T17:09:49.4225940Z ==39524==poisoning: 0x7fe31983f2e0 1000
2022-10-05T17:09:49.4226424Z [Wed Oct  5 17:09:47] #39524 [ 44 | plugin_descriptor_create | /home/runner/work/core/core/source/plugin/source/plugin_descriptor.c ] @Debug : Loading plugin: node_loaderd
2022-10-05T17:09:49.4226873Z ==39524==poisoning: 0x7fe3197450a0 1000
2022-10-05T17:09:49.4227410Z [Wed Oct  5 17:09:47] #39524 [ 57 | plugin_descriptor_create | /home/runner/work/core/core/source/plugin/source/plugin_descriptor.c ] @Debug : Loading plugin symbol: dynlink_symbol_node_loader_impl_interface_singleton
2022-10-05T17:09:49.4228216Z [Wed Oct  5 17:09:47] #39524 [ 247 | loader_get_impl_plugin | /home/runner/work/core/core/source/loader/source/loader.c ] @Debug : Created loader (node) implementation <0x607000000e20>
2022-10-05T17:09:49.4229224Z [Wed Oct  5 17:09:47] #39524 [ 305 | loader_load_from_file | /home/runner/work/core/core/source/loader/source/loader.c ] @Debug : Loading 1 file(s) (node) from path(s): /home/runner/work/core/core/source/tests/metacall_cli_core_plugin_await_test/plugins/await_test/await_test.js ...
2022-10-05T17:09:49.4230119Z [Wed Oct  5 17:09:47] #39524 [ 813 | loader_impl_load_from_file | /home/runner/work/core/core/source/loader/source/loader_impl.c ] @Debug : Loading /home/runner/work/core/core/source/tests/metacall_cli_core_plugin_await_test/plugins/await_test/await_test.js
2022-10-05T17:09:49.4230969Z ==39524==T1: FakeStack created: 0x7fe311f8f000 -- 0x7fe312a98000 stack_size_log: 20; mmapped 11300K, noreserve=0 
2022-10-05T17:09:49.4231502Z ==39524==T1: stack [0x7fe312a99000,0x7fe313a97f40) size 0xffef40; local=0x7fe313a97e44
2022-10-05T17:09:49.4232123Z ==39524==T2: FakeStack created: 0x7fe310485000 -- 0x7fe310f8e000 stack_size_log: 20; mmapped 11300K, noreserve=0 
2022-10-05T17:09:49.4232572Z ==39524==T2: stack [0x7fe310f8f000,0x7fe311f8df40) size 0xffef40; local=0x7fe311f8de44
2022-10-05T17:09:49.4233181Z ==39524==T3: FakeStack created: 0x7fe30e97b000 -- 0x7fe30f484000 stack_size_log: 20; mmapped 11300K, noreserve=0 
2022-10-05T17:09:49.4233607Z ==39524==T3: stack [0x7fe30f485000,0x7fe310483f40) size 0xffef40; local=0x7fe310483e44
2022-10-05T17:09:49.4234214Z ==39524==T4: FakeStack created: 0x7fe30ce71000 -- 0x7fe30d97a000 stack_size_log: 20; mmapped 11300K, noreserve=0 
2022-10-05T17:09:49.4234663Z ==39524==T4: stack [0x7fe30d97b000,0x7fe30e979f40) size 0xffef40; local=0x7fe30e979e44
2022-10-05T17:09:49.4235251Z ==39524==T5: FakeStack created: 0x7fe30b367000 -- 0x7fe30be70000 stack_size_log: 20; mmapped 11300K, noreserve=0 
2022-10-05T17:09:49.4235703Z ==39524==T5: stack [0x7fe30be71000,0x7fe30ce6ff40) size 0xffef40; local=0x7fe30ce6fe44
2022-10-05T17:09:49.4236309Z ==39524==T6: FakeStack created: 0x7fe30985d000 -- 0x7fe30a366000 stack_size_log: 20; mmapped 11300K, noreserve=0 
2022-10-05T17:09:49.4236744Z ==39524==T6: stack [0x7fe30a367000,0x7fe30b365f40) size 0xffef40; local=0x7fe30b365e44
2022-10-05T17:09:49.4237332Z ==39524==T7: FakeStack created: 0x7fe308a91000 -- 0x7fe308b42800 stack_size_log: 16; mmapped 710K, noreserve=0 
2022-10-05T17:09:49.4237765Z ==39524==T7: stack [0x7fe318b03000,0x7fe318b05f40) size 0x2f40; local=0x7fe318b05e44
2022-10-05T17:09:49.4238338Z [Wed Oct  5 17:09:48] #39524 [ 190 | loader_initialization_register_plugin | /home/runner/work/core/core/source/loader/source/loader.c ] @Debug : Loader node registered at position (2) in thread #39524
2022-10-05T17:09:49.4239014Z [Wed Oct  5 17:09:48] #39524 [ 153 | loader_initialization_debug | /home/runner/work/core/core/source/loader/source/loader.c ] @Debug : Loader initialization order:
2022-10-05T17:09:49.4239519Z -----------------------------------
2022-10-05T17:09:49.4239799Z 0) __metacall_host__ #39524
2022-10-05T17:09:49.4240048Z 1) ext #39524
2022-10-05T17:09:49.4240258Z 2) node #39524
2022-10-05T17:09:49.4240986Z [Wed Oct  5 17:09:48] #39524 [ 840 | loader_impl_load_from_file | /home/runner/work/core/core/source/loader/source/loader_impl.c ] @Debug : Loader interface: 0x7fe3188b0700 - Loader handle: 0x6060005295e0
2022-10-05T17:09:49.4241643Z [Wed Oct  5 17:09:48] #39524 [ 846 | loader_impl_load_from_file | /home/runner/work/core/core/source/loader/source/loader_impl.c ] @Debug : Loader handle impl: 0x6210001d2500
2022-10-05T17:09:49.4242404Z [Wed Oct  5 17:09:48] #39524 [ 101 | plugin_load_from_path | /home/runner/work/core/core/source/extensions/plugin_extension/source/plugin_extension.cpp ] @Debug : Loading plugin: /home/runner/work/core/core/build/plugins/cli/cli_core_plugin/metacall.json
2022-10-05T17:09:49.4242957Z ==39524==poisoning: 0x7fe3198451e0 1000
2022-10-05T17:09:49.4243245Z ==39524==poisoning: 0x7fe319846260 1000
2022-10-05T17:09:49.4243536Z ==39524==unpoisoning: 0x7fe3198472e0 1000
2022-10-05T17:09:49.4243899Z ==39524==poisoning: 0x7fe3198472e0 1000
2022-10-05T17:09:49.4244464Z [Wed Oct  5 17:09:48] #39524 [ 305 | loader_load_from_file | /home/runner/work/core/core/source/loader/source/loader.c ] @Debug : Loading 1 file(s) (ext) from path(s): /home/runner/work/core/core/build/plugins/cli/cli_core_plugin/cli_core_plugin ...
2022-10-05T17:09:49.4245257Z [Wed Oct  5 17:09:48] #39524 [ 813 | loader_impl_load_from_file | /home/runner/work/core/core/source/loader/source/loader_impl.c ] @Debug : Loading /home/runner/work/core/core/build/plugins/cli/cli_core_plugin/cli_core_plugin
2022-10-05T17:09:49.4245768Z ==39524==poisoning: 0x7fe3197490a0 1000
2022-10-05T17:09:49.4246573Z [Wed Oct  5 17:09:48] #39524 [ 840 | loader_impl_load_from_file | /home/runner/work/core/core/source/loader/source/loader_impl.c ] @Debug : Loader interface: 0x7fe317de42a0 - Loader handle: 0x603000005b30
2022-10-05T17:09:49.4247296Z [Wed Oct  5 17:09:48] #39524 [ 846 | loader_impl_load_from_file | /home/runner/work/core/core/source/loader/source/loader_impl.c ] @Debug : Loader handle impl: 0x6210001cd500
2022-10-05T17:09:49.4247909Z [Wed Oct  5 17:09:48] #39524 [ 325 | loader_load_from_memory | /home/runner/work/core/core/source/loader/source/loader.c ] @Debug : Loading buffer from memory (node):
2022-10-05T17:09:49.4248402Z console.log('hello world')
2022-10-05T17:09:49.4248884Z [Wed Oct  5 17:09:48] #39524 [ 937 | loader_impl_load_from_memory | /home/runner/work/core/core/source/loader/source/loader_impl.c ] @Debug : Loading from memory console.lo...
2022-10-05T17:09:49.4249290Z hello world
2022-10-05T17:09:49.4250024Z [Wed Oct  5 17:09:48] #39524 [ 970 | loader_impl_load_from_memory | /home/runner/work/core/core/source/loader/source/loader_impl.c ] @Debug : Loader interface: 0x7fe3188b0700 - Loader handle: 0x60600066e660
2022-10-05T17:09:49.4250704Z [Wed Oct  5 17:09:48] #39526 [ 305 | loader_load_from_file | /home/runner/work/core/core/source/loader/source/loader.c ] @Debug : Loading 1 file(s) (node) from path(s): scripts/nod.js ...
2022-10-05T17:09:49.4251337Z [Wed Oct  5 17:09:48] #39526 [ 813 | loader_impl_load_from_file | /home/runner/work/core/core/source/loader/source/loader_impl.c ] @Debug : Loading scripts/nod.js
2022-10-05T17:09:49.4252220Z [Wed Oct  5 17:09:49] #39526 [ 840 | loader_impl_load_from_file | /home/runner/work/core/core/source/loader/source/loader_impl.c ] @Debug : Loader interface: 0x7fe3188b0700 - Loader handle: 0x60600066cbc0
2022-10-05T17:09:49.4252870Z [Wed Oct  5 17:09:49] #39526 [ 846 | loader_impl_load_from_file | /home/runner/work/core/core/source/loader/source/loader_impl.c ] @Debug : Loader handle impl: 0x6210001db100
2022-10-05T17:09:49.4253273Z [Function]
2022-10-05T17:09:49.4253740Z [Wed Oct  5 17:09:49] #39524 [ 666 | value_type_destroy | /home/runner/work/core/core/source/reflect/source/reflect_value_type.c ] @Debug : Destroy function await <0x606000670a60> value <0x606000671028>
2022-10-05T17:09:49.4265556Z {"ext":[{"name":"plugin_extension","scope":{"name":"global_namespace","funcs":[{"name":"plugin_load_from_path","signature":{"ret":{"type":{"name":"Int","id":3}},"args":[{"name":"","type":{"name":"String","id":7}},{"name":"","type":{"name":"Pointer","id":11}}]},"async":false},{"name":"await__test","signature":{"ret":{"type":{"name":"","id":20}},"args":[{"name":"await_cb","type":{"name":"","id":20}}]},"async":false}],"classes":[],"objects":[]}},{"name":"plugins/backtrace_plugin/backtrace_plugin","scope":{"name":"global_namespace","funcs":[],"classes":[],"objects":[]}},{"name":"plugins/cli/cli_core_plugin/cli_core_plugin","scope":{"name":"global_namespace","funcs":[{"name":"inspect","signature":{"ret":{"type":{"name":"String","id":7}},"args":[]},"async":false},{"name":"call","signature":{"ret":{"type":{"name":"Pointer","id":11}},"args":[{"name":"","type":{"name":"String","id":7}}]},"async":false},{"name":"clear","signature":{"ret":{"type":{"name":"Int","id":3}},"args":[{"name":"","type":{"name":"String","id":7}},{"name":"","type":{"name":"String","id":7}}]},"async":false},{"name":"await","signature":{"ret":{"type":{"name":"Pointer","id":11}},"args":[{"name":"","type":{"name":"String","id":7}}]},"async":false},{"name":"eval","signature":{"ret":{"type":{"name":"Int","id":3}},"args":[{"name":"","type":{"name":"String","id":7}},{"name":"","type":{"name":"String","id":7}}]},"async":false},{"name":"load","signature":{"ret":{"type":{"name":"Int","id":3}},"args":[{"name":"","type":{"name":"String","id":7}},{"name":"","type":{"name":"Array","id":9}}]},"async":false}],"classes":[],"objects":[]}}],"node":[{"name":"scripts/nod.js","scope":{"name":"global_namespace","funcs":[{"name":"lambda","signature":{"ret":{"type":{"name":"","id":20}},"args":[]},"async":false},{"name":"object_pattern_evil_right","signature":{"ret":{"type":{"name":"","id":20}},"args":[{"name":"_arg0","type":{"name":"","id":20}},{"name":"_arg1","type":{"name":"","id":20}},{"name":"_arg2","type":{"name":"","id":20}},{"name":"_arg3","type":{"name":"","id":20}},{"name":"_arg4","type":{"name":"","id":20}},{"name":"_arg5","type":{"name":"","id":20}}]},"async":false},{"name":"all_mixed","signature":{"ret":{"type":{"name":"","id":20}},"args":[{"name":"__arg0","type":{"name":"","id":20}},{"name":"_arg0","type":{"name":"","id":20}},{"name":"b","type":{"name":"","id":20}}]},"async":false},{"name":"throw_await","signature":{"ret":{"type":{"name":"","id":20}},"args":[]},"async":true},{"name":"default_values","signature":{"ret":{"type":{"name":"","id":20}},"args":[{"name":"a","type":{"name":"","id":20}}]},"async":false},{"name":"hello_boy_await","signature":{"ret":{"type":{"name":"","id":20}},"args":[{"name":"a","type":{"name":"","id":20}},{"name":"b","type":{"name":"","id":20}}]},"async":true},{"name":"call_test","signature":{"ret":{"type":{"name":"","id":20}},"args":[{"name":"a","type":{"name":"","id":20}},{"name":"b","type":{"name":"","id":20}}]},"async":false},{"name":"object_pattern_evil_left","signature":{"ret":{"type":{"name":"","id":20}},"args":[{"name":"__arg0","type":{"name":"","id":20}},{"name":"__arg1","type":{"name":"","id":20}},{"name":"__arg2","type":{"name":"","id":20}},{"name":"_arg0","type":{"name":"","id":20}},{"name":"_arg1","type":{"name":"","id":20}},{"name":"_arg2","type":{"name":"","id":20}}]},"async":false},{"name":"object_pattern_evil_repeat","signature":{"ret":{"type":{"name":"","id":20}},"args":[{"name":"____arg0","type":{"name":"","id":20}},{"name":"_arg0","type":{"name":"","id":20}},{"name":"__arg0","type":{"name":"","id":20}},{"name":"___arg0","type":{"name":"","id":20}}]},"async":false},{"name":"get_random_data","signature":{"ret":{"type":{"name":"","id":20}},"args":[{"name":"token","type":{"name":"","id":20}},{"name":"serial","type":{"name":"","id":20}},{"name":"range","type":{"name":"","id":20}}]},"async":true},{"name":"inline_lambda","signature":{"ret":{"type":{"name":"","id":20}},"args":[{"name":"a","type":{"name":"","id":20}},{"name":"b","type":{"name":"","id":20}}]},"async":false},{"name":"hello_boy_nested_await","signature":{"ret":{"type":{"name":"","id":20}},"args":[{"name":"a","type":{"name":"","id":20}},{"name":"b","type":{"name":"","id":20}}]},"async":true},{"name":"hello_boy","signature":{"ret":{"type":{"name":"","id":20}},"args":[{"name":"a","type":{"name":"","id":20}},{"name":"b","type":{"name":"","id":20}}]},"async":false},{"name":"object_pattern","signature":{"ret":{"type":{"name":"","id":20}},"args":[{"name":"_arg0","type":{"name":"","id":20}},{"name":"_arg1","type":{"name":"","id":20}},{"name":"_arg2","type":{"name":"","id":20}}]},"async":false},{"name":"return_await","signature":{"ret":{"type":{"name":"","id":20}},"args":[]},"async":true}],"classes":[],"objects":[]}},{"name":"0x607000000e20-0x607000004178-27-364171840","scope":{"name":"global_namespace","funcs":[],"classes":[],"objects":[]}},{"name":"source/tests/metacall_cli_core_plugin_await_test/plugins/await_test/await_test.js","scope":{"name":"global_namespace","funcs":[{"name":"await__test","signature":{"ret":{"type":{"name":"","id":20}},"args":[{"name":"await_cb","type":{"name":"","id":20}}]},"async":false}],"classes":[],"objects":[]}}],"__metacall_host__":[]}
2022-10-05T17:09:49.4272697Z [Wed Oct  5 17:09:49] #39524 [ 723 | loader_destroy | /home/runner/work/core/core/source/loader/source/loader.c ] @Debug : Begin to destroy all the loaders
2022-10-05T17:09:49.4273312Z [Wed Oct  5 17:09:49] #39524 [ 153 | loader_initialization_debug | /home/runner/work/core/core/source/loader/source/loader.c ] @Debug : Loader initialization order:
2022-10-05T17:09:49.4278147Z -----------------------------------
2022-10-05T17:09:49.4278436Z 0) __metacall_host__ #39524
2022-10-05T17:09:49.4278669Z 1) ext #39524
2022-10-05T17:09:49.4278894Z 2) node #39524
2022-10-05T17:09:49.4279343Z [Wed Oct  5 17:09:49] #39524 [ 683 | loader_unload_children | /home/runner/work/core/core/source/loader/source/loader.c ] @Debug : Loader unloading (node) from thread #39524
2022-10-05T17:09:49.4279966Z [Wed Oct  5 17:09:49] #39524 [ 1476 | loader_impl_destroy | /home/runner/work/core/core/source/loader/source/loader_impl.c ] @Debug : Destroy loader implementation node
2022-10-05T17:09:49.4280780Z [active_handles] - [base_active_handles] - [extra_active_handles] + [active_reqs] + [closing]
2022-10-05T17:09:49.4281304Z        15        -           15          -            0           +       0       +     0
2022-10-05T17:09:49.4281796Z [Wed Oct  5 17:09:49] #39526 [ 574 | loader_impl_destroy_handle | /home/runner/work/core/core/source/loader/source/loader_impl.c ] @Debug : Destroying handle scripts/nod.js
2022-10-05T17:09:49.4282443Z [Wed Oct  5 17:09:49] #39526 [ 666 | value_type_destroy | /home/runner/work/core/core/source/reflect/source/reflect_value_type.c ] @Debug : Destroy function lambda <0x606000669d40> value <0x606000669dc8>
2022-10-05T17:09:49.4283105Z [Wed Oct  5 17:09:49] #39526 [ 666 | function_destroy | /home/runner/work/core/core/source/reflect/source/reflect_function.c ] @Debug : Destroy function lambda <0x606000669d40>
2022-10-05T17:09:49.4283799Z [Wed Oct  5 17:09:49] #39526 [ 666 | value_type_destroy | /home/runner/work/core/core/source/reflect/source/reflect_value_type.c ] @Debug : Destroy function object_pattern_evil_right <0x606000669c20> value <0x606000669348>
2022-10-05T17:09:49.4284510Z [Wed Oct  5 17:09:49] #39526 [ 666 | function_destroy | /home/runner/work/core/core/source/reflect/source/reflect_function.c ] @Debug : Destroy function object_pattern_evil_right <0x606000669c20>
2022-10-05T17:09:49.4285192Z [Wed Oct  5 17:09:49] #39526 [ 666 | value_type_destroy | /home/runner/work/core/core/source/reflect/source/reflect_value_type.c ] @Debug : Destroy function all_mixed <0x606000669860> value <0x606000669a08>
2022-10-05T17:09:49.4285838Z [Wed Oct  5 17:09:49] #39526 [ 666 | function_destroy | /home/runner/work/core/core/source/reflect/source/reflect_function.c ] @Debug : Destroy function all_mixed <0x606000669860>
2022-10-05T17:09:49.4286488Z [Wed Oct  5 17:09:49] #39526 [ 666 | value_type_destroy | /home/runner/work/core/core/source/reflect/source/reflect_value_type.c ] @Debug : Destroy function throw_await <0x606000666080> value <0x606000666108>
2022-10-05T17:09:49.4287155Z [Wed Oct  5 17:09:49] #39526 [ 666 | function_destroy | /home/runner/work/core/core/source/reflect/source/reflect_function.c ] @Debug : Destroy function throw_await <0x606000666080>
2022-10-05T17:09:49.4287821Z [Wed Oct  5 17:09:49] #39526 [ 666 | value_type_destroy | /home/runner/work/core/core/source/reflect/source/reflect_value_type.c ] @Debug : Destroy function default_values <0x606000669740> value <0x606000669a68>
2022-10-05T17:09:49.4288493Z [Wed Oct  5 17:09:49] #39526 [ 666 | function_destroy | /home/runner/work/core/core/source/reflect/source/reflect_function.c ] @Debug : Destroy function default_values <0x606000669740>
2022-10-05T17:09:49.4289143Z [Wed Oct  5 17:09:49] #39526 [ 666 | value_type_destroy | /home/runner/work/core/core/source/reflect/source/reflect_value_type.c ] @Debug : Destroy function hello_boy_await <0x6060006682a0> value <0x606000668388>
2022-10-05T17:09:49.4289894Z [Wed Oct  5 17:09:49] #39526 [ 666 | function_destroy | /home/runner/work/core/core/source/reflect/source/reflect_function.c ] @Debug : Destroy function hello_boy_await <0x6060006682a0>
2022-10-05T17:09:49.4290561Z [Wed Oct  5 17:09:49] #39526 [ 666 | value_type_destroy | /home/runner/work/core/core/source/reflect/source/reflect_value_type.c ] @Debug : Destroy function call_test <0x60600066a1c0> value <0x60600066a2a8>
2022-10-05T17:09:49.4291218Z [Wed Oct  5 17:09:49] #39526 [ 666 | function_destroy | /home/runner/work/core/core/source/reflect/source/reflect_function.c ] @Debug : Destroy function call_test <0x60600066a1c0>
2022-10-05T17:09:49.4291894Z [Wed Oct  5 17:09:49] #39526 [ 666 | value_type_destroy | /home/runner/work/core/core/source/reflect/source/reflect_value_type.c ] @Debug : Destroy function object_pattern_evil_left <0x606000668ba0> value <0x606000669b28>
2022-10-05T17:09:49.4292577Z [Wed Oct  5 17:09:49] #39526 [ 666 | function_destroy | /home/runner/work/core/core/source/reflect/source/reflect_function.c ] @Debug : Destroy function object_pattern_evil_left <0x606000668ba0>
2022-10-05T17:09:49.4293347Z [Wed Oct  5 17:09:49] #39526 [ 666 | value_type_destroy | /home/runner/work/core/core/source/reflect/source/reflect_value_type.c ] @Debug : Destroy function object_pattern_evil_repeat <0x606000669440> value <0x6060006696a8>
2022-10-05T17:09:49.4294043Z [Wed Oct  5 17:09:49] #39526 [ 666 | function_destroy | /home/runner/work/core/core/source/reflect/source/reflect_function.c ] @Debug : Destroy function object_pattern_evil_repeat <0x606000669440>
2022-10-05T17:09:49.4294729Z [Wed Oct  5 17:09:49] #39526 [ 666 | value_type_destroy | /home/runner/work/core/core/source/reflect/source/reflect_value_type.c ] @Debug : Destroy function get_random_data <0x606000668e40> value <0x606000668fe8>
2022-10-05T17:09:49.4295398Z [Wed Oct  5 17:09:49] #39526 [ 666 | function_destroy | /home/runner/work/core/core/source/reflect/source/reflect_function.c ] @Debug : Destroy function get_random_data <0x606000668e40>
2022-10-05T17:09:49.4296065Z [Wed Oct  5 17:09:49] #39526 [ 666 | value_type_destroy | /home/runner/work/core/core/source/reflect/source/reflect_value_type.c ] @Debug : Destroy function inline_lambda <0x606000669e60> value <0x606000669f48>
2022-10-05T17:09:49.4296720Z [Wed Oct  5 17:09:49] #39526 [ 666 | function_destroy | /home/runner/work/core/core/source/reflect/source/reflect_function.c ] @Debug : Destroy function inline_lambda <0x606000669e60>
2022-10-05T17:09:49.4297392Z [Wed Oct  5 17:09:49] #39526 [ 666 | value_type_destroy | /home/runner/work/core/core/source/reflect/source/reflect_value_type.c ] @Debug : Destroy function hello_boy_nested_await <0x606000665ea0> value <0x606000665f88>
2022-10-05T17:09:49.4298080Z [Wed Oct  5 17:09:49] #39526 [ 666 | function_destroy | /home/runner/work/core/core/source/reflect/source/reflect_function.c ] @Debug : Destroy function hello_boy_nested_await <0x606000665ea0>
2022-10-05T17:09:49.4298754Z [Wed Oct  5 17:09:49] #39526 [ 666 | value_type_destroy | /home/runner/work/core/core/source/reflect/source/reflect_value_type.c ] @Debug : Destroy function hello_boy <0x60600066ab80> value <0x60600066ac68>
2022-10-05T17:09:49.4299415Z [Wed Oct  5 17:09:49] #39526 [ 666 | function_destroy | /home/runner/work/core/core/source/reflect/source/reflect_function.c ] @Debug : Destroy function hello_boy <0x60600066ab80>
2022-10-05T17:09:49.4300952Z [Wed Oct  5 17:09:49] #39526 [ 666 | value_type_destroy | /home/runner/work/core/core/source/reflect/source/reflect_value_type.c ] @Debug : Destroy function object_pattern <0x606000668480> value <0x606000668628>
2022-10-05T17:09:49.4301631Z [Wed Oct  5 17:09:49] #39526 [ 666 | function_destroy | /home/runner/work/core/core/source/reflect/source/reflect_function.c ] @Debug : Destroy function object_pattern <0x606000668480>
2022-10-05T17:09:49.4302291Z [Wed Oct  5 17:09:49] #39526 [ 666 | value_type_destroy | /home/runner/work/core/core/source/reflect/source/reflect_value_type.c ] @Debug : Destroy function return_await <0x60600066a040> value <0x60600066a0c8>
2022-10-05T17:09:49.4303038Z [Wed Oct  5 17:09:49] #39526 [ 666 | function_destroy | /home/runner/work/core/core/source/reflect/source/reflect_function.c ] @Debug : Destroy function return_await <0x60600066a040>
2022-10-05T17:09:49.4304166Z [Wed Oct  5 17:09:49] #39526 [ 574 | loader_impl_destroy_handle | /home/runner/work/core/core/source/loader/source/loader_impl.c ] @Debug : Destroying handle 0x607000000e20-0x607000004178-27-364171840
2022-10-05T17:09:49.4305304Z [Wed Oct  5 17:09:49] #39526 [ 574 | loader_impl_destroy_handle | /home/runner/work/core/core/source/loader/source/loader_impl.c ] @Debug : Destroying handle source/tests/metacall_cli_core_plugin_await_test/plugins/await_test/await_test.js
2022-10-05T17:09:49.4306425Z [Wed Oct  5 17:09:49] #39526 [ 666 | value_type_destroy | /home/runner/work/core/core/source/reflect/source/reflect_value_type.c ] @Debug : Destroy function await__test <0x6060006739a0> value <0x606000671808>
2022-10-05T17:09:49.4307777Z [Wed Oct  5 17:09:49] #39526 [ 666 | function_destroy | /home/runner/work/core/core/source/reflect/source/reflect_function.c ] @Debug : Destroy function await__test <0x6060006739a0>
2022-10-05T17:09:49.4308461Z ==39524==T3 TSDDtor
2022-10-05T17:09:49.4309132Z ==39524==T3 exited
2022-10-05T17:09:49.4309357Z ==39524==T5 TSDDtor
2022-10-05T17:09:49.4309580Z ==39524==T6 TSDDtor
2022-10-05T17:09:49.4309785Z ==39524==T5 exited
2022-10-05T17:09:49.4310006Z ==39524==T6 exited
2022-10-05T17:09:49.4310225Z ==39524==T4 TSDDtor
2022-10-05T17:09:49.4310433Z ==39524==T4 exited
2022-10-05T17:09:49.4310650Z ==39524==T2 TSDDtor
2022-10-05T17:09:49.4310867Z ==39524==T2 exited
2022-10-05T17:09:49.4311070Z ==39524==T1 TSDDtor
2022-10-05T17:09:49.4311289Z ==39524==T1 exited
2022-10-05T17:09:49.4311914Z [Wed Oct  5 17:09:49] #39524 [ 5283 | node_loader_impl_destroy | /home/runner/work/core/core/source/loaders/node_loader/source/node_loader_impl.cpp ] @Information : NodeJS execution return status 0
2022-10-05T17:09:49.4312863Z [Wed Oct  5 17:09:49] #39524 [ 683 | loader_unload_children | /home/runner/work/core/core/source/loader/source/loader.c ] @Debug : Loader unloading (ext) from thread #39524
2022-10-05T17:09:49.4313614Z [Wed Oct  5 17:09:49] #39524 [ 1476 | loader_impl_destroy | /home/runner/work/core/core/source/loader/source/loader_impl.c ] @Debug : Destroy loader implementation ext
2022-10-05T17:09:49.4314288Z [Wed Oct  5 17:09:49] #39524 [ 574 | loader_impl_destroy_handle | /home/runner/work/core/core/source/loader/source/loader_impl.c ] @Debug : Destroying handle plugins/cli/cli_core_plugin/cli_core_plugin
2022-10-05T17:09:49.4315092Z [Wed Oct  5 17:09:49] #39524 [ 325 | ext_loader_impl_clear | /home/runner/work/core/core/source/loaders/ext_loader/source/ext_loader_impl.cpp ] @Debug : Storing handle: /home/runner/work/core/core/build/plugins/cli/cli_core_plugin/cli_core_plugin <0x625002dd4900> in destroy list
2022-10-05T17:09:49.4315875Z [Wed Oct  5 17:09:49] #39524 [ 666 | value_type_destroy | /home/runner/work/core/core/source/reflect/source/reflect_value_type.c ] @Debug : Destroy function inspect <0x606000670640> value <0x6060006706c8>
2022-10-05T17:09:49.4316537Z [Wed Oct  5 17:09:49] #39524 [ 666 | function_destroy | /home/runner/work/core/core/source/reflect/source/reflect_function.c ] @Debug : Destroy function inspect <0x606000670640>
2022-10-05T17:09:49.4317180Z [Wed Oct  5 17:09:49] #39524 [ 666 | value_type_destroy | /home/runner/work/core/core/source/reflect/source/reflect_value_type.c ] @Debug : Destroy function call <0x6060006708e0> value <0x6060006709c8>
2022-10-05T17:09:49.4318149Z [Wed Oct  5 17:09:49] #39524 [ 666 | function_destroy | /home/runner/work/core/core/source/reflect/source/reflect_function.c ] @Debug : Destroy function call <0x6060006708e0>
2022-10-05T17:09:49.4318923Z [Wed Oct  5 17:09:49] #39524 [ 666 | value_type_destroy | /home/runner/work/core/core/source/reflect/source/reflect_value_type.c ] @Debug : Destroy function clear <0x606000670760> value <0x606000670848>
2022-10-05T17:09:49.4319567Z [Wed Oct  5 17:09:49] #39524 [ 666 | function_destroy | /home/runner/work/core/core/source/reflect/source/reflect_function.c ] @Debug : Destroy function clear <0x606000670760>
2022-10-05T17:09:49.4320354Z [Wed Oct  5 17:09:49] #39524 [ 666 | value_type_destroy | /home/runner/work/core/core/source/reflect/source/reflect_value_type.c ] @Debug : Destroy function await <0x606000670a60> value <0x606000670b48>
2022-10-05T17:09:49.4321017Z [Wed Oct  5 17:09:49] #39524 [ 666 | value_type_destroy | /home/runner/work/core/core/source/reflect/source/reflect_value_type.c ] @Debug : Destroy function eval <0x606000670c40> value <0x606000670d28>
2022-10-05T17:09:49.4321657Z [Wed Oct  5 17:09:49] #39524 [ 666 | function_destroy | /home/runner/work/core/core/source/reflect/source/reflect_function.c ] @Debug : Destroy function eval <0x606000670c40>
2022-10-05T17:09:49.4322301Z [Wed Oct  5 17:09:49] #39524 [ 666 | value_type_destroy | /home/runner/work/core/core/source/reflect/source/reflect_value_type.c ] @Debug : Destroy function load <0x606000670d60> value <0x606000670e48>
2022-10-05T17:09:49.4323022Z [Wed Oct  5 17:09:49] #39524 [ 666 | function_destroy | /home/runner/work/core/core/source/reflect/source/reflect_function.c ] @Debug : Destroy function load <0x606000670d60>
2022-10-05T17:09:49.4323691Z [Wed Oct  5 17:09:49] #39524 [ 574 | loader_impl_destroy_handle | /home/runner/work/core/core/source/loader/source/loader_impl.c ] @Debug : Destroying handle plugins/backtrace_plugin/backtrace_plugin
2022-10-05T17:09:49.4324488Z [Wed Oct  5 17:09:49] #39524 [ 325 | ext_loader_impl_clear | /home/runner/work/core/core/source/loaders/ext_loader/source/ext_loader_impl.cpp ] @Debug : Storing handle: /home/runner/work/core/core/build/plugins/backtrace_plugin/backtrace_plugin <0x625000007900> in destroy list
2022-10-05T17:09:49.4325254Z [Wed Oct  5 17:09:49] #39524 [ 574 | loader_impl_destroy_handle | /home/runner/work/core/core/source/loader/source/loader_impl.c ] @Debug : Destroying handle plugin_extension
2022-10-05T17:09:49.4325949Z [Wed Oct  5 17:09:49] #39524 [ 325 | ext_loader_impl_clear | /home/runner/work/core/core/source/loaders/ext_loader/source/ext_loader_impl.cpp ] @Debug : Storing handle: plugin_extension <0x625000005100> in destroy list
2022-10-05T17:09:49.4326674Z [Wed Oct  5 17:09:49] #39524 [ 666 | value_type_destroy | /home/runner/work/core/core/source/reflect/source/reflect_value_type.c ] @Debug : Destroy function plugin_load_from_path <0x606000002900> value <0x6060000029e8>
2022-10-05T17:09:49.4327364Z [Wed Oct  5 17:09:49] #39524 [ 666 | function_destroy | /home/runner/work/core/core/source/reflect/source/reflect_function.c ] @Debug : Destroy function plugin_load_from_path <0x606000002900>
2022-10-05T17:09:49.4328127Z [Wed Oct  5 17:09:49] #39524 [ 371 | ext_loader_impl_destroy | /home/runner/work/core/core/source/loaders/ext_loader/source/ext_loader_impl.cpp ] @Debug : Unloading handle: /home/runner/work/core/core/build/plugins/backtrace_plugin/backtrace_plugin <0x625000007900>
2022-10-05T17:09:49.4329003Z [Wed Oct  5 17:09:49] #39524 [ 371 | ext_loader_impl_destroy | /home/runner/work/core/core/source/loaders/ext_loader/source/ext_loader_impl.cpp ] @Debug : Unloading handle: /home/runner/work/core/core/build/plugins/cli/cli_core_plugin/cli_core_plugin <0x625002dd4900>
2022-10-05T17:09:49.4329786Z [Wed Oct  5 17:09:49] #39524 [ 371 | ext_loader_impl_destroy | /home/runner/work/core/core/source/loaders/ext_loader/source/ext_loader_impl.cpp ] @Debug : Unloading handle: plugin_extension <0x625000005100>
2022-10-05T17:09:49.4330483Z [Wed Oct  5 17:09:49] #39524 [ 683 | loader_unload_children | /home/runner/work/core/core/source/loader/source/loader.c ] @Debug : Loader unloading (__metacall_host__) from thread #39524
2022-10-05T17:09:49.4331116Z ----------------- FUNCTIONS -----------------
2022-10-05T17:09:49.4331389Z Allocations: 23
2022-10-05T17:09:49.4331634Z Deallocations: 22
2022-10-05T17:09:49.4331874Z Increments: 25
2022-10-05T17:09:49.4332092Z Decrements: 24
2022-10-05T17:09:49.4332442Z ----------------- CLASSES -----------------
2022-10-05T17:09:49.4332723Z Allocations: 0
2022-10-05T17:09:49.4332946Z Deallocations: 0
2022-10-05T17:09:49.4333183Z Increments: 0
2022-10-05T17:09:49.4333412Z Decrements: 0
2022-10-05T17:09:49.4333814Z ----------------- OBJECTS -----------------
2022-10-05T17:09:49.4334094Z Allocations: 0
2022-10-05T17:09:49.4334334Z Deallocations: 0
2022-10-05T17:09:49.4334560Z Increments: 0
2022-10-05T17:09:49.4334788Z Decrements: 0
2022-10-05T17:09:49.4335156Z ----------------- EXCEPTIONS -----------------
2022-10-05T17:09:49.4335430Z Allocations: 0
2022-10-05T17:09:49.4335667Z Deallocations: 0
2022-10-05T17:09:49.4335906Z Increments: 0
2022-10-05T17:09:49.4336120Z Decrements: 0
2022-10-05T17:09:49.4336470Z [       OK ] metacall_cli_core_plugin_await_test.DefaultConstructor (1435 ms)
2022-10-05T17:09:49.4337021Z [----------] 1 test from metacall_cli_core_plugin_await_test (1435 ms total)
2022-10-05T17:09:49.4337265Z 
2022-10-05T17:09:49.4337488Z [----------] Global test environment tear-down
2022-10-05T17:09:49.4337883Z [==========] 1 test from 1 test suite ran. (1435 ms total)
2022-10-05T17:09:49.4338173Z [  PASSED  ] 1 test.
2022-10-05T17:09:49.4338436Z ==39535==Processing thread 39524.
2022-10-05T17:09:49.4338901Z ==39535==Stack at 0x7ffffbd8e000-0x7ffffcd8e000 (SP = 0x7ffffcd8a1f8).
2022-10-05T17:09:49.4339355Z ==39535==TLS at 0x7fe31c5a4000-0x7fe31c5a50c0.
2022-10-05T17:09:49.4339651Z ==39535==Processing thread 39534.
2022-10-05T17:09:49.4340085Z ==39535==Stack at 0x7fe318b03000-0x7fe318b05f40 (SP = 0x7fe318b05dc0).
2022-10-05T17:09:49.4340514Z ==39535==TLS at 0x7fe318b05f40-0x7fe318b07000.
2022-10-05T17:09:49.4340697Z 
2022-10-05T17:09:49.4340823Z =================================================================
2022-10-05T17:09:49.4341385Z ==39524==ERROR: LeakSanitizer: detected memory leaks
2022-10-05T17:09:49.4341595Z 
2022-10-05T17:09:49.4341764Z Indirect leak of 120 byte(s) in 1 object(s) allocated from:
2022-10-05T17:09:49.4342196Z     #0 0x7fe31d78b808 in __interceptor_malloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cc:144
2022-10-05T17:09:49.4342684Z     #1 0x7fe31cbec501 in bucket_create /home/runner/work/core/core/source/adt/source/adt_bucket.c:127
2022-10-05T17:09:49.4343136Z     #2 0x7fe31cbe3993 in set_create /home/runner/work/core/core/source/adt/source/adt_set.c:93
2022-10-05T17:09:49.4343627Z     #3 0x7fe31cbfe938 in signature_create /home/runner/work/core/core/source/reflect/source/reflect_signature.c:90
2022-10-05T17:09:49.4344150Z     #4 0x7fe31cc00dc1 in function_create /home/runner/work/core/core/source/reflect/source/reflect_function.c:90
2022-10-05T17:09:49.4344663Z     #5 0x7fe31cc2b71d in loader_host_register /home/runner/work/core/core/source/loader/source/loader_host.c:152
2022-10-05T17:09:49.4345154Z     #6 0x7fe31cc1efe7 in loader_register_impl /home/runner/work/core/core/source/loader/source/loader.c:218
2022-10-05T17:09:49.4345679Z     #7 0x7fe31cc36ce3 in metacall_register_loaderv /home/runner/work/core/core/source/metacall/source/metacall.c:1493
2022-10-05T17:09:49.4346279Z     #8 0x7fe30866a1f4 in cli_core_plugin /home/runner/work/core/core/source/cli/plugins/cli_core_plugin/source/cli_core_plugin.cpp:352
2022-10-05T17:09:49.4346860Z     #9 0x7fe317d9c809 in ext_loader_impl_discover /home/runner/work/core/core/source/loaders/ext_loader/source/ext_loader_impl.cpp:348
2022-10-05T17:09:49.4347392Z     #10 0x7fe31cc27003 in loader_impl_load_from_file /home/runner/work/core/core/source/loader/source/loader_impl.c:856
2022-10-05T17:09:49.4347900Z     #11 0x7fe31cc1f275 in loader_load_from_file /home/runner/work/core/core/source/loader/source/loader.c:307
2022-10-05T17:09:49.4348413Z     #12 0x7fe31cc1fa26 in loader_load_from_configuration /home/runner/work/core/core/source/loader/source/loader.c:475
2022-10-05T17:09:49.4349123Z     #13 0x7fe31cc2d7fc in metacall_load_from_configuration /home/runner/work/core/core/source/metacall/source/metacall.c:367
2022-10-05T17:09:49.4349732Z     #14 0x7fe318d9ee82 in plugin_load_from_path(unsigned long, void**, void*) /home/runner/work/core/core/source/extensions/plugin_extension/source/plugin_extension.cpp:103
2022-10-05T17:09:49.4350441Z     #15 0x7fe31cc2b559 in function_host_interface_invoke /home/runner/work/core/core/source/loader/source/loader_host.c:64
2022-10-05T17:09:49.4350970Z     #16 0x7fe31cc021be in function_call /home/runner/work/core/core/source/reflect/source/reflect_function.c:609
2022-10-05T17:09:49.4351467Z     #17 0x7fe31cc337ef in metacallfv_s /home/runner/work/core/core/source/metacall/source/metacall.c:1025
2022-10-05T17:09:49.4351942Z     #18 0x7fe31cc3396c in metacallhv_s /home/runner/work/core/core/source/metacall/source/metacall.c:433
2022-10-05T17:09:49.4352658Z     #19 0x55c172a7f04c in metacall_cli_core_plugin_await_test_DefaultConstructor_Test::TestBody() /home/runner/work/core/core/source/tests/metacall_cli_core_plugin_await_test/source/metacall_cli_core_plugin_await_test.cpp:92
2022-10-05T17:09:49.4353486Z     #20 0x55c172b0d720 in void testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) googletest/src/gtest.cc:2433
2022-10-05T17:09:49.4354354Z     #21 0x55c172b0d720 in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) googletest/src/gtest.cc:2469
2022-10-05T17:09:49.4354752Z 
2022-10-05T17:09:49.4354918Z Indirect leak of 64 byte(s) in 1 object(s) allocated from:
2022-10-05T17:09:49.4355327Z     #0 0x7fe31d78b808 in __interceptor_malloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cc:144
2022-10-05T17:09:49.4355815Z     #1 0x7fe31cbec893 in bucket_alloc_pairs /home/runner/work/core/core/source/adt/source/adt_bucket.c:159
2022-10-05T17:09:49.4356302Z     #2 0x7fe31cbed3b8 in bucket_insert /home/runner/work/core/core/source/adt/source/adt_bucket.c:246
2022-10-05T17:09:49.4356769Z     #3 0x7fe31cbe5335 in set_insert /home/runner/work/core/core/source/adt/source/adt_set.c:222
2022-10-05T17:09:49.4357205Z     #4 0x7fe31cbe5335 in set_insert /home/runner/work/core/core/source/adt/source/adt_set.c:195
2022-10-05T17:09:49.4357687Z     #5 0x7fe31cbff520 in signature_set /home/runner/work/core/core/source/reflect/source/reflect_signature.c:246
2022-10-05T17:09:49.4358204Z     #6 0x7fe31cc2b7c7 in loader_host_register /home/runner/work/core/core/source/loader/source/loader_host.c:171
2022-10-05T17:09:49.4358695Z     #7 0x7fe31cc1efe7 in loader_register_impl /home/runner/work/core/core/source/loader/source/loader.c:218
2022-10-05T17:09:49.4359211Z     #8 0x7fe31cc36ce3 in metacall_register_loaderv /home/runner/work/core/core/source/metacall/source/metacall.c:1493
2022-10-05T17:09:49.4359764Z     #9 0x7fe30866a1f4 in cli_core_plugin /home/runner/work/core/core/source/cli/plugins/cli_core_plugin/source/cli_core_plugin.cpp:352
2022-10-05T17:09:49.4360334Z     #10 0x7fe317d9c809 in ext_loader_impl_discover /home/runner/work/core/core/source/loaders/ext_loader/source/ext_loader_impl.cpp:348
2022-10-05T17:09:49.4360860Z     #11 0x7fe31cc27003 in loader_impl_load_from_file /home/runner/work/core/core/source/loader/source/loader_impl.c:856
2022-10-05T17:09:49.4361367Z     #12 0x7fe31cc1f275 in loader_load_from_file /home/runner/work/core/core/source/loader/source/loader.c:307
2022-10-05T17:09:49.4361878Z     #13 0x7fe31cc1fa26 in loader_load_from_configuration /home/runner/work/core/core/source/loader/source/loader.c:475
2022-10-05T17:09:49.4362420Z     #14 0x7fe31cc2d7fc in metacall_load_from_configuration /home/runner/work/core/core/source/metacall/source/metacall.c:367
2022-10-05T17:09:49.4363024Z     #15 0x7fe318d9ee82 in plugin_load_from_path(unsigned long, void**, void*) /home/runner/work/core/core/source/extensions/plugin_extension/source/plugin_extension.cpp:103
2022-10-05T17:09:49.4363624Z     #16 0x7fe31cc2b559 in function_host_interface_invoke /home/runner/work/core/core/source/loader/source/loader_host.c:64
2022-10-05T17:09:49.4364139Z     #17 0x7fe31cc021be in function_call /home/runner/work/core/core/source/reflect/source/reflect_function.c:609
2022-10-05T17:09:49.4364642Z     #18 0x7fe31cc337ef in metacallfv_s /home/runner/work/core/core/source/metacall/source/metacall.c:1025
2022-10-05T17:09:49.4365182Z     #19 0x7fe31cc3396c in metacallhv_s /home/runner/work/core/core/source/metacall/source/metacall.c:433
2022-10-05T17:09:49.4365858Z     #20 0x55c172a7f04c in metacall_cli_core_plugin_await_test_DefaultConstructor_Test::TestBody() /home/runner/work/core/core/source/tests/metacall_cli_core_plugin_await_test/source/metacall_cli_core_plugin_await_test.cpp:92
2022-10-05T17:09:49.4366674Z     #21 0x55c172b0d720 in void testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) googletest/src/gtest.cc:2433
2022-10-05T17:09:49.4367449Z     #22 0x55c172b0d720 in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) googletest/src/gtest.cc:2469
2022-10-05T17:09:49.4367848Z 
2022-10-05T17:09:49.4368077Z Indirect leak of 56 byte(s) in 1 object(s) allocated from:
2022-10-05T17:09:49.4368493Z     #0 0x7fe31d78b808 in __interceptor_malloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cc:144
2022-10-05T17:09:49.4368992Z     #1 0x7fe31cc00c7a in function_create /home/runner/work/core/core/source/reflect/source/reflect_function.c:56
2022-10-05T17:09:49.4369509Z     #2 0x7fe31cc2b71d in loader_host_register /home/runner/work/core/core/source/loader/source/loader_host.c:152
2022-10-05T17:09:49.4370012Z     #3 0x7fe31cc1efe7 in loader_register_impl /home/runner/work/core/core/source/loader/source/loader.c:218
2022-10-05T17:09:49.4370519Z     #4 0x7fe31cc36ce3 in metacall_register_loaderv /home/runner/work/core/core/source/metacall/source/metacall.c:1493
2022-10-05T17:09:49.4371079Z     #5 0x7fe30866a1f4 in cli_core_plugin /home/runner/work/core/core/source/cli/plugins/cli_core_plugin/source/cli_core_plugin.cpp:352
2022-10-05T17:09:49.4371647Z     #6 0x7fe317d9c809 in ext_loader_impl_discover /home/runner/work/core/core/source/loaders/ext_loader/source/ext_loader_impl.cpp:348
2022-10-05T17:09:49.4372196Z     #7 0x7fe31cc27003 in loader_impl_load_from_file /home/runner/work/core/core/source/loader/source/loader_impl.c:856
2022-10-05T17:09:49.4372692Z     #8 0x7fe31cc1f275 in loader_load_from_file /home/runner/work/core/core/source/loader/source/loader.c:307
2022-10-05T17:09:49.4373198Z     #9 0x7fe31cc1fa26 in loader_load_from_configuration /home/runner/work/core/core/source/loader/source/loader.c:475
2022-10-05T17:09:49.4373739Z     #10 0x7fe31cc2d7fc in metacall_load_from_configuration /home/runner/work/core/core/source/metacall/source/metacall.c:367
2022-10-05T17:09:49.4374360Z     #11 0x7fe318d9ee82 in plugin_load_from_path(unsigned long, void**, void*) /home/runner/work/core/core/source/extensions/plugin_extension/source/plugin_extension.cpp:103
2022-10-05T17:09:49.4374949Z     #12 0x7fe31cc2b559 in function_host_interface_invoke /home/runner/work/core/core/source/loader/source/loader_host.c:64
2022-10-05T17:09:49.4375472Z     #13 0x7fe31cc021be in function_call /home/runner/work/core/core/source/reflect/source/reflect_function.c:609
2022-10-05T17:09:49.4375978Z     #14 0x7fe31cc337ef in metacallfv_s /home/runner/work/core/core/source/metacall/source/metacall.c:1025
2022-10-05T17:09:49.4376467Z     #15 0x7fe31cc3396c in metacallhv_s /home/runner/work/core/core/source/metacall/source/metacall.c:433
2022-10-05T17:09:49.4377127Z     #16 0x55c172a7f04c in metacall_cli_core_plugin_await_test_DefaultConstructor_Test::TestBody() /home/runner/work/core/core/source/tests/metacall_cli_core_plugin_await_test/source/metacall_cli_core_plugin_await_test.cpp:92
2022-10-05T17:09:49.4377937Z     #17 0x55c172b0d720 in void testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) googletest/src/gtest.cc:2433
2022-10-05T17:09:49.4378719Z     #18 0x55c172b0d720 in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) googletest/src/gtest.cc:2469
2022-10-05T17:09:49.4379115Z 
2022-10-05T17:09:49.4379279Z Indirect leak of 48 byte(s) in 1 object(s) allocated from:
2022-10-05T17:09:49.4379767Z     #0 0x7fe31d78b808 in __interceptor_malloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cc:144
2022-10-05T17:09:49.4380223Z     #1 0x7fe31cbe3894 in set_create /home/runner/work/core/core/source/adt/source/adt_set.c:80
2022-10-05T17:09:49.4380712Z     #2 0x7fe31cbfe938 in signature_create /home/runner/work/core/core/source/reflect/source/reflect_signature.c:90
2022-10-05T17:09:49.4381228Z     #3 0x7fe31cc00dc1 in function_create /home/runner/work/core/core/source/reflect/source/reflect_function.c:90
2022-10-05T17:09:49.4381736Z     #4 0x7fe31cc2b71d in loader_host_register /home/runner/work/core/core/source/loader/source/loader_host.c:152
2022-10-05T17:09:49.4382231Z     #5 0x7fe31cc1efe7 in loader_register_impl /home/runner/work/core/core/source/loader/source/loader.c:218
2022-10-05T17:09:49.4382812Z     #6 0x7fe31cc36ce3 in metacall_register_loaderv /home/runner/work/core/core/source/metacall/source/metacall.c:1493
2022-10-05T17:09:49.4383365Z     #7 0x7fe30866a1f4 in cli_core_plugin /home/runner/work/core/core/source/cli/plugins/cli_core_plugin/source/cli_core_plugin.cpp:352
2022-10-05T17:09:49.4383935Z     #8 0x7fe317d9c809 in ext_loader_impl_discover /home/runner/work/core/core/source/loaders/ext_loader/source/ext_loader_impl.cpp:348
2022-10-05T17:09:49.4384460Z     #9 0x7fe31cc27003 in loader_impl_load_from_file /home/runner/work/core/core/source/loader/source/loader_impl.c:856
2022-10-05T17:09:49.4384966Z     #10 0x7fe31cc1f275 in loader_load_from_file /home/runner/work/core/core/source/loader/source/loader.c:307
2022-10-05T17:09:49.4385485Z     #11 0x7fe31cc1fa26 in loader_load_from_configuration /home/runner/work/core/core/source/loader/source/loader.c:475
2022-10-05T17:09:49.4386017Z     #12 0x7fe31cc2d7fc in metacall_load_from_configuration /home/runner/work/core/core/source/metacall/source/metacall.c:367
2022-10-05T17:09:49.4386644Z     #13 0x7fe318d9ee82 in plugin_load_from_path(unsigned long, void**, void*) /home/runner/work/core/core/source/extensions/plugin_extension/source/plugin_extension.cpp:103
2022-10-05T17:09:49.4387238Z     #14 0x7fe31cc2b559 in function_host_interface_invoke /home/runner/work/core/core/source/loader/source/loader_host.c:64
2022-10-05T17:09:49.4387758Z     #15 0x7fe31cc021be in function_call /home/runner/work/core/core/source/reflect/source/reflect_function.c:609
2022-10-05T17:09:49.4388248Z     #16 0x7fe31cc337ef in metacallfv_s /home/runner/work/core/core/source/metacall/source/metacall.c:1025
2022-10-05T17:09:49.4388865Z     #17 0x7fe31cc3396c in metacallhv_s /home/runner/work/core/core/source/metacall/source/metacall.c:433
2022-10-05T17:09:49.4389550Z     #18 0x55c172a7f04c in metacall_cli_core_plugin_await_test_DefaultConstructor_Test::TestBody() /home/runner/work/core/core/source/tests/metacall_cli_core_plugin_await_test/source/metacall_cli_core_plugin_await_test.cpp:92
2022-10-05T17:09:49.4390376Z     #19 0x55c172b0d720 in void testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) googletest/src/gtest.cc:2433
2022-10-05T17:09:49.4391157Z     #20 0x55c172b0d720 in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) googletest/src/gtest.cc:2469
2022-10-05T17:09:49.4391550Z 
2022-10-05T17:09:49.4391716Z Indirect leak of 48 byte(s) in 1 object(s) allocated from:
2022-10-05T17:09:49.4392133Z     #0 0x7fe31d78b808 in __interceptor_malloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cc:144
2022-10-05T17:09:49.4392632Z     #1 0x7fe31cbfe915 in signature_create /home/runner/work/core/core/source/reflect/source/reflect_signature.c:84
2022-10-05T17:09:49.4393153Z     #2 0x7fe31cc00dc1 in function_create /home/runner/work/core/core/source/reflect/source/reflect_function.c:90
2022-10-05T17:09:49.4393651Z     #3 0x7fe31cc2b71d in loader_host_register /home/runner/work/core/core/source/loader/source/loader_host.c:152
2022-10-05T17:09:49.4394249Z     #4 0x7fe31cc1efe7 in loader_register_impl /home/runner/work/core/core/source/loader/source/loader.c:218
2022-10-05T17:09:49.4394774Z     #5 0x7fe31cc36ce3 in metacall_register_loaderv /home/runner/work/core/core/source/metacall/source/metacall.c:1493
2022-10-05T17:09:49.4395346Z     #6 0x7fe30866a1f4 in cli_core_plugin /home/runner/work/core/core/source/cli/plugins/cli_core_plugin/source/cli_core_plugin.cpp:352
2022-10-05T17:09:49.4395899Z     #7 0x7fe317d9c809 in ext_loader_impl_discover /home/runner/work/core/core/source/loaders/ext_loader/source/ext_loader_impl.cpp:348
2022-10-05T17:09:49.4396439Z     #8 0x7fe31cc27003 in loader_impl_load_from_file /home/runner/work/core/core/source/loader/source/loader_impl.c:856
2022-10-05T17:09:49.4396944Z     #9 0x7fe31cc1f275 in loader_load_from_file /home/runner/work/core/core/source/loader/source/loader.c:307
2022-10-05T17:09:49.4397533Z     #10 0x7fe31cc1fa26 in loader_load_from_configuration /home/runner/work/core/core/source/loader/source/loader.c:475
2022-10-05T17:09:49.4398064Z     #11 0x7fe31cc2d7fc in metacall_load_from_configuration /home/runner/work/core/core/source/metacall/source/metacall.c:367
2022-10-05T17:09:49.4398681Z     #12 0x7fe318d9ee82 in plugin_load_from_path(unsigned long, void**, void*) /home/runner/work/core/core/source/extensions/plugin_extension/source/plugin_extension.cpp:103
2022-10-05T17:09:49.4399282Z     #13 0x7fe31cc2b559 in function_host_interface_invoke /home/runner/work/core/core/source/loader/source/loader_host.c:64
2022-10-05T17:09:49.4399800Z     #14 0x7fe31cc021be in function_call /home/runner/work/core/core/source/reflect/source/reflect_function.c:609
2022-10-05T17:09:49.4400290Z     #15 0x7fe31cc337ef in metacallfv_s /home/runner/work/core/core/source/metacall/source/metacall.c:1025
2022-10-05T17:09:49.4400772Z     #16 0x7fe31cc3396c in metacallhv_s /home/runner/work/core/core/source/metacall/source/metacall.c:433
2022-10-05T17:09:49.4401449Z     #17 0x55c172a7f04c in metacall_cli_core_plugin_await_test_DefaultConstructor_Test::TestBody() /home/runner/work/core/core/source/tests/metacall_cli_core_plugin_await_test/source/metacall_cli_core_plugin_await_test.cpp:92
2022-10-05T17:09:49.4402261Z     #18 0x55c172b0d720 in void testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) googletest/src/gtest.cc:2433
2022-10-05T17:09:49.4403037Z     #19 0x55c172b0d720 in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) googletest/src/gtest.cc:2469
2022-10-05T17:09:49.4403433Z 
2022-10-05T17:09:49.4403581Z Indirect leak of 6 byte(s) in 1 object(s) allocated from:
2022-10-05T17:09:49.4404012Z     #0 0x7fe31d78b808 in __interceptor_malloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cc:144
2022-10-05T17:09:49.4404507Z     #1 0x7fe31cc00ca7 in function_create /home/runner/work/core/core/source/reflect/source/reflect_function.c:67
2022-10-05T17:09:49.4405025Z     #2 0x7fe31cc2b71d in loader_host_register /home/runner/work/core/core/source/loader/source/loader_host.c:152
2022-10-05T17:09:49.4405514Z     #3 0x7fe31cc1efe7 in loader_register_impl /home/runner/work/core/core/source/loader/source/loader.c:218
2022-10-05T17:09:49.4406034Z     #4 0x7fe31cc36ce3 in metacall_register_loaderv /home/runner/work/core/core/source/metacall/source/metacall.c:1493
2022-10-05T17:09:49.4406586Z     #5 0x7fe30866a1f4 in cli_core_plugin /home/runner/work/core/core/source/cli/plugins/cli_core_plugin/source/cli_core_plugin.cpp:352
2022-10-05T17:09:49.4407147Z     #6 0x7fe317d9c809 in ext_loader_impl_discover /home/runner/work/core/core/source/loaders/ext_loader/source/ext_loader_impl.cpp:348
2022-10-05T17:09:49.4407677Z     #7 0x7fe31cc27003 in loader_impl_load_from_file /home/runner/work/core/core/source/loader/source/loader_impl.c:856
2022-10-05T17:09:49.4408189Z     #8 0x7fe31cc1f275 in loader_load_from_file /home/runner/work/core/core/source/loader/source/loader.c:307
2022-10-05T17:09:49.4408769Z     #9 0x7fe31cc1fa26 in loader_load_from_configuration /home/runner/work/core/core/source/loader/source/loader.c:475
2022-10-05T17:09:49.4409320Z     #10 0x7fe31cc2d7fc in metacall_load_from_configuration /home/runner/work/core/core/source/metacall/source/metacall.c:367
2022-10-05T17:09:49.4409932Z     #11 0x7fe318d9ee82 in plugin_load_from_path(unsigned long, void**, void*) /home/runner/work/core/core/source/extensions/plugin_extension/source/plugin_extension.cpp:103
2022-10-05T17:09:49.4410534Z     #12 0x7fe31cc2b559 in function_host_interface_invoke /home/runner/work/core/core/source/loader/source/loader_host.c:64
2022-10-05T17:09:49.4411055Z     #13 0x7fe31cc021be in function_call /home/runner/work/core/core/source/reflect/source/reflect_function.c:609
2022-10-05T17:09:49.4412853Z     #14 0x7fe31cc337ef in metacallfv_s /home/runner/work/core/core/source/metacall/source/metacall.c:1025
2022-10-05T17:09:49.4413406Z     #15 0x7fe31cc3396c in metacallhv_s /home/runner/work/core/core/source/metacall/source/metacall.c:433
2022-10-05T17:09:49.4414088Z     #16 0x55c172a7f04c in metacall_cli_core_plugin_await_test_DefaultConstructor_Test::TestBody() /home/runner/work/core/core/source/tests/metacall_cli_core_plugin_await_test/source/metacall_cli_core_plugin_await_test.cpp:92
2022-10-05T17:09:49.4414911Z     #17 0x55c172b0d720 in void testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) googletest/src/gtest.cc:2433
2022-10-05T17:09:49.4415702Z     #18 0x55c172b0d720 in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) googletest/src/gtest.cc:2469
2022-10-05T17:09:49.4416101Z 
2022-10-05T17:09:49.4416267Z Indirect leak of 1 byte(s) in 1 object(s) allocated from:
2022-10-05T17:09:49.4416680Z     #0 0x7fe31d78b808 in __interceptor_malloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cc:144
2022-10-05T17:09:49.4417180Z     #1 0x7fe31cbff38f in signature_set /home/runner/work/core/core/source/reflect/source/reflect_signature.c:224
2022-10-05T17:09:49.4417688Z     #2 0x7fe31cc2b7c7 in loader_host_register /home/runner/work/core/core/source/loader/source/loader_host.c:171
2022-10-05T17:09:49.4418197Z     #3 0x7fe31cc1efe7 in loader_register_impl /home/runner/work/core/core/source/loader/source/loader.c:218
2022-10-05T17:09:49.4418705Z     #4 0x7fe31cc36ce3 in metacall_register_loaderv /home/runner/work/core/core/source/metacall/source/metacall.c:1493
2022-10-05T17:09:49.4419260Z     #5 0x7fe30866a1f4 in cli_core_plugin /home/runner/work/core/core/source/cli/plugins/cli_core_plugin/source/cli_core_plugin.cpp:352
2022-10-05T17:09:49.4419825Z     #6 0x7fe317d9c809 in ext_loader_impl_discover /home/runner/work/core/core/source/loaders/ext_loader/source/ext_loader_impl.cpp:348
2022-10-05T17:09:49.4420373Z     #7 0x7fe31cc27003 in loader_impl_load_from_file /home/runner/work/core/core/source/loader/source/loader_impl.c:856
2022-10-05T17:09:49.4420869Z     #8 0x7fe31cc1f275 in loader_load_from_file /home/runner/work/core/core/source/loader/source/loader.c:307
2022-10-05T17:09:49.4421384Z     #9 0x7fe31cc1fa26 in loader_load_from_configuration /home/runner/work/core/core/source/loader/source/loader.c:475
2022-10-05T17:09:49.4421933Z     #10 0x7fe31cc2d7fc in metacall_load_from_configuration /home/runner/work/core/core/source/metacall/source/metacall.c:367
2022-10-05T17:09:49.4422556Z     #11 0x7fe318d9ee82 in plugin_load_from_path(unsigned long, void**, void*) /home/runner/work/core/core/source/extensions/plugin_extension/source/plugin_extension.cpp:103
2022-10-05T17:09:49.4423145Z     #12 0x7fe31cc2b559 in function_host_interface_invoke /home/runner/work/core/core/source/loader/source/loader_host.c:64
2022-10-05T17:09:49.4423666Z     #13 0x7fe31cc021be in function_call /home/runner/work/core/core/source/reflect/source/reflect_function.c:609
2022-10-05T17:09:49.4424173Z     #14 0x7fe31cc337ef in metacallfv_s /home/runner/work/core/core/source/metacall/source/metacall.c:1025
2022-10-05T17:09:49.4424744Z     #15 0x7fe31cc3396c in metacallhv_s /home/runner/work/core/core/source/metacall/source/metacall.c:433
2022-10-05T17:09:49.4425407Z     #16 0x55c172a7f04c in metacall_cli_core_plugin_await_test_DefaultConstructor_Test::TestBody() /home/runner/work/core/core/source/tests/metacall_cli_core_plugin_await_test/source/metacall_cli_core_plugin_await_test.cpp:92
2022-10-05T17:09:49.4427902Z     #17 0x55c172b0d720 in void testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) googletest/src/gtest.cc:2433
2022-10-05T17:09:49.4428885Z     #18 0x55c172b0d720 in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) googletest/src/gtest.cc:2469
2022-10-05T17:09:49.4429455Z 
2022-10-05T17:09:49.4429645Z SUMMARY: AddressSanitizer: 343 byte(s) leaked in 7 allocation(s).
2022-10-05T17:09:49.4429871Z 
rxbryan commented 2 years ago

here's the output from valgrind

λ exit
==124538== ----------------------------------------------------------------
==124538== 
==124538==  Lock at 0x4EE2180 was first observed
==124538==    at 0x4843D9D: pthread_mutex_init (in /usr/lib/x86_64-linux-gnu/valgrind/vgpreload_helgrind-amd64-linux.so)
==124538==    by 0x7ABB4B5: v8::base::RecursiveMutex::RecursiveMutex() (in /home/lord-bryan/opt/lib/libnode.so.108)
==124538==    by 0x72840CA: v8::internal::Isolate::Isolate(std::unique_ptr<v8::internal::IsolateAllocator, std::default_delete<v8::internal::IsolateAllocator> >, bool) (in /home/lord-bryan/opt/lib/libnode.so.108)
==124538==    by 0x7284CED: v8::internal::Isolate::Allocate(bool) (in /home/lord-bryan/opt/lib/libnode.so.108)
==124538==    by 0x673CB24: node::NodeMainInstance::NodeMainInstance(node::SnapshotData const*, uv_loop_s*, node::MultiIsolatePlatform*, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&) (in /home/lord-bryan/opt/lib/libnode.so.108)
==124538==    by 0x66ABF48: node::Start(int, char**) (in /home/lord-bryan/opt/lib/libnode.so.108)
==124538==    by 0x5A42DB1: node_loader_impl_thread(void*) (node_loader_impl.cpp:4189)
==124538==    by 0x4842B1A: ??? (in /usr/lib/x86_64-linux-gnu/valgrind/vgpreload_helgrind-amd64-linux.so)
==124538==    by 0x4AA7608: start_thread (pthread_create.c:477)
==124538==    by 0x4BE3162: clone (clone.S:95)
==124538==  Address 0x4ee2180 is 54,624 bytes inside a block of size 60,536 alloc'd
==124538==    at 0x483CF03: operator new(unsigned long) (in /usr/lib/x86_64-linux-gnu/valgrind/vgpreload_helgrind-amd64-linux.so)
==124538==    by 0x73D75F9: v8::internal::IsolateAllocator::IsolateAllocator() (in /home/lord-bryan/opt/lib/libnode.so.108)
==124538==    by 0x7284CD6: v8::internal::Isolate::Allocate(bool) (in /home/lord-bryan/opt/lib/libnode.so.108)
==124538==    by 0x673CB24: node::NodeMainInstance::NodeMainInstance(node::SnapshotData const*, uv_loop_s*, node::MultiIsolatePlatform*, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&) (in /home/lord-bryan/opt/lib/libnode.so.108)
==124538==    by 0x66ABF48: node::Start(int, char**) (in /home/lord-bryan/opt/lib/libnode.so.108)
==124538==    by 0x5A42DB1: node_loader_impl_thread(void*) (node_loader_impl.cpp:4189)
==124538==    by 0x4842B1A: ??? (in /usr/lib/x86_64-linux-gnu/valgrind/vgpreload_helgrind-amd64-linux.so)
==124538==    by 0x4AA7608: start_thread (pthread_create.c:477)
==124538==    by 0x4BE3162: clone (clone.S:95)
==124538==  Block was alloc'd by thread #2
==124538== 
==124538==  Lock at 0x4EC7338 was first observed
==124538==    at 0x4843D9D: pthread_mutex_init (in /usr/lib/x86_64-linux-gnu/valgrind/vgpreload_helgrind-amd64-linux.so)
==124538==    by 0x6C518DE: uv_mutex_init (thread.c:284)
==124538==    by 0x5A5081A: node_loader_impl_initialize (node_loader_impl.cpp:4309)
==124538==    by 0x48767E1: loader_impl_initialize.part.0 (loader_impl.c:367)
==124538==    by 0x4876B15: loader_impl_initialize (loader_impl.c:887)
==124538==    by 0x4876B15: loader_impl_load_from_file (loader_impl.c:822)
==124538==    by 0x48751FC: loader_load_from_configuration (loader.c:475)
==124538==    by 0x521BC94: plugin_load_from_path(unsigned long, void**, void*) (plugin_extension.cpp:92)
==124538==    by 0x48795AD: metacallfv_s (metacall.c:1025)
==124538==    by 0x10CBA5: metacallcli::application::application(int, char**) (application.cpp:182)
==124538==    by 0x10BEDD: main (main.cpp:35)
==124538==  Address 0x4ec7338 is 328 bytes inside a block of size 728 alloc'd
==124538==    at 0x483CF03: operator new(unsigned long) (in /usr/lib/x86_64-linux-gnu/valgrind/vgpreload_helgrind-amd64-linux.so)
==124538==    by 0x5A50789: node_loader_impl_initialize (node_loader_impl.cpp:4267)
==124538==    by 0x48767E1: loader_impl_initialize.part.0 (loader_impl.c:367)
==124538==    by 0x4876B15: loader_impl_initialize (loader_impl.c:887)
==124538==    by 0x4876B15: loader_impl_load_from_file (loader_impl.c:822)
==124538==    by 0x48751FC: loader_load_from_configuration (loader.c:475)
==124538==    by 0x521BC94: plugin_load_from_path(unsigned long, void**, void*) (plugin_extension.cpp:92)
==124538==    by 0x48795AD: metacallfv_s (metacall.c:1025)
==124538==    by 0x10CBA5: metacallcli::application::application(int, char**) (application.cpp:182)
==124538==    by 0x10BEDD: main (main.cpp:35)
==124538==  Block was alloc'd by thread #1
==124538== 
==124538==  Lock at 0x4EE4A30 was first observed
==124538==    at 0x4843D9D: pthread_mutex_init (in /usr/lib/x86_64-linux-gnu/valgrind/vgpreload_helgrind-amd64-linux.so)
==124538==    by 0x729DF65: v8::internal::ThreadManager::ThreadManager(v8::internal::Isolate*) (in /home/lord-bryan/opt/lib/libnode.so.108)
==124538==    by 0x7284987: v8::internal::Isolate::Isolate(std::unique_ptr<v8::internal::IsolateAllocator, std::default_delete<v8::internal::IsolateAllocator> >, bool) (in /home/lord-bryan/opt/lib/libnode.so.108)
==124538==    by 0x7284CED: v8::internal::Isolate::Allocate(bool) (in /home/lord-bryan/opt/lib/libnode.so.108)
==124538==    by 0x673CB24: node::NodeMainInstance::NodeMainInstance(node::SnapshotData const*, uv_loop_s*, node::MultiIsolatePlatform*, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&) (in /home/lord-bryan/opt/lib/libnode.so.108)
==124538==    by 0x66ABF48: node::Start(int, char**) (in /home/lord-bryan/opt/lib/libnode.so.108)
==124538==    by 0x5A42DB1: node_loader_impl_thread(void*) (node_loader_impl.cpp:4189)
==124538==    by 0x4842B1A: ??? (in /usr/lib/x86_64-linux-gnu/valgrind/vgpreload_helgrind-amd64-linux.so)
==124538==    by 0x4AA7608: start_thread (pthread_create.c:477)
==124538==    by 0x4BE3162: clone (clone.S:95)
==124538==  Address 0x4ee4a30 is 0 bytes inside a block of size 80 alloc'd
==124538==    at 0x483CF03: operator new(unsigned long) (in /usr/lib/x86_64-linux-gnu/valgrind/vgpreload_helgrind-amd64-linux.so)
==124538==    by 0x7284979: v8::internal::Isolate::Isolate(std::unique_ptr<v8::internal::IsolateAllocator, std::default_delete<v8::internal::IsolateAllocator> >, bool) (in /home/lord-bryan/opt/lib/libnode.so.108)
==124538==    by 0x7284CED: v8::internal::Isolate::Allocate(bool) (in /home/lord-bryan/opt/lib/libnode.so.108)
==124538==    by 0x673CB24: node::NodeMainInstance::NodeMainInstance(node::SnapshotData const*, uv_loop_s*, node::MultiIsolatePlatform*, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&) (in /home/lord-bryan/opt/lib/libnode.so.108)
==124538==    by 0x66ABF48: node::Start(int, char**) (in /home/lord-bryan/opt/lib/libnode.so.108)
==124538==    by 0x5A42DB1: node_loader_impl_thread(void*) (node_loader_impl.cpp:4189)
==124538==    by 0x4842B1A: ??? (in /usr/lib/x86_64-linux-gnu/valgrind/vgpreload_helgrind-amd64-linux.so)
==124538==    by 0x4AA7608: start_thread (pthread_create.c:477)
==124538==    by 0x4BE3162: clone (clone.S:95)
==124538==  Block was alloc'd by thread #2
==124538== 
==124538== Possible data race during write of size 8 at 0x4ED4C40 by thread #7
==124538== Locks held: 1, at address 0x4EE2180
==124538==    at 0x729B6A2: v8::internal::StackGuard::RequestInterrupt(v8::internal::StackGuard::InterruptFlag) (in /home/lord-bryan/opt/lib/libnode.so.108)
==124538==    by 0x71F8CE7: non-virtual thunk to v8::internal::CancelableTask::Run() (in /home/lord-bryan/opt/lib/libnode.so.108)
==124538==    by 0x676F590: node::(anonymous namespace)::PlatformWorkerThread(void*) (in /home/lord-bryan/opt/lib/libnode.so.108)
==124538==    by 0x4842B1A: ??? (in /usr/lib/x86_64-linux-gnu/valgrind/vgpreload_helgrind-amd64-linux.so)
==124538==    by 0x4AA7608: start_thread (pthread_create.c:477)
==124538==    by 0x4BE3162: clone (clone.S:95)
==124538== 
==124538== This conflicts with a previous read of size 8 by thread #2
==124538== Locks held: 2, at addresses 0x4EC7338 0x4EE4A30
==124538==    at 0x6909273: Builtins_InterpreterEntryTrampoline (in /home/lord-bryan/opt/lib/libnode.so.108)
==124538==    by 0xE012831: ???
==124538==    by 0x690928E: Builtins_InterpreterEntryTrampoline (in /home/lord-bryan/opt/lib/libnode.so.108)
==124538==    by 0x690928E: Builtins_InterpreterEntryTrampoline (in /home/lord-bryan/opt/lib/libnode.so.108)
==124538==    by 0x690928E: Builtins_InterpreterEntryTrampoline (in /home/lord-bryan/opt/lib/libnode.so.108)
==124538==    by 0x690928E: Builtins_InterpreterEntryTrampoline (in /home/lord-bryan/opt/lib/libnode.so.108)
==124538==    by 0x690928E: Builtins_InterpreterEntryTrampoline (in /home/lord-bryan/opt/lib/libnode.so.108)
==124538==    by 0x690928E: Builtins_InterpreterEntryTrampoline (in /home/lord-bryan/opt/lib/libnode.so.108)
==124538==  Address 0x4ed4c40 is 32 bytes inside a block of size 60,536 alloc'd
==124538==    at 0x483CF03: operator new(unsigned long) (in /usr/lib/x86_64-linux-gnu/valgrind/vgpreload_helgrind-amd64-linux.so)
==124538==    by 0x73D75F9: v8::internal::IsolateAllocator::IsolateAllocator() (in /home/lord-bryan/opt/lib/libnode.so.108)
==124538==    by 0x7284CD6: v8::internal::Isolate::Allocate(bool) (in /home/lord-bryan/opt/lib/libnode.so.108)
==124538==    by 0x673CB24: node::NodeMainInstance::NodeMainInstance(node::SnapshotData const*, uv_loop_s*, node::MultiIsolatePlatform*, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&) (in /home/lord-bryan/opt/lib/libnode.so.108)
==124538==    by 0x66ABF48: node::Start(int, char**) (in /home/lord-bryan/opt/lib/libnode.so.108)
==124538==    by 0x5A42DB1: node_loader_impl_thread(void*) (node_loader_impl.cpp:4189)
==124538==    by 0x4842B1A: ??? (in /usr/lib/x86_64-linux-gnu/valgrind/vgpreload_helgrind-amd64-linux.so)
==124538==    by 0x4AA7608: start_thread (pthread_create.c:477)
==124538==    by 0x4BE3162: clone (clone.S:95)
==124538==  Block was alloc'd by thread #2
==124538== 
^C==124538== 
==124538== Process terminating with default action of signal 2 (SIGINT)
==124538==    at 0x4AAE376: futex_wait_cancelable (futex-internal.h:183)
==124538==    by 0x4AAE376: __pthread_cond_wait_common (pthread_cond_wait.c:508)
==124538==    by 0x4AAE376: pthread_cond_wait@@GLIBC_2.3.2 (pthread_cond_wait.c:638)
==124538==    by 0x4842CB3: ??? (in /usr/lib/x86_64-linux-gnu/valgrind/vgpreload_helgrind-amd64-linux.so)
==124538==    by 0x6C51F0C: uv_cond_wait (thread.c:780)
==124538==    by 0x5A51ED5: node_loader_impl_try_destroy (node_loader_impl.cpp:5225)
==124538==    by 0x5A51ED5: node_loader_impl_try_destroy(loader_impl_node_type*) (node_loader_impl.cpp:5182)
==124538==    by 0x5A51F92: node_loader_impl_destroy (node_loader_impl.cpp:5248)
==124538==    by 0x487754F: loader_impl_destroy (loader_impl.c:1478)
==124538==    by 0x486CCC7: plugin_destroy_delayed (plugin_impl.c:110)
==124538==    by 0x4875833: loader_unload_children (loader.c:696)
==124538==    by 0x48758D6: loader_destroy (loader.c:742)
==124538==    by 0x487B6E0: metacall_destroy (metacall.c:2213)
==124538==    by 0x10C20F: metacallcli::application::~application() (application.cpp:197)
==124538==    by 0x10BEF0: main (main.cpp:35)
==124538== ----------------------------------------------------------------
==124538== 
==124538== Thread #2: Exiting thread still holds 2 locks
==124538==    at 0x4BE349E: epoll_wait (epoll_wait.c:30)
==124538==    by 0x6C55EEC: uv__io_poll (epoll.c:236)
==124538==    by 0x6C43328: uv_run (core.c:389)
==124538==    by 0x5A51865: node_loader_impl_destroy_safe_impl (node_loader_impl.cpp:5148)
==124538==    by 0x5A51BCD: node_loader_impl_destroy_safe(napi_env__*, loader_impl_async_destroy_safe_type*) [clone .isra.0] (node_loader_impl.cpp:4894)
==124538==    by 0x5A51DCE: node_loader_impl_async_destroy_safe(napi_env__*, napi_callback_info__*) (node_loader_impl.cpp:4987)
==124538==    by 0x6692315: v8impl::(anonymous namespace)::FunctionCallbackWrapper::Invoke(v8::FunctionCallbackInfo<v8::Value> const&) (in /home/lord-bryan/opt/lib/libnode.so.108)
==124538==    by 0x717A5CD: v8::internal::FunctionCallbackArguments::Call(v8::internal::CallHandlerInfo) (in /home/lord-bryan/opt/lib/libnode.so.108)
==124538==    by 0x717AF74: v8::internal::MaybeHandle<v8::internal::Object> v8::internal::(anonymous namespace)::HandleApiCallHelper<false>(v8::internal::Isolate*, v8::internal::Handle<v8::internal::HeapObject>, v8::internal::Handle<v8::internal::HeapObject>, v8::internal::Handle<v8::internal::FunctionTemplateInfo>, v8::internal::Handle<v8::internal::Object>, v8::internal::BuiltinArguments) (in /home/lord-bryan/opt/lib/libnode.so.108)
==124538==    by 0x717B7DD: v8::internal::Builtins::InvokeApiFunction(v8::internal::Isolate*, bool, v8::internal::Handle<v8::internal::HeapObject>, v8::internal::Handle<v8::internal::Object>, int, v8::internal::Handle<v8::internal::Object>*, v8::internal::Handle<v8::internal::HeapObject>) (in /home/lord-bryan/opt/lib/libnode.so.108)
==124538==    by 0x726AB59: v8::internal::(anonymous namespace)::Invoke(v8::internal::Isolate*, v8::internal::(anonymous namespace)::InvokeParams const&) (in /home/lord-bryan/opt/lib/libnode.so.108)
==124538==    by 0x726B266: v8::internal::Execution::Call(v8::internal::Isolate*, v8::internal::Handle<v8::internal::Object>, v8::internal::Handle<v8::internal::Object>, int, v8::internal::Handle<v8::internal::Object>*) (in /home/lord-bryan/opt/lib/libnode.so.108)
==124538== 
==124538== 
==124538== Use --history-level=approx or =none to gain increased speed, at
==124538== the cost of reduced accuracy of conflicting-access information
==124538== For lists of detected and suppressed errors, rerun with: -s
==124538== ERROR SUMMARY: 879 errors from 44 contexts (suppressed: 2328 from 310)
rxbryan commented 2 years ago

and the output from metacall-cli-core-await-test

==124885== Thread #2: Exiting thread still holds 2 locks
==124885==    at 0x4AAE376: futex_wait_cancelable (futex-internal.h:183)
==124885==    by 0x4AAE376: __pthread_cond_wait_common (pthread_cond_wait.c:508)
==124885==    by 0x4AAE376: pthread_cond_wait@@GLIBC_2.3.2 (pthread_cond_wait.c:638)
==124885==    by 0x4842CB3: ??? (in /usr/lib/x86_64-linux-gnu/valgrind/vgpreload_helgrind-amd64-linux.so)
==124885==    by 0x4972E2F: std::condition_variable::wait(std::unique_lock<std::mutex>&) (in /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.28)
==124885==    by 0x16390665: await(unsigned long, void**, void*) (cli_core_plugin.cpp:448)
==124885==    by 0x48795AD: metacallfv_s (metacall.c:1025)
==124885==    by 0x5A42332: node_loader_impl_napi_to_value_callback(napi_env__*, napi_callback_info__*) (node_loader_impl.cpp:1061)
==124885==    by 0x6684315: v8impl::(anonymous namespace)::FunctionCallbackWrapper::Invoke(v8::FunctionCallbackInfo<v8::Value> const&) (in /home/lord-bryan/opt/lib/libnode.so.108)
==124885==    by 0x716C5CD: v8::internal::FunctionCallbackArguments::Call(v8::internal::CallHandlerInfo) (in /home/lord-bryan/opt/lib/libnode.so.108)
==124885==    by 0x716CF74: v8::internal::MaybeHandle<v8::internal::Object> v8::internal::(anonymous namespace)::HandleApiCallHelper<false>(v8::internal::Isolate*, v8::internal::Handle<v8::internal::HeapObject>, v8::internal::Handle<v8::internal::HeapObject>, v8::internal::Handle<v8::internal::FunctionTemplateInfo>, v8::internal::Handle<v8::internal::Object>, v8::internal::BuiltinArguments) (in /home/lord-bryan/opt/lib/libnode.so.108)
==124885==    by 0x716D4AE: v8::internal::Builtin_HandleApiCall(int, unsigned long*, v8::internal::Isolate*) (in /home/lord-bryan/opt/lib/libnode.so.108)
==124885==    by 0x6978F38: Builtins_CEntry_Return1_DontSaveFPRegs_ArgvOnStack_BuiltinExit (in /home/lord-bryan/opt/lib/libnode.so.108)
==124885==    by 0x68FB28E: Builtins_InterpreterEntryTrampoline (in /home/lord-bryan/opt/lib/libnode.so.108)
==124885== 
==124885== 
==124885== Use --history-level=approx or =none to gain increased speed, at
==124885== the cost of reduced accuracy of conflicting-access information
==124885== For lists of detected and suppressed errors, rerun with: -s
==124885== ERROR SUMMARY: 35 errors from 22 contexts (suppressed: 5492 from 306)
viferga commented 1 year ago

I haven't been able to reproduce this. Respect to the bug of await, it is due to mixing sync and async calls in the same invokation. My recommendation is clear, avoid executing await from JS in the CLI code, better to implement the basic commands in C/C++.

Basically, the refactor of the CLI has not been done, but the idea is the following, the REPL should do this: 1) Start (C++). 2) Wait for user input (C++ or JS). 3) Parse user input (JS). 4) Return control to C++ with all the parsed information and execute the function of the REPL that has been parsed (C++). 5) Print result and repeat (C++).

In the 4th phase, all the commands related to call, await, load... should be implemented in pure C/C++ (as they are now), so we avoid the deadlock problem with NodeJS. This design solves all problems and makes fully extensible the CLI. Extra extensions (REPL commands or CLI command arguments) can be implemented in pure NodeJS (or any other language if required).