M pkg/dart2wasm/lib/functions.dart
M pkg/dart2wasm/lib/globals.dart
M pkg/dart2wasm/lib/types.dart
M pkg/dart2wasm/lib/util.dart
A pkg/dart2wasm/test/ir_tests/pure_function.dart
A pkg/dart2wasm/test/ir_tests/pure_function.wat
M pkg/wasm_builder/lib/src/builder/function.dart
M pkg/wasm_builder/lib/src/ir/function.dart
M pkg/wasm_builder/lib/src/ir/module.dart
M pkg/wasm_builder/lib/src/serialize/sections.dart
M sdk/lib/_internal/wasm/lib/js_string.dart
Log Message:
-----------
[dart2wasm] Allow marking functions as pure functions
If a function doesn't have an effect we can now mark it via
`@pragma('wasm:pure-function')`. We'll then emit this as metadata
in the `binaryen.remove.if.unused` custom section.
This allows `wasm-opt` to remove calls to such functions if the result
of the call isn't used.
Log Message:
-----------
[co19] Roll co19 to 506c0dea4875bc96004c28776fbd283aa5c92f7d
2026-02-20 sgrek...@gmail.com dart-lang/co19#3182. Add tests for override inference (dart-lang/co19#3627)
2026-02-20 sgrek...@gmail.com dart-lang/co19#3182. Update constructors test according to the new rules for `_` (dart-lang/co19#3624)
2026-02-20 sgrek...@gmail.com dart-lang/co19#3182. Update functions test according to the new rules for `_` (dart-lang/co19#3625)
2026-02-20 sgrek...@gmail.com dart-lang/co19#3182.Add tests for external js interop functions (dart-lang/co19#3620)
2026-02-20 sgrek...@gmail.com dart-lang/co19#3182. Add tests for augmentation of primary constructors. Part 3. (dart-lang/co19#3615)
2026-02-20 sgrek...@gmail.com dart-lang/co19#3315. Add tests for wildcarded parameters (dart-lang/co19#3623)
2026-02-20 sgrek...@gmail.com dart-lang/co19#3182.Add tests for external js interop classes, constructors and extensions (dart-lang/co19#3622)
2026-02-17 sgrek...@gmail.com Fixes dart-lang/co19#3618. Use `@dart=3.11` for old test for private parameter name (dart-lang/co19#3619)
Changed paths:
M .github/workflows/no-response.yml
M .github/workflows/scorecards-analysis.yml
M .github/workflows/third-party-deps-scan.yml
M DEPS
M pkg/dart2wasm/lib/functions.dart
M pkg/dart2wasm/lib/globals.dart
M pkg/dart2wasm/lib/types.dart
M pkg/dart2wasm/lib/util.dart
A pkg/dart2wasm/test/ir_tests/pure_function.dart
A pkg/dart2wasm/test/ir_tests/pure_function.wat
M pkg/test_runner/lib/bot_results.dart
M pkg/wasm_builder/lib/src/builder/function.dart
M pkg/wasm_builder/lib/src/ir/function.dart
M pkg/wasm_builder/lib/src/ir/module.dart
M pkg/wasm_builder/lib/src/serialize/sections.dart
M runtime/docs/infra/coredumps.md
M sdk/lib/_internal/wasm/lib/js_string.dart
M tools/VERSION
M tools/utils.py