-
Notifications
You must be signed in to change notification settings - Fork 1.7k
Closed
Labels
P3A lower priority bug or feature requestA lower priority bug or feature requestlegacy-area-analyzerUse area-devexp instead.Use area-devexp instead.legacy-area-front-endLegacy: Use area-dart-model instead.Legacy: Use area-dart-model instead.
Description
There are new test failures on Enable the fallback exhaustiveness algorithm (with improvements)..
This is happening because the fallback exhaustiveness algorithm is a rough (but sound) under-approximation of how we want soundness to behave in the long run. That is, if a switch statement or switch expression is not exhaustive, the fallback exhaustiveness algorithm will reliably classify it as non-exhaustive (and generate the appropriate error), but it also generates errors for a lot of switch statements and switch expressions that actually are exhaustive. Also, it doesn't detect unreachable switch cases.
The tests
co19/LanguageFeatures/Patterns/constant_A01_t03 CompileTimeError (expected Pass)
co19/LanguageFeatures/Patterns/constant_A02_t03 CompileTimeError (expected Pass)
co19/LanguageFeatures/Patterns/constant_A02_t06 CompileTimeError (expected Pass)
co19/LanguageFeatures/Patterns/constant_A02_t09 CompileTimeError (expected Pass)
co19/LanguageFeatures/Patterns/constant_A02_t12 CompileTimeError (expected Pass)
co19/LanguageFeatures/Patterns/switch_expression_A01_t01 MissingCompileTimeError (expected Pass)
language/patterns/exhaustiveness/bool_switch_test MissingCompileTimeError (expected Pass)
language/patterns/exhaustiveness/enum_switch_test MissingCompileTimeError (expected Pass)
language/patterns/exhaustiveness/object_pattern_switch_test MissingCompileTimeError (expected Pass)
language/patterns/exhaustiveness/record_literal_named_switch_test MissingCompileTimeError (expected Pass)
language/patterns/exhaustiveness/record_literal_switch_test MissingCompileTimeError (expected Pass)
language/patterns/exhaustiveness/record_switch_test MissingCompileTimeError (expected Pass)
language/patterns/exhaustiveness/sealed_class_switch_test MissingCompileTimeError (expected Pass)
language/patterns/exhaustiveness/variable_pattern_switch_test MissingCompileTimeError (expected Pass)
language/switch/switch_test CompileTimeError (expected Pass)
language/switch/switch_test/0 CompileTimeError (expected Pass)
language/switch/switch_test/1 CompileTimeError (expected Pass)
language/switch/switch_test/2 CompileTimeError (expected Pass)
language/switch/switch_test/3 CompileTimeError (expected Pass)
are failing on configurations
analyzer-asserts-linux
cfe-strong-linux
cfe-weak-linux
dart2js-hostasserts-strong-linux-x64-chrome
dart2js-hostasserts-strong-linux-x64-d8
dart2js-hostasserts-weak-linux-x64-chrome
dart2js-hostasserts-weak-linux-x64-d8
dart2wasm-hostasserts-linux-x64-d8
dartdevk-strong-linux-release-chrome
dartdevk-weak-linux-release-chrome
dartk-strong-linux-debug-x64
dartk-strong-linux-release-x64
dartk-weak-asserts-linux-debug-x64
dartk-weak-asserts-linux-release-x64
Metadata
Metadata
Assignees
Labels
P3A lower priority bug or feature requestA lower priority bug or feature requestlegacy-area-analyzerUse area-devexp instead.Use area-devexp instead.legacy-area-front-endLegacy: Use area-dart-model instead.Legacy: Use area-dart-model instead.