Commit Graph

66902 Commits

Author SHA1 Message Date
Nikolay Nikolov
be4fd4c012 * assert that any exported promising function is not synthetic 2023-11-08 23:33:56 +01:00
Nikolay Nikolov
aa94e9cd21 * eo_promising renamed eo_promising_first 2023-11-08 23:33:56 +01:00
Nikolay Nikolov
d55c7819cb + also allow declaring an external as 'suspending first' 2023-11-08 23:33:56 +01:00
Nikolay Nikolov
fc9d8c98d0 + support 'suspending last' externals as well 2023-11-08 23:33:55 +01:00
Nikolay Nikolov
8317cad7ee + comment for the po_wasm_suspending value 2023-11-08 23:33:55 +01:00
Nikolay Nikolov
8ac7551464 + comments for tsk_wasm_suspending and tsk_wasm_promising 2023-11-08 23:33:55 +01:00
Nikolay Nikolov
bce6147317 + added a basic JS promise test 2023-11-08 23:33:55 +01:00
Nikolay Nikolov
a9fb240110 * fixed generating wrappers for suspending functions that return something, other than double 2023-11-08 23:33:55 +01:00
Nikolay Nikolov
daaf617590 + initial implementation of WebAssembly promising exports 2023-11-08 23:33:55 +01:00
Nikolay Nikolov
74955b4e03 * fixed creating suspended wrappers for functions without parameters 2023-11-08 23:33:55 +01:00
Nikolay Nikolov
389de7c65c * fixed compilation with -Sew 2023-11-08 23:33:55 +01:00
Nikolay Nikolov
bd95252ae1 * since exporting webassembly globals doesn't yet work accross units, added a
workaround by using property getters and setters
2023-11-08 23:33:55 +01:00
Nikolay Nikolov
45ca2c6f88 + initial attempt (not fully working, yet) at implementing WebAssembly suspending externals 2023-11-08 23:33:55 +01:00
Nikolay Nikolov
1f286cf736 * ppudump compilation fixed 2023-11-08 23:33:55 +01:00
Nikolay Nikolov
4c70cfb9f9 + added parser support for the 'suspending' directive 2023-11-08 23:33:55 +01:00
Nikolay Nikolov
20b9e39ff5 + support externref and funcref WebAssembly globals in the internal object writer 2023-11-08 23:33:54 +01:00
Nikolay Nikolov
6c7b45a0bb + support WebAssembly reference types as WebAssembly globals 2023-11-08 23:33:54 +01:00
Nikolay Nikolov
a2393c0aeb * use tcallparanode.parasym to find the tparavarsym in twasmcallnode.pass_typecheck 2023-11-08 23:33:54 +01:00
Nikolay Nikolov
5ca1c45b2b * fixed crash in twasmcallnode.pass_typecheck when there is no procdefinition (for generic methods) 2023-11-08 23:33:54 +01:00
Nikolay Nikolov
daa7e1c190 * fixed another crash, introduced in 6ff566350c 2023-11-08 23:33:54 +01:00
Nikolay Nikolov
754e0de69e * fixed bug, introduced in 6ff566350c, due to
missing parenthesis
2023-11-08 23:33:54 +01:00
Nikolay Nikolov
4df862fce6 * disallow passing WebAssembly reference types as untyped out parameters as well 2023-11-08 23:33:54 +01:00
Nikolay Nikolov
6bc52b046c * disallow passing WebAssembly reference types as untyped var/constref/const parameters 2023-11-08 23:33:54 +01:00
Nikolay Nikolov
a35f6221fe * fixed program name in test 2023-11-08 23:33:54 +01:00
Nikolay Nikolov
773b36c21e * disallow WebAssembly reference types to be declared as var, constref or out parameters 2023-11-08 23:33:51 +01:00
Nikolay Nikolov
c04c513a5d + support nil comparison of WebAssembly reference types (externref and funcref) 2023-11-08 23:33:17 +01:00
Nikolay Nikolov
57e99cc094 + support using nil constants for setting values of WebAssembly reference types (funcref and externref) 2023-11-08 23:33:17 +01:00
Nikolay Nikolov
425f52d601 - removed redundant semicolon 2023-11-08 23:33:17 +01:00
Nikolay Nikolov
ded26eeacf + also test that pointers cannot be converted to externref implicitly 2023-11-08 23:33:16 +01:00
Nikolay Nikolov
3e9a29a46f * disallow conversion between regular pointers and WasmExternRef 2023-11-08 23:33:16 +01:00
Nikolay Nikolov
4c096f8389 * fixed test's program name 2023-11-08 23:33:16 +01:00
Nikolay Nikolov
d531ec05c9 + some basic tests for WebAssembly funcref types added 2023-11-08 23:33:16 +01:00
Nikolay Nikolov
457d0e598b + also check for assigned(left) after calling inherited in twasmaddrnode.pass_typecheck, to avoid another crash 2023-11-08 23:33:16 +01:00
Nikolay Nikolov
48edb0377e * check for codegenerror in twasmaddrnode.pass_typecheck and exit early, to avoid crashes 2023-11-08 23:33:16 +01:00
Nikolay Nikolov
e06dad148d + disallow taking the address of WebAssembly externref type 2023-11-08 23:33:08 +01:00
Nikolay Nikolov
fdd47f9f12 + simple test for WasmExternRef 2023-11-08 23:30:11 +01:00
Michaël Van Canneyt
6e171162fd * Correct filename extensions for qoi. Fixes issue #40314 2023-11-08 23:30:11 +01:00
marcoonthegit
da876d28b9 * move ifdefed part from tvitem* to tvitemex*, closes #40312 2023-11-08 23:30:11 +01:00
Pierre Muller
d1fc7faa83 Disable substitution by environment variables in message comment related functions 2023-11-08 23:30:10 +01:00
Pierre Muller
1fc338b555 Add new substitute_env_variables parameter for DefaultReplacements function (with default true value) 2023-11-08 23:30:10 +01:00
mattias
0556b9ae4c fcl-web: fixed compile 2023-11-08 23:30:10 +01:00
mattias
fc1d4212a4 fcl-web: made TFPCustomHTTPServer.CreateUpgradeHandlerList virtual 2023-11-08 23:30:10 +01:00
mattias
289561297a rtl: fixed indentation 2023-11-08 23:30:10 +01:00
Michaël Van Canneyt
453206b05e * Correct name 2023-11-08 23:30:10 +01:00
Michaël Van Canneyt
086da71533 * Add some methods for improved DUnit compatibility 2023-11-08 23:30:10 +01:00
Michaël Van Canneyt
6d1d040440 * Disable result, explicit list cmmand-line argument 2023-11-08 23:30:10 +01:00
Michaël Van Canneyt
bcc3387ddc * GetAttribute call 2023-11-08 23:30:10 +01:00
Michaël Van Canneyt
1829d35f37 * Add PProcedureSignature 2023-11-08 23:30:10 +01:00
Michaël Van Canneyt
4f9b2ecebd * Add TNoRefCountObject (delphi compatibility) 2023-11-08 23:30:10 +01:00
Nikolay Nikolov
1cfb35d1d6 + WebAssembly internal assembler support for the ref.is_null instruction 2023-11-08 23:30:10 +01:00