aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.9/gcc/testsuite/gcc.c-torture/compile/20010423-1.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc-4.9/gcc/testsuite/gcc.c-torture/compile/20010423-1.c')
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/compile/20010423-1.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/compile/20010423-1.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/compile/20010423-1.c
new file mode 100644
index 000000000..ef7771f8e
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/compile/20010423-1.c
@@ -0,0 +1,16 @@
+/* Origin: PR c/2618 from Cesar Eduardo Barros <cesarb@nitnet.com.br>,
+ adapted to a testcase by Joseph Myers <jsm28@cam.ac.uk>.
+
+ Boolean conversions were causing infinite recursion between convert
+ and fold in certain cases. */
+
+#include <stdbool.h>
+
+bool x;
+unsigned char y;
+
+void
+fn (void)
+{
+ x = y & 0x1 ? 1 : 0;
+}