dmd/compiler/test/runnable/extra-files/test11051.d
Nick Treleaven 49771d7068
Fix issue 11051 - Unmatched case in a final switch should throw in both release and non-release mode (#14841)
* Fix issue 11051

Keep a HALT instruction in a final switch statement if
the function is @safe and -release mode is enabled.

* @system -release test should also be non-zero

* don't suppress test errors

* Remove unreported error line

* Disable core dumps

Co-authored-by: Andrej Mitrovic <andrej.mitrovich@gmail.com>
2023-01-24 12:48:00 +02:00

30 lines
415 B
D

module test11051;
version (Safe)
{
void main() @safe
{
enum E { A, B }
E e = cast(E)-1;
final switch (e)
{
case E.A: break;
case E.B: break;
}
}
}
else
{
void main()
{
enum E { A, B }
E e = cast(E)-1;
final switch (e)
{
case E.A: break;
case E.B: break;
}
}
}