OSDN Git Service

* gcc.c-torture/execute/20051021-1.c: New test.
authorebotcazou <ebotcazou@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 21 Oct 2005 17:24:46 +0000 (17:24 +0000)
committerebotcazou <ebotcazou@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 21 Oct 2005 17:24:46 +0000 (17:24 +0000)
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@105749 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/testsuite/ChangeLog
gcc/testsuite/gcc.c-torture/execute/20051021-1.c [new file with mode: 0644]

index 1f3dd7a..4a38c09 100644 (file)
@@ -1,3 +1,7 @@
+2005-10-21  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * gcc.c-torture/execute/20051021-1.c: New test.
+
 2005-10-21  Mark Mitchell  <mark@codesourcery.com>
 
        PR c++/24260
diff --git a/gcc/testsuite/gcc.c-torture/execute/20051021-1.c b/gcc/testsuite/gcc.c-torture/execute/20051021-1.c
new file mode 100644 (file)
index 0000000..0cd2c89
--- /dev/null
@@ -0,0 +1,28 @@
+/* Verify that TRUTH_AND_EXPR is not wrongly changed to TRUTH_ANDIF_EXPR.  */
+
+extern void abort (void);
+
+int count = 0;
+
+int foo1(void)
+{
+  count++;
+  return 0;
+}
+
+int foo2(void)
+{
+  count++;
+  return 0;
+}
+
+int main(void)
+{
+  if ((foo1() == 1) & (foo2() == 1))
+    abort ();
+
+  if (count != 2)
+    abort ();
+
+  return 0;
+}