From 56f01f0b417d3291b5915d449dc327be23911638 Mon Sep 17 00:00:00 2001 From: Yao Qi Date: Fri, 15 Oct 2010 04:03:10 +0000 Subject: [PATCH] re PR debug/45447 (ICE with `-g -femit-struct-debug-baseonly') gcc/ PR target/45447 * config/arm/arm.c (arm_build_builtin_va_list): Assign va_list_name to TYPE_STUB_DECL (va_list_type). gcc/testsuite/ PR target/45447 * gcc.target/arm/pr45447.c: New test. From-SVN: r165493 --- gcc/ChangeLog | 6 ++++++ gcc/config/arm/arm.c | 1 + gcc/testsuite/ChangeLog | 5 +++++ gcc/testsuite/gcc.target/arm/pr45447.c | 3 +++ 4 files changed, 15 insertions(+) create mode 100644 gcc/testsuite/gcc.target/arm/pr45447.c diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 5c0d576f402..ed8f3767c94 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2010-10-14 Yao Qi + + PR target/45447 + * config/arm/arm.c (arm_build_builtin_va_list): Assign + va_list_name to TYPE_STUB_DECL (va_list_type). + 2010-10-14 Jan Hubicka PR middle-end/45621 diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c index 5307948cc1d..3bcd1a9cb2c 100644 --- a/gcc/config/arm/arm.c +++ b/gcc/config/arm/arm.c @@ -1218,6 +1218,7 @@ arm_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 __ap field. */ ap_field = build_decl (BUILTINS_LOCATION, FIELD_DECL, diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 6f8e1fdf9da..116c676855b 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2010-10-14 Yao Qi + + PR target/45447 + * gcc.target/arm/pr45447.c: New test. + 2010-10-14 Jan Hubicka PR middle-end/45621 diff --git a/gcc/testsuite/gcc.target/arm/pr45447.c b/gcc/testsuite/gcc.target/arm/pr45447.c new file mode 100644 index 00000000000..cb4a4427511 --- /dev/null +++ b/gcc/testsuite/gcc.target/arm/pr45447.c @@ -0,0 +1,3 @@ +/* { dg-do compile } */ +/* { dg-options "-g -femit-struct-debug-baseonly" } */ +typedef __builtin_va_list x;