Skip to content

dart2wasm: Null check operator used on a null value at AstCodeGenerator._setupLocalParameters #60583

Open
@davidmigloz

Description

@davidmigloz

I am trying to compile a Flutter web app using the WASM target, but I am getting the following exception:

$ flutter build web --wasm --release

Target dart2wasm failed: ProcessException: Process exited abnormally with exit
code 255:
Unhandled exception:
Null check operator used on a null value
#0      AstCodeGenerator._setupLocalParameters.setupParamLocal
(package:dart2wasm/code_generator.dart:287)
...
Full stack trace
Target dart2wasm failed: ProcessException: Process exited abnormally with exit
code 255:
Unhandled exception:
Null check operator used on a null value
#0      AstCodeGenerator._setupLocalParameters.setupParamLocal
(package:dart2wasm/code_generator.dart:287)
#1      AstCodeGenerator._setupLocalParameters
(package:dart2wasm/code_generator.dart:358)
#2      AstCodeGenerator.setupParameters
(package:dart2wasm/code_generator.dart:387)
#3      AstCodeGenerator.setupParametersAndContexts
(package:dart2wasm/code_generator.dart:411)
#4      SynchronousProcedureCodeGenerator.generateInternal
(package:dart2wasm/code_generator.dart:3234)
#5      AstCodeGenerator.generate (package:dart2wasm/code_generator.dart:212)
#6      AstCompilationTask.run (package:dart2wasm/translator.dart:1454)
#7      Translator.translate (package:dart2wasm/translator.dart:414)
#8      compileToModule (package:dart2wasm/compile.dart:253)
<asynchronous suspension>
#9      generateWasm (package:dart2wasm/generate_wasm.dart:80)
<asynchronous suspension>
#10     main
(file:///Volumes/Work/s/w/ir/x/w/sdk/pkg/dart2wasm/bin/dart2wasm.dart:10)
<asynchronous suspension>
  Command: /Users/xxx/repos/flutter/bin/cache/dart-sdk/bin/dart compile
  wasm
  --packages=/Users/xxx/xxx/xxx/app/.dart_tool/package_config.json
  --extra-compiler-option=--platform=/Users/xxx/repos/flutter/bin/cache/
  flutter_web_sdk/kernel/dart2wasm_platform.dill -Ddart.vm.profile=false
  -Ddart.vm.product=true
  --extra-compiler-option=--delete-tostring-package-uri=dart:ui
  --extra-compiler-option=--delete-tostring-package-uri=package:flutter
  --extra-compiler-option=--import-shared-memory
  --extra-compiler-option=--shared-memory-max-pages=32768
  -DFLUTTER_WEB_USE_SKIA=false -DFLUTTER_WEB_USE_SKWASM=true
  -DFLUTTER_WEB_CANVASKIT_URL=https://www.gstatic.com/flutter-canvaskit/cf56914b
  326edb0ccb123ffdc60f00060bd513fa/
  --extra-compiler-option=--depfile=/Users/xxx/xxx/xxx/app/xxx
  /.dart_tool/flutter_build/d12e46422de5e2738ca11434eca92746/dart2wasm.d -O4
  --strip-wasm --no-source-maps -o
  /Users/xxx/xxx/xxx/app/xxx/.dart_tool/flutter_build/d12e4
  6422de5e2738ca11434eca92746/main.dart.wasm
  /Users/xxx/xxx/xxx/app/xxx/.dart_tool/flutter_build/d12e4
  6422de5e2738ca11434eca92746/main.dart
#0      RunResult.throwException (package:flutter_tools/src/base/process.dart:118:5)
#1      _DefaultProcessUtils.run (package:flutter_tools/src/base/process.dart:344:19)
<asynchronous suspension>
#2      Dart2WasmTarget.build (package:flutter_tools/src/build_system/targets/web.dart:346:5)
<asynchronous suspension>
#3      _BuildInstance._invokeInternal (package:flutter_tools/src/build_system/build_system.dart:876:9)
<asynchronous suspension>
#4      Future.wait.<anonymous closure> (dart:async/future.dart:528:21)
<asynchronous suspension>
#5      _BuildInstance.invokeTarget (package:flutter_tools/src/build_system/build_system.dart:814:32)
<asynchronous suspension>
#6      Future.wait.<anonymous closure> (dart:async/future.dart:528:21)
<asynchronous suspension>
#7      _BuildInstance.invokeTarget (package:flutter_tools/src/build_system/build_system.dart:814:32)
<asynchronous suspension>
#8      FlutterBuildSystem.build (package:flutter_tools/src/build_system/build_system.dart:637:16)
<asynchronous suspension>
#9      WebBuilder.buildWeb (package:flutter_tools/src/web/compile.dart:93:34)
<asynchronous suspension>
#10     BuildWebCommand.runCommand (package:flutter_tools/src/commands/build_web.dart:253:5)
<asynchronous suspension>
#11     FlutterCommand.run.<anonymous closure> (package:flutter_tools/src/runner/flutter_command.dart:1558:27)
<asynchronous suspension>
#12     AppContext.run.<anonymous closure> (package:flutter_tools/src/base/context.dart:154:19)
<asynchronous suspension>
#13     CommandRunner.runCommand (package:args/command_runner.dart:212:13)
<asynchronous suspension>
#14     FlutterCommandRunner.runCommand.<anonymous closure> (package:flutter_tools/src/runner/flutter_command_runner.dart:496:9)
<asynchronous suspension>
#15     AppContext.run.<anonymous closure> (package:flutter_tools/src/base/context.dart:154:19)
<asynchronous suspension>
#16     FlutterCommandRunner.runCommand (package:flutter_tools/src/runner/flutter_command_runner.dart:431:5)
<asynchronous suspension>
#17     run.<anonymous closure>.<anonymous closure> (package:flutter_tools/runner.dart:98:11)
<asynchronous suspension>
#18     AppContext.run.<anonymous closure> (package:flutter_tools/src/base/context.dart:154:19)
<asynchronous suspension>
#19     main (package:flutter_tools/executable.dart:99:3)
<asynchronous suspension>

Compiling lib/main.dart for the Web...                             50.6s
Error: Failed to compile application for the Web.
Dart Info
#### General info

- Dart 3.7.2 (stable) (Tue Mar 11 04:27:50 2025 -0700) on "macos_arm64"
- on macos / Version 15.4.1 (Build 24E263)
- locale is en-US

#### Project info

- sdk constraint: '3.7.2'

#### Process info

|  Memory |  CPU | Elapsed time | Command line                                                                               |
| ------: | ---: | -----------: | ------------------------------------------------------------------------------------------ |
|   26 MB | 0.0% |     01:21:24 | dart devtools --machine --dtd-uri=ws:<path>/umfSw9s6aN0=                                   |
| 1528 MB | 0.0% |     01:21:24 | dart language-server --client-id=IntelliJ-IDEA --client-version=IU-243.26053.27 --protocol=analyzer |
|   29 MB | 0.0% |     01:21:24 | dart tooling-daemon --machine                                                              |
|   87 MB | 0.0% |     01:21:06 | flutter_tools.snapshot daemon                                                              |

Unfortunately, it is not an open source app and I haven't managed to create a minimal reproducible example. Please let me know if you need any additional details.

Metadata

Metadata

Assignees

No one assigned

    Labels

    area-dart2wasmIssues for the dart2wasm compiler.type-bugIncorrect behavior (everything from a crash to more subtle misbehavior)

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions