summaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.dg/other/switch2.C
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/testsuite/g++.dg/other/switch2.C')
-rw-r--r--gcc/testsuite/g++.dg/other/switch2.C23
1 files changed, 23 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.dg/other/switch2.C b/gcc/testsuite/g++.dg/other/switch2.C
new file mode 100644
index 000000000..6994e2a39
--- /dev/null
+++ b/gcc/testsuite/g++.dg/other/switch2.C
@@ -0,0 +1,23 @@
+// Copyright (C) 2005 Free Software Foundation, Inc.
+// Contributed by Nathan Sidwell 13 Oct 2005 <nathan@codesourcery.com>
+
+// PR 22551:ICE
+// Origin: Johnny Casey <emailwastefilter-bugzillagccorg@yahoo.com>
+
+const int B = ~(~0u >> 1);
+
+#define b(x) (B + x)
+
+
+int Foo (int error)
+{
+ switch (error)
+ {
+ case b (1): return 0;
+ case b (2): return 0;
+ case b (3): return 0;
+ case b (4): return 0;
+ case b (5): return 0;
+ }
+ return 0;
+}