diff options
author | Mark Mitchell <mark@codesourcery.com> | 2010-01-25 03:14:25 +0000 |
---|---|---|
committer | Mark Mitchell <mmitchel@gcc.gnu.org> | 2010-01-25 03:14:25 +0000 |
commit | d147cbd9029c1079d33efccc2b2dcfb98dd8b48d (patch) | |
tree | faebf1f9f3cb4742c68a4a6ecb3f6986d939d6ff | |
parent | dd291a2ebca07c3558df16fa579460385c55d226 (diff) | |
download | gcc-d147cbd9029c1079d33efccc2b2dcfb98dd8b48d.zip gcc-d147cbd9029c1079d33efccc2b2dcfb98dd8b48d.tar.gz gcc-d147cbd9029c1079d33efccc2b2dcfb98dd8b48d.tar.bz2 |
re PR c++/42748 (warnings about 'mangling of 'va_list' has changed in GCC 4.4' not suppressed in sytem headers)
PR c++/42748
* config/arm/arm.c (arm_mangle_type): Do not warn about changes to
mangling of va_list in system headers.
PR c++/42748
* g++.dg/abi/arm_va_list2.C: New test.
* g++.dg/abi/arm_va_list2.h: Companion header file.
From-SVN: r156202
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/config/arm/arm.c | 2 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/testsuite/g++.dg/abi/arm_va_list2.C | 7 | ||||
-rw-r--r-- | gcc/testsuite/g++.dg/abi/arm_va_list2.h | 4 |
5 files changed, 24 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index a9602fe..c590273 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2010-01-24 Mark Mitchell <mark@codesourcery.com> + + PR c++/42748 + * config/arm/arm.c (arm_mangle_type): Do not warn about changes to + mangling of va_list in system headers. + 2010-01-23 Toon Moene <toon@moene.org> * tree-predcom.c (combine_chains): Return NULL, not false. diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c index e9ea2bd..ffff9ab 100644 --- a/gcc/config/arm/arm.c +++ b/gcc/config/arm/arm.c @@ -21372,7 +21372,7 @@ arm_mangle_type (const_tree type) && lang_hooks.types_compatible_p (CONST_CAST_TREE (type), va_list_type)) { static bool warned; - if (!warned && warn_psabi) + if (!warned && warn_psabi && !in_system_header) { warned = true; inform (input_location, diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index b9dd124..2b0cfc6 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,9 @@ +2010-01-24 Mark Mitchell <mark@codesourcery.com> + + PR c++/42748 + * g++.dg/abi/arm_va_list2.C: New test. + * g++.dg/abi/arm_va_list2.h: Companion header file. + 2010-01-24 Paul Thomas <pault@gcc.gnu.org> PR fortran/41044 diff --git a/gcc/testsuite/g++.dg/abi/arm_va_list2.C b/gcc/testsuite/g++.dg/abi/arm_va_list2.C new file mode 100644 index 0000000..f5e4ca4 --- /dev/null +++ b/gcc/testsuite/g++.dg/abi/arm_va_list2.C @@ -0,0 +1,7 @@ +// { dg-do compile } +// { dg-options "-Wpsabi" } +// { dg-require-effective-target arm_eabi } + +#include <stdarg.h> +#include "arm_va_list2.h" + diff --git a/gcc/testsuite/g++.dg/abi/arm_va_list2.h b/gcc/testsuite/g++.dg/abi/arm_va_list2.h new file mode 100644 index 0000000..ebfb2de --- /dev/null +++ b/gcc/testsuite/g++.dg/abi/arm_va_list2.h @@ -0,0 +1,4 @@ +// The mangling of va_list changed in GCC 4.4. We want to warn about +// that -- but not in a system header. +#pragma GCC system_header +void f(va_list) {} |