diff options
Diffstat (limited to 'gcc-4.9/gcc/testsuite/g++.dg/other/no-strict-enum-precision-3.C')
-rwxr-xr-x | gcc-4.9/gcc/testsuite/g++.dg/other/no-strict-enum-precision-3.C | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/gcc-4.9/gcc/testsuite/g++.dg/other/no-strict-enum-precision-3.C b/gcc-4.9/gcc/testsuite/g++.dg/other/no-strict-enum-precision-3.C new file mode 100755 index 000000000..673601a41 --- /dev/null +++ b/gcc-4.9/gcc/testsuite/g++.dg/other/no-strict-enum-precision-3.C @@ -0,0 +1,21 @@ +/* { dg-do run } */ +/* { dg-options "-O2 -fno-strict-enums" } */ + +extern "C" void abort (void); + +enum X +{ + X1, + X2 +}; + +int +main (int argc, char *argv[]) +{ + X x = static_cast < X > (argc + 999); + if (x == X1) + abort (); + if (x == X2) + abort (); + return 0; +} |