Files
sdk/pkg/dart2wasm
Martin Kustermann b10062cbbf [dart2wasm] Synthesize null when calling JS functions without result, Remove inlining in js interop transformer
When we call out to JS and the function type is declared as `void` we
don't observe the result from JS. That means we can import the JS
function as a wasm function type without results.

We then synthesize a `null` value, in case a caller of the external JS
function uses/observes the `void` result value.

=> This CL does the same for `JS<void>(...)` calls.

We also remove the "inline" replacement optimization in the js interop
transformer. That makes all `JS<...>()` calls to be handled in a uniform
way.

=> Our backend's inliner should inline it iff beneficial for size.

Change-Id: I78032aae0dcdcaaf52701c628cea71af1de0d5e6
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/499880
Commit-Queue: Martin Kustermann <kustermann@google.com>
Reviewed-by: Srujan Gaddam <srujzs@google.com>
2026-05-05 06:55:07 -07:00
..
2026-03-19 01:25:57 -07:00
2022-02-17 09:26:23 +00:00