re PR middle-end/16567 (Nested function and variable-sized structure ICE)
authorAndrew Pinski <pinskia@physics.uc.edu>
Fri, 15 Oct 2004 13:49:02 +0000 (13:49 +0000)
committerAndrew Pinski <pinskia@gcc.gnu.org>
Fri, 15 Oct 2004 13:49:02 +0000 (06:49 -0700)
2004-10-14  Andrew Pinski  <pinskia@physics.uc.edu>

        PR middle-end/16567
        * gcc.c-torture/compile/nested-1.c: New test.

From-SVN: r89092

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

index acd3b439d643cb88c79c9749b50db127a05d1d0c..85801a82b72fcf84dbbe9dc7d6edb7c8d05c5aca 100644 (file)
@@ -1,3 +1,8 @@
+2004-10-14  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       PR middle-end/16567
+        * gcc.c-torture/compile/nested-1.c: New test.
+
 2004-10-14  Dorit Naishlos  <dorit@il.ibm.com>
 
        * testsuite/gcc.dg/vect/vect-44.c: xfail on i?86-*-*, x86_64-*-*,
diff --git a/gcc/testsuite/gcc.c-torture/compile/nested-1.c b/gcc/testsuite/gcc.c-torture/compile/nested-1.c
new file mode 100644 (file)
index 0000000..b6aa79d
--- /dev/null
@@ -0,0 +1,19 @@
+typedef __SIZE_TYPE__ size_t;
+extern int printf (const char *, ...);
+extern void *memset (void *, int, size_t);
+
+int bar (int (*)(), int, void *);
+
+int
+main(int argc, char **argv)
+{
+  struct s { int a; char b[argc]; };
+  int nested (struct s x) { return x.a + sizeof(x); }
+  struct s t;
+  memset (&t, 0, sizeof(t));
+  t.a = 123;
+  printf("%d\n", bar (nested, argc, &t));
+  return 0;
+}
+
+