AArch64: Fix ICE due to missing TYPE_STUB_DECL on builtin va_list.
authorMarcus Shawcroft <marcus.shawcroft@arm.com>
Tue, 4 Dec 2012 14:52:50 +0000 (14:52 +0000)
committerMarcus Shawcroft <mshawcroft@gcc.gnu.org>
Tue, 4 Dec 2012 14:52:50 +0000 (14:52 +0000)
2012-12-04  Marcus Shawcroft  <marcus.shawcroft@arm.com>

* config/aarch64/aarch64.c (aarch64_build_builtin_va_list): Set
TYPE_STUB_DECL.

From-SVN: r194147

gcc/ChangeLog
gcc/config/aarch64/aarch64.c
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/aarch64/121127.c [new file with mode: 0644]

index 077191ad6b1bd658ceb57d345a5831bfc3bb8513..ba9f33ea02fc905a5a0447e866a1fb1c1d096525 100644 (file)
@@ -1,3 +1,8 @@
+2012-12-04  Marcus Shawcroft  <marcus.shawcroft@arm.com>
+
+       * config/aarch64/aarch64.c (aarch64_build_builtin_va_list): Set
+       TYPE_STUB_DECL.
+
 2012-12-04  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
 
        * config/s390/s390.c (s390_select_ccmode): Enable using CC of
index bd7232113510852e6607c7f04ad4e4e57d28e349..445cd4fc23ac48335cb4b4a27338fc7a51802f2e 100644 (file)
@@ -5061,6 +5061,7 @@ aarch64_build_builtin_va_list (void)
                             va_list_type);
   DECL_ARTIFICIAL (va_list_name) = 1;
   TYPE_NAME (va_list_type) = va_list_name;
+  TYPE_STUB_DECL (va_list_type) = va_list_name;
 
   /* Create the fields.  */
   f_stack = build_decl (BUILTINS_LOCATION,
index b84a590987fc7004faf733e50c0540a87362033d..55fc13ca7276ea94fa0546a20cc206e6edfb8d9d 100644 (file)
@@ -1,3 +1,7 @@
+2012-12-04  Marcus Shawcroft  <marcus.shawcroft@arm.com>
+
+       * gcc.target/aarch64/121127.c: New test.
+
 2012-12-04  Jakub Jelinek  <jakub@redhat.com>
 
        PR testsuite/55587
diff --git a/gcc/testsuite/gcc.target/aarch64/121127.c b/gcc/testsuite/gcc.target/aarch64/121127.c
new file mode 100644 (file)
index 0000000..a7dca09
--- /dev/null
@@ -0,0 +1,4 @@
+/* { dg-do compile } */
+/* { dg-options "-g -femit-struct-debug-baseonly" } */
+
+typedef __builtin_va_list __gnuc_va_list;