Skip to content

[dev_compiler] Web: Unsupported operation: Undetermined nullability #52726

Closed
@llfbandit

Description

@llfbandit

Context: Flutter web plugin implementation interoperating with JS.

This exception is only thrown in debug mode, release mode is OK.

Package issue reference

  • Dart SDK Version 3.0.5 shipped with Flutter 3.10.5
Here's the stack trace
Unhandled exception:
Unsupported operation: Undetermined nullability. Encountered while compiling file:///......./Pub/Cache/hosted/pub.dev/typings-0.0.1+1/lib/src/d/core/lib_es2015_collection_d.dart, which contains the type: InterfaceType(Object%).
lib_es2015_collection_d.dart:1
#0      ProgramCompiler._typeCompilationError (package:dev_compiler/src/kernel/compiler.dart:3355:7)
#1      ProgramCompiler._undeterminedNullabilityError (package:dev_compiler/src/kernel/compiler.dart:3352:7)
#2      ProgramCompiler._emitInterfaceType (package:dev_compiler/src/kernel/compiler.dart:3277:7)
#3      ProgramCompiler.visitInterfaceType (package:dev_compiler/src/kernel/compiler.dart:3191:7)
#4      InterfaceType.accept (package:kernel/ast.dart:12100:42)
#5      MappedListIterable.elementAt (dart:_internal/iterable.dart:415:31)
#6      MappedListIterable.elementAt (dart:_internal/iterable.dart:415:40)
#7      ListIterator.moveNext (dart:_internal/iterable.dart:344:26)
#8      InstantiatorGeneratorVisitor.splayNodes (package:dev_compiler/src/js_ast/template.dart:224:23)
#9      InstantiatorGeneratorVisitor.handleCallOrNew.<anonymous closure> (package:dev_compiler/src/js_ast/template.dart:604:22)
#10     Template.instantiate (package:dev_compiler/src/js_ast/template.dart:118:26)
#11     JsBuilder.call (package:dev_compiler/src/js_ast/builder.dart:212:21)
#12     ProgramCompiler._emitGenericClassType (package:dev_compiler/src/kernel/compiler.dart:3393:15)
#13     ProgramCompiler._emitInterfaceType (package:dev_compiler/src/kernel/compiler.dart:3256:17)
#14     ProgramCompiler.visitInterfaceType (package:dev_compiler/src/kernel/compiler.dart:3191:7)

#15     InterfaceType.accept (package:kernel/ast.dart:12100:42)
#16     ProgramCompiler._emitType (package:dev_compiler/src/kernel/compiler.dart:3076:60)
#17     ProgramCompiler._emitArgumentList (package:dev_compiler/src/kernel/compiler.dart:6223:41)
#18     ProgramCompiler._emitMethodCall (package:dev_compiler/src/kernel/compiler.dart:5326:16)
#19     ProgramCompiler.visitInstanceInvocation (package:dev_compiler/src/kernel/compiler.dart:5240:12)
#20     InstanceInvocation.accept (package:kernel/ast.dart:6128:44)
#21     ProgramCompiler._visitExpression (package:dev_compiler/src/kernel/compiler.dart:4232:20)
#22     ProgramCompiler._emitMethodCall (package:dev_compiler/src/kernel/compiler.dart:5325:22)
#23     ProgramCompiler.visitInstanceInvocation (package:dev_compiler/src/kernel/compiler.dart:5240:12)
#24     InstanceInvocation.accept (package:kernel/ast.dart:6128:44)
#25     ProgramCompiler._visitExpression (package:dev_compiler/src/kernel/compiler.dart:4232:20)
#26     ProgramCompiler.visitConditionalExpression (package:dev_compiler/src/kernel/compiler.dart:6598:21)
#27     ConditionalExpression.accept (package:kernel/ast.dart:7420:44)
#28     ProgramCompiler._visitExpression (package:dev_compiler/src/kernel/compiler.dart:4232:20)
#29     ProgramCompiler.visitLet (package:dev_compiler/src/kernel/compiler.dart:6996:16)
#30     Let.accept (package:kernel/ast.dart:9277:44)
#31     ProgramCompiler._visitExpression (package:dev_compiler/src/kernel/compiler.dart:4232:20)
#32     ProgramCompiler.visitLet (package:dev_compiler/src/kernel/compiler.dart:6995:16)
#33     Let.accept (package:kernel/ast.dart:9277:44)
#34     ProgramCompiler._visitExpression (package:dev_compiler/src/kernel/compiler.dart:4232:20)
#35     MappedListIterable.elementAt (dart:_internal/iterable.dart:415:31)
#36     ListIterator.moveNext (dart:_internal/iterable.dart:344:26)

#37     new _GrowableList._ofEfficientLengthIterable (dart:core-patch/growable_array.dart:189:27)
#38     new _GrowableList.of (dart:core-patch/growable_array.dart:150:28)
#39     new List.of (dart:core-patch/array_patch.dart:47:28)
#40     ListIterable.toList (dart:_internal/iterable.dart:214:7)
#41     ProgramCompiler._visitExpressionList (package:dev_compiler/src/kernel/compiler.dart:4195:40)
#42     ProgramCompiler.visitListLiteral (package:dev_compiler/src/kernel/compiler.dart:6833:20)
#43     ListLiteral.accept (package:kernel/ast.dart:8700:44)
#44     ProgramCompiler._visitExpression (package:dev_compiler/src/kernel/compiler.dart:4232:20)
#45     ProgramCompiler._emitArgumentList (package:dev_compiler/src/kernel/compiler.dart:6232:11)

#46     ProgramCompiler.visitStaticInvocation (package:dev_compiler/src/kernel/compiler.dart:6146:16)
#47     StaticInvocation.accept (package:kernel/ast.dart:7029:44)
#48     ProgramCompiler._visitExpression (package:dev_compiler/src/kernel/compiler.dart:4232:20)
#49     ProgramCompiler.visitReturnStatement (package:dev_compiler/src/kernel/compiler.dart:4794:45)
#50     ReturnStatement.accept (package:kernel/ast.dart:10786:43)
#51     ProgramCompiler._visitStatement (package:dev_compiler/src/kernel/compiler.dart:4141:20)

#52     ProgramCompiler._emitFunctionScopedBody (package:dev_compiler/src/kernel/compiler.dart:4174:18)
#53     ProgramCompiler._emitSyncFunctionBody.<anonymous closure> (package:dev_compiler/src/kernel/compiler.dart:3909:17)
#54     ProgramCompiler._withLetScope (package:dev_compiler/src/kernel/compiler.dart:2593:25)

#55     ProgramCompiler._withCurrentFunction (package:dev_compiler/src/kernel/compiler.dart:3943:18)
#56     ProgramCompiler._emitSyncFunctionBody (package:dev_compiler/src/kernel/compiler.dart:3905:17)

#57     ProgramCompiler._emitFactoryConstructor (package:dev_compiler/src/kernel/compiler.dart:2310:18)
#58     ProgramCompiler._emitJSInteropClassNonExternalMembers (package:dev_compiler/src/kernel/compiler.dart:919:23)

#59     ProgramCompiler._emitClass (package:dev_compiler/src/kernel/compiler.dart:734:31)
#60     List.forEach (dart:core-patch/growable_array.dart:416:8)
#61     ProgramCompiler._emitLibrary (package:dev_compiler/src/kernel/compiler.dart:670:23)
#62     List.forEach (dart:core-patch/growable_array.dart:416:8)

#63     ProgramCompiler.emitModule (package:dev_compiler/src/kernel/compiler.dart:479:15)
#64     IncrementalJavaScriptBundler.compile (package:frontend_server/src/javascript_bundle.dart:217:33)
#65     FrontendCompiler.writeJavaScriptBundle (package:frontend_server/frontend_server.dart:778:46)
<asynchronous suspension>
#66     FrontendCompiler.compile (package:frontend_server/frontend_server.dart:641:9)
<asynchronous suspension>

#67     listenAndCompile.<anonymous closure> (package:frontend_server/frontend_server.dart:1308:11)
<asynchronous suspension>

the Dart compiler exited unexpectedly.
Failed to compile application.

Metadata

Metadata

Labels

area-web-jsIssues related to JavaScript support for Dart Web, including DDC, dart2js, and JS interop.cfe-encodingsEncoding related CFE issues.legacy-area-front-endLegacy: Use area-dart-model instead.web-dev-compiler

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions