20000605-2.c: New test.
authorRichard Henderson <rth@cygnus.com>
Tue, 6 Jun 2000 20:54:30 +0000 (13:54 -0700)
committerRichard Henderson <rth@gcc.gnu.org>
Tue, 6 Jun 2000 20:54:30 +0000 (13:54 -0700)
        * gcc.c-torture/execute/20000605-2.c: New test.
        * gcc.c-torture/execute/20000605-3.c: New test.

From-SVN: r34437

gcc/testsuite/ChangeLog
gcc/testsuite/gcc.c-torture/execute/20000605-2.c [new file with mode: 0644]
gcc/testsuite/gcc.c-torture/execute/20000605-3.c [new file with mode: 0644]

index b87a6de0ebb22c8bf9ded21235c7dcee530ad52e..2df248c73cb2d0f463c7b7b5cc79d08ac382950c 100644 (file)
@@ -1,3 +1,8 @@
+2000-06-05  Richard Henderson  <rth@cygnus.com>
+
+       * gcc.c-torture/execute/20000605-2.c: New test.
+       * gcc.c-torture/execute/20000605-3.c: New test.
+
 2000-06-06  David Billinghurst  <David Billinghurst@riotinto.com.au>
 
        * g77.f-torture/execute/20000503-1.x: New file.
diff --git a/gcc/testsuite/gcc.c-torture/execute/20000605-2.c b/gcc/testsuite/gcc.c-torture/execute/20000605-2.c
new file mode 100644 (file)
index 0000000..8a49bc6
--- /dev/null
@@ -0,0 +1,18 @@
+struct F { int i; };
+
+void f1(struct F *x, struct F *y)
+{
+  int timeout = 0;
+  for (; ((const struct F*)x)->i < y->i ; x->i++)
+    if (++timeout > 5)
+      abort ();
+}
+
+main()
+{
+  struct F x, y;
+  x.i = 0;
+  y.i = 1;
+  f1 (&x, &y);
+  exit (0);
+}
diff --git a/gcc/testsuite/gcc.c-torture/execute/20000605-3.c b/gcc/testsuite/gcc.c-torture/execute/20000605-3.c
new file mode 100644 (file)
index 0000000..7ebb27f
--- /dev/null
@@ -0,0 +1,18 @@
+struct F { int x; int y; };
+
+int main()
+{
+  int timeout = 0;
+  int x = 0;
+  while (1)
+    {
+      const struct F i = { x++, };
+      if (i.x > 0)
+       break;
+      if (++timeout > 5)
+       goto die;
+    }
+  return 0;
+ die:
+  abort ();
+}