* gcc.c-torture/execute/20020314-1.c: New test.
authorrearnsha <rearnsha@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 14 Mar 2002 15:32:31 +0000 (15:32 +0000)
committerrearnsha <rearnsha@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 14 Mar 2002 15:32:31 +0000 (15:32 +0000)
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@50772 138bc75d-0d04-0410-961f-82ee72b054a4

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

index c65803b..04b5114 100644 (file)
@@ -1,3 +1,7 @@
+2002-03-14  Richard Earnshaw  <rearnsha@arm.com>
+
+       * gcc.c-torture/execute/20020314-1.c: New test.
+
 2002-03-14  Jakub Jelinek  <jakub@redhat.com>
 
        * g++.dg/warn/Wunused-1.C: New test.
diff --git a/gcc/testsuite/gcc.c-torture/execute/20020314-1.c b/gcc/testsuite/gcc.c-torture/execute/20020314-1.c
new file mode 100644 (file)
index 0000000..28288c8
--- /dev/null
@@ -0,0 +1,36 @@
+void f(void * a, double y)
+{
+}
+
+double g (double a, double b, double c, double d)
+{
+  double x, y, z;
+  void *p;
+
+  x = a + b;
+  y = c * d;
+
+  p = alloca (16);
+
+  f(p, y);
+  z = x * y * a;
+
+  return z + b;
+}
+
+main ()
+{
+  double a, b, c, d;
+  a = 1.0;
+  b = 0.0;
+  c = 10.0;
+  d = 0.0;
+
+  if (g (a, b, c, d) != 0.0)
+    abort ();
+
+  if (a != 1.0 || b != 0.0 || c != 10.0 || d != 0.0)
+    abort ();
+
+  exit (0);
+}