The Dart SDK, including the VM, dart2js, core libraries, and more.
BSD 3-Clause "New" or "Revised" License
9.94k
stars
1.53k
forks
source link
The analyzer encounters an unhandled exception during constant verification in a switch statement #56117
Open
eernstg opened 3 days ago
Consider the following program:
This program is accepted by the CFE and runs with no errors, but the analyzer encounters an unhandled exception:
Stack trace
``` Analyzing n020.dart... An unexpected error was encountered by the Analysis Server. Please file an issue at https://github.com/dart-lang/sdk/issues/new/choose with the following details: Internal error: Null check operator used on a null value #0 TypeParameterReplacer.visitTypeParameterType (package:analyzer/src/generated/exhaustiveness.dart:767:44) #1 TypeParameterTypeImpl.accept (package:analyzer/src/dart/element/type.dart:1488:20) #2 ReplacementVisitor.visitTypeArgument (package:analyzer/src/dart/element/replacement_visitor.dart:523:21) #3 ReplacementVisitor._typeArguments (package:analyzer/src/dart/element/replacement_visitor.dart:570:26) #4 ReplacementVisitor.visitInterfaceType (package:analyzer/src/dart/element/replacement_visitor.dart:375:28) #5 InterfaceTypeImpl.accept (package:analyzer/src/dart/element/type.dart:714:20) #6 TypeParameterReplacer._replaceTypeParameterTypes (package:analyzer/src/generated/exhaustiveness.dart:773:17) #7 TypeParameterReplacer.replaceTypeVariables (package:analyzer/src/generated/exhaustiveness.dart:778:46) #8 AnalyzerTypeOperations.overapproximate (package:analyzer/src/generated/exhaustiveness.dart:392:34) #9 SealedClassStaticType._createSubtypes (package:_fe_analyzer_shared/src/exhaustiveness/types/sealed.dart:94:40) #10 SealedClassStaticType.getSubtypes (package:_fe_analyzer_shared/src/exhaustiveness/types/sealed.dart:68:21) #11 _Checker._unmatched (package:_fe_analyzer_shared/src/exhaustiveness/exhaustive.dart:143:31) #12 reportErrors (package:_fe_analyzer_shared/src/exhaustiveness/exhaustive.dart:48:38) #13 ConstantVerifier._validateSwitchExhaustiveness (package:analyzer/src/dart/constant/constant_verifier.dart:943:11) #14 ConstantVerifier.visitSwitchStatement.