flutter / flutter

Flutter makes it easy and fast to build beautiful apps for mobile and beyond
https://flutter.dev
BSD 3-Clause "New" or "Revised" License
162.18k stars 26.63k forks source link

Crash when compiling a project #147412

Closed Decodeuprefo closed 1 week ago

Decodeuprefo commented 2 weeks ago

Steps to reproduce

Running the project in any device

Expected results

Project should run in device

Actual results

Getting following error:

Unhandled exception:
Crash when compiling:
Null check operator used on a null value

#0      CfeEnumOperations.getEnumElementValue (package:front_end/src/fasta/kernel/exhaustiveness.dart:395)
#1      EnumInfo._createEnumElements (package:_fe_analyzer_shared/src/exhaustiveness/types/enum.dart:60)
#2      EnumInfo.enumElements (package:_fe_analyzer_shared/src/exhaustiveness/types/enum.dart:47)
#3      EnumStaticType._createEnumElements (package:_fe_analyzer_shared/src/exhaustiveness/types/enum.dart:97)
#4      EnumStaticType.enumElements (package:_fe_analyzer_shared/src/exhaustiveness/types/enum.dart:92)
#5      EnumStaticType.getSubtypes (package:_fe_analyzer_shared/src/exhaustiveness/types/enum.dart:90)
#6      _Checker._unmatched (package:_fe_analyzer_shared/src/exhaustiveness/exhaustive.dart:131)
#7      reportErrors (package:_fe_analyzer_shared/src/exhaustiveness/exhaustive.dart:38)
#8      ConstantsTransformer._checkExhaustiveness (package:front_end/src/fasta/kernel/constant_evaluator.dart:1569)
#9      ConstantsTransformer.visitSwitchExpression (package:front_end/src/fasta/kernel/constant_evaluator.dart:2182)
#10     SwitchExpression.accept1 (package:kernel/src/ast/patterns.dart:1981)
#11     RemovingTransformer.transformOrRemove (package:kernel/visitor.dart:1919)
#12     RemovingTransformer.transformOrRemoveExpression (package:kernel/visitor.dart:1892)
#13     ReturnStatement.transformOrRemoveChildren (package:kernel/ast.dart:10181)
#14     RemovingTransformer.defaultTreeNode (package:kernel/visitor.dart:2166)
#15     TreeVisitor1Default.defaultExpression (package:kernel/visitor.dart:739)
#16     StatementVisitor1DefaultMixin.visitReturnStatement (package:kernel/visitor.dart:2589)
#17     ReturnStatement.accept1 (package:kernel/ast.dart:10163)
#18     RemovingTransformer.transformOrRemove (package:kernel/visitor.dart:1919)
#19     ConstantsTransformer.visitBlock (package:front_end/src/fasta/kernel/constant_evaluator.dart:827)
#20     Block.accept1 (package:kernel/ast.dart:9198)
#21     RemovingTransformer.transform (package:kernel/visitor.dart:1883)
#22     ConstantsTransformer.visitFunctionNode (package:front_end/src/fasta/kernel/constant_evaluator.dart:650)
#23     FunctionNode.accept1 (package:kernel/ast.dart:3890)
#24     RemovingTransformer.transform (package:kernel/visitor.dart:1883)
#25     ConstantsTransformer.visitProcedure.<anonymous closure> (package:front_end/src/fasta/kernel/constant_evaluator.dart:561)
#26     ConstantEvaluator.withNewEnvironment (package:front_end/src/fasta/kernel/constant_evaluator.dart:5484)
#27     ConstantsTransformer.visitProcedure (package:front_end/src/fasta/kernel/constant_evaluator.dart:559)
#28     Procedure.accept1 (package:kernel/ast.dart:3246)
#29     RemovingTransformer.transformOrRemove (package:kernel/visitor.dart:1919)
#30     RemovingTransformer.transformList (package:kernel/visitor.dart:2143)
#31     RemovingTransformer.transformProcedureList (package:kernel/visitor.dart:2035)
#32     ConstantsTransformer.visitClass.<anonymous closure> (package:front_end/src/fasta/kernel/constant_evaluator.dart:514)
#33     ConstantEvaluator.withNewEnvironment (package:front_end/src/fasta/kernel/constant_evaluator.dart:5484)
#34     ConstantsTransformer.visitClass (package:front_end/src/fasta/kernel/constant_evaluator.dart:509)
#35     Class.accept1 (package:kernel/ast.dart:1464)
#36     RemovingTransformer.transformOrRemove (package:kernel/visitor.dart:1919)
#37     RemovingTransformer.transformList (package:kernel/visitor.dart:2143)
#38     RemovingTransformer.transformClassList (package:kernel/visitor.dart:1998)
#39     ConstantsTransformer.convertLibrary (package:front_end/src/fasta/kernel/constant_evaluator.dart:461)
#40     transformLibraries (package:front_end/src/fasta/kernel/constant_evaluator.dart:113)
#41     KernelTarget.runBuildTransformations (package:front_end/src/fasta/kernel/kernel_target.dart:1533)
#42     KernelTarget.buildComponent.<anonymous closure> (package:front_end/src/fasta/kernel/kernel_target.dart:629)
<asynchronous suspension>
#43     withCrashReporting (package:front_end/src/fasta/crash.dart:133)
<asynchronous suspension>
#44     KernelTarget.buildComponent (package:front_end/src/fasta/kernel/kernel_target.dart:579)
<asynchronous suspension>
#45     IncrementalCompiler.computeDelta.<anonymous closure> (package:front_end/src/fasta/incremental_compiler.dart:371)
<asynchronous suspension>
#46     CompilerContext.clear (package:front_end/src/fasta/compiler_context.dart:139)
<asynchronous suspension>
#47     IncrementalCompiler.compile (package:vm/incremental_compiler.dart:77)
<asynchronous suspension>
#48     FrontendCompiler.compile (package:frontend_server/frontend_server.dart:610)
<asynchronous suspension>
#49     listenAndCompile.<anonymous closure> (package:frontend_server/frontend_server.dart:1303)
<asynchronous suspension>
the Dart compiler exited unexpectedly.
the Dart compiler exited unexpectedly.

Code sample

It is an exiting project, which used to work properly, But after few days it start giving this error.

Screenshots or Video

No response

Logs

No response

Flutter Doctor output

Doctor output ```console [✓] Flutter (Channel stable, 3.19.6, on macOS 14.4.1 23E224 darwin-x64, locale en-IN) • Flutter version 3.19.6 on channel stable at /Users/decodeuptechnologies/Desktop/flutter • Upstream repository https://github.com/flutter/flutter.git • Framework revision 54e66469a9 (9 days ago), 2024-04-17 13:08:03 -0700 • Engine revision c4cd48e186 • Dart version 3.3.4 • DevTools version 2.31.1 [✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0) • Android SDK at /Users/decodeuptechnologies/Library/Android/sdk • Platform android-34, build-tools 34.0.0 • Java binary at: /Applications/Android Studio.app/Contents/jbr/Contents/Home/bin/java • Java version OpenJDK Runtime Environment (build 17.0.9+0-17.0.9b1087.7-11185874) • All Android licenses accepted. [✓] Xcode - develop for iOS and macOS (Xcode 15.3) • Xcode at /Applications/Xcode.app/Contents/Developer • Build 15E204a • CocoaPods version 1.13.0 [✓] Chrome - develop for the web • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome [✓] Android Studio (version 2023.2) • Android Studio at /Applications/Android Studio.app/Contents • Flutter plugin can be installed from: 🔨 https://plugins.jetbrains.com/plugin/9212-flutter • Dart plugin can be installed from: 🔨 https://plugins.jetbrains.com/plugin/6351-dart • Java version OpenJDK Runtime Environment (build 17.0.9+0-17.0.9b1087.7-11185874) [✓] VS Code (version 1.88.1) • VS Code at /Applications/Visual Studio Code.app/Contents • Flutter extension version 3.86.0 [✓] Connected device (3 available) • iPhone 15 Pro (mobile) • 508C44DB-9536-447E-B170-68DC0C6DB973 • ios • com.apple.CoreSimulator.SimRuntime.iOS-17-4 (simulator) • macOS (desktop) • macos • darwin-x64 • macOS 14.4.1 23E224 darwin-x64 • Chrome (web) • chrome • web-javascript • Google Chrome 124.0.6367.91 [✓] Network resources • All expected network resources are available. ```
alexmarkov commented 2 weeks ago

Looks like a CFE crash. /cc @johnniwinther

alistair-riskmemo commented 2 weeks ago

Hi there, I'm getting the same after running flutter pub upgrade.

huycozy commented 2 weeks ago

Hi @Decodeuprefo and @alistair-riskmemo, I see there was a similar issue at Dart SDK repository https://github.com/dart-lang/sdk/issues/54267 which has been fixed. I'm unsure if it's been landed on Flutter stable 3.19.6 with Dart 3.3.4 yet or maybe this is a regression. So could you switch to the latest Flutter master channel and retry?

Decodeuprefo commented 2 weeks ago

Getting same error:

Unhandled exception: Crash when compiling: Null check operator used on a null value

0 CfeEnumOperations.getEnumElementValue (package:front_end/src/fasta/kernel/exhaustiveness.dart:395)

1 EnumInfo._createEnumElements (package:_fe_analyzer_shared/src/exhaustiveness/types/enum.dart:60)

2 EnumInfo.enumElements (package:_fe_analyzer_shared/src/exhaustiveness/types/enum.dart:47)

3 EnumStaticType._createEnumElements (package:_fe_analyzer_shared/src/exhaustiveness/types/enum.dart:97)

4 EnumStaticType.enumElements (package:_fe_analyzer_shared/src/exhaustiveness/types/enum.dart:92)

5 EnumStaticType.getSubtypes (package:_fe_analyzer_shared/src/exhaustiveness/types/enum.dart:90)

6 _Checker._unmatched (package:_fe_analyzer_shared/src/exhaustiveness/exhaustive.dart:131)

7 reportErrors (package:_fe_analyzer_shared/src/exhaustiveness/exhaustive.dart:38)

8 ConstantsTransformer._checkExhaustiveness (package:front_end/src/fasta/kernel/constant_evaluator.dart:1569)

9 ConstantsTransformer.visitSwitchExpression (package:front_end/src/fasta/kernel/constant_evaluator.dart:2182)

10 SwitchExpression.accept1 (package:kernel/src/ast/patterns.dart:1981)

11 RemovingTransformer.transformOrRemove (package:kernel/visitor.dart:1919)

12 RemovingTransformer.transformOrRemoveExpression (package:kernel/visitor.dart:1892)

13 ReturnStatement.transformOrRemoveChildren (package:kernel/ast.dart:10181)

14 RemovingTransformer.defaultTreeNode (package:kernel/visitor.dart:2166)

15 TreeVisitor1Default.defaultExpression (package:kernel/visitor.dart:739)

16 StatementVisitor1DefaultMixin.visitReturnStatement (package:kernel/visitor.dart:2589)

17 ReturnStatement.accept1 (package:kernel/ast.dart:10163)

18 RemovingTransformer.transformOrRemove (package:kernel/visitor.dart:1919)

19 ConstantsTransformer.visitBlock (package:front_end/src/fasta/kernel/constant_evaluator.dart:827)

20 Block.accept1 (package:kernel/ast.dart:9198)

21 RemovingTransformer.transform (package:kernel/visitor.dart:1883)

22 ConstantsTransformer.visitFunctionNode (package:front_end/src/fasta/kernel/constant_evaluator.dart:650)

23 FunctionNode.accept1 (package:kernel/ast.dart:3890)

24 RemovingTransformer.transform (package:kernel/visitor.dart:1883)

25 ConstantsTransformer.visitProcedure. (package:front_end/src/fasta/kernel/constant_evaluator.dart:561)

26 ConstantEvaluator.withNewEnvironment (package:front_end/src/fasta/kernel/constant_evaluator.dart:5484)

27 ConstantsTransformer.visitProcedure (package:front_end/src/fasta/kernel/constant_evaluator.dart:559)

28 Procedure.accept1 (package:kernel/ast.dart:3246)

29 RemovingTransformer.transformOrRemove (package:kernel/visitor.dart:1919)

30 RemovingTransformer.transformList (package:kernel/visitor.dart:2143)

31 RemovingTransformer.transformProcedureList (package:kernel/visitor.dart:2035)

32 ConstantsTransformer.visitClass. (package:front_end/src/fasta/kernel/constant_evaluator.dart:514)

33 ConstantEvaluator.withNewEnvironment (package:front_end/src/fasta/kernel/constant_evaluator.dart:5484)

34 ConstantsTransformer.visitClass (package:front_end/src/fasta/kernel/constant_evaluator.dart:509)

35 Class.accept1 (package:kernel/ast.dart:1464)

36 RemovingTransformer.transformOrRemove (package:kernel/visitor.dart:1919)

37 RemovingTransformer.transformList (package:kernel/visitor.dart:2143)

38 RemovingTransformer.transformClassList (package:kernel/visitor.dart:1998)

39 ConstantsTransformer.convertLibrary (package:front_end/src/fasta/kernel/constant_evaluator.dart:461)

40 transformLibraries (package:front_end/src/fasta/kernel/constant_evaluator.dart:113)

41 KernelTarget.runBuildTransformations (package:front_end/src/fasta/kernel/kernel_target.dart:1533)

42 KernelTarget.buildComponent. (package:front_end/src/fasta/kernel/kernel_target.dart:629)

#43 withCrashReporting (package:front_end/src/fasta/crash.dart:133) #44 KernelTarget.buildComponent (package:front_end/src/fasta/kernel/kernel_target.dart:579) #45 IncrementalCompiler.computeDelta. (package:front_end/src/fasta/incremental_compiler.dart:371) #46 CompilerContext.clear (package:front_end/src/fasta/compiler_context.dart:139) #47 IncrementalCompiler.compile (package:vm/incremental_compiler.dart:77) #48 FrontendCompiler.compile (package:frontend_server/frontend_server.dart:610) #49 listenAndCompile. (package:frontend_server/frontend_server.dart:1303) the Dart compiler exited unexpectedly. the Dart compiler exited unexpectedly. **Flutter doctor:** [✓] Flutter (Channel stable, 3.19.6, on macOS 14.4.1 23E224 darwin-x64, locale en-IN) • Flutter version 3.19.6 on channel stable at /Users/decodeuptechnologies/Desktop/flutter • Upstream repository https://github.com/flutter/flutter.git • Framework revision 54e66469a9 (12 days ago), 2024-04-17 13:08:03 -0700 • Engine revision c4cd48e186 • Dart version 3.3.4 • DevTools version 2.31.1 [✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0) • Android SDK at /Users/decodeuptechnologies/Library/Android/sdk • Platform android-34, build-tools 34.0.0 • Java binary at: /Applications/Android Studio.app/Contents/jbr/Contents/Home/bin/java • Java version OpenJDK Runtime Environment (build 17.0.9+0-17.0.9b1087.7-11185874) • All Android licenses accepted. [✓] Xcode - develop for iOS and macOS (Xcode 15.3) • Xcode at /Applications/Xcode.app/Contents/Developer • Build 15E204a • CocoaPods version 1.13.0 [✓] Chrome - develop for the web • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome [✓] Android Studio (version 2023.2) • Android Studio at /Applications/Android Studio.app/Contents • Flutter plugin can be installed from: 🔨 https://plugins.jetbrains.com/plugin/9212-flutter • Dart plugin can be installed from: 🔨 https://plugins.jetbrains.com/plugin/6351-dart • Java version OpenJDK Runtime Environment (build 17.0.9+0-17.0.9b1087.7-11185874) [✓] VS Code (version 1.88.1) • VS Code at /Applications/Visual Studio Code.app/Contents • Flutter extension version 3.86.0 [✓] Connected device (2 available) • macOS (desktop) • macos • darwin-x64 • macOS 14.4.1 23E224 darwin-x64 • Chrome (web) • chrome • web-javascript • Google Chrome 124.0.6367.91 [✓] Network resources • All expected network resources are available. • No issues found!
alistair-riskmemo commented 2 weeks ago

It's working for me on the master channel.

[✓] Flutter (Channel master, 3.22.0-18.0.pre.53, on macOS 14.4.1 23E224 darwin-arm64, locale en-GB) • Flutter version 3.22.0-18.0.pre.53 on channel master at /Users/alistairscott/fvm/versions/master • Upstream repository https://github.com/flutter/flutter.git • Framework revision 098e7e7ff3 (32 hours ago), 2024-04-29 01:25:19 +0000 • Engine revision 752b146df7 • Dart version 3.5.0 (build 3.5.0-109.0.dev) • DevTools version 2.35.0-dev.16

[✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0) • Android SDK at /Users/alistairscott/Library/Android/sdk • Platform android-34, build-tools 34.0.0 • ANDROID_HOME = /Users/alistairscott/Library/Android/sdk • Java binary at: /Applications/Android Studio.app/Contents/jbr/Contents/Home/bin/java • Java version OpenJDK Runtime Environment (build 17.0.9+0-17.0.9b1087.7-11185874) • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 15.3) • Xcode at /Applications/Xcode.app/Contents/Developer • Build 15E204a • CocoaPods version 1.15.2

[✓] Chrome - develop for the web • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2023.2) • Android Studio at /Applications/Android Studio.app/Contents • Flutter plugin can be installed from: 🔨 https://plugins.jetbrains.com/plugin/9212-flutter • Dart plugin can be installed from: 🔨 https://plugins.jetbrains.com/plugin/6351-dart • Java version OpenJDK Runtime Environment (build 17.0.9+0-17.0.9b1087.7-11185874)

[✓] VS Code (version 1.88.1) • VS Code at /Applications/Visual Studio Code.app/Contents • Flutter extension version 3.86.0

[✓] Connected device (5 available) • Alistair’s iPhone (mobile) • XXXXXXXX-XXXXXXXXXXXXXXXX • ios • iOS 17.4.1 21E236 • iPhone 15 (mobile) • 21B17972-B3BF-4042-A4C4-73D7FBDEA9D5 • ios • com.apple.CoreSimulator.SimRuntime.iOS-17-4 (simulator) • macOS (desktop) • macos • darwin-arm64 • macOS 14.4.1 23E224 darwin-arm64 • Mac Designed for iPad (desktop) • mac-designed-for-ipad • darwin • macOS 14.4.1 23E224 darwin-arm64 • Chrome (web) • chrome • web-javascript • Google Chrome 124.0.6367.91

[✓] Network resources • All expected network resources are available.

• No issues found!

huycozy commented 1 week ago

@Decodeuprefo You are on Flutter stable 3.19.6. As @alistair-riskmemo confirmed, the issue may be fixed on master channel, please also try on it and confirm. Thanks!

Decodeuprefo commented 1 week ago

Yes, I am on Flutter stable 3.19.6. And still facing same issue.

huycozy commented 1 week ago

@Decodeuprefo Do you mean you still see the issue on Flutter master channel (3.22.0)? If you haven't checked it on master channel, please use command below to switch to master channel and retry:

flutter channel master
flutter upgrade
Decodeuprefo commented 1 week ago

Working fine in master channel. Not facing this issue there.

huycozy commented 1 week ago

Thank you for verifying it. Closing this issue as fixed. The fix should land on the stable channel in future releases.

divyanshgandhilm commented 1 week ago

@huycozy So should we not switch to 3.19.6 on stable right now? Because I just upgraded and my projects started giving me this same issue.

huycozy commented 1 week ago

From the potential commit https://github.com/dart-lang/sdk/commit/fa8e34e8355ade322fa3d94d39037e53402036b7 that I thought fixed this issue, I see the fix is also available on the latest beta channel 3.22.0-0.3.pre with Dart version 3.4.0 (build 3.4.0-282.3.beta), so you can switch to beta channel which is more stabilized than master channel.

 flutter channel beta
 flutter upgrade