aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndrew Hsieh <andrewhsieh@google.com>2013-04-02 18:31:17 +0800
committerAndrew Hsieh <andrewhsieh@google.com>2013-04-02 18:44:51 +0800
commit8d5620f27dec9aa104a0f8b09038adacf4540a72 (patch)
tree8da83fa608b9ca5a6bd8d8cc0ebcbe8438d3672d
parentaf0c51ac87ab2a87caa03fa108f0d164987a2764 (diff)
downloadtoolchain_gcc-8d5620f27dec9aa104a0f8b09038adacf4540a72.tar.gz
toolchain_gcc-8d5620f27dec9aa104a0f8b09038adacf4540a72.tar.bz2
toolchain_gcc-8d5620f27dec9aa104a0f8b09038adacf4540a72.zip
[4.8] Disable warning: the mangling of <va_list> has changed in GCC 4.4
Please see commit message of the same fix in previous GCC GCC 4.7 3800bda255b20023e993ed786674f70c909d60b5 GCC 4.6 a9fcd9b1ecb8954f67738a94b8553ab234d6def5 GCC 4.4.3 329ca6fa5d9972ad6dad8387036b4dbe9cfa1f27 Change-Id: I288f349d2140918babf3a872728da02c5706a971
-rw-r--r--gcc-4.8/gcc/config/arm/arm.c24
1 files changed, 23 insertions, 1 deletions
diff --git a/gcc-4.8/gcc/config/arm/arm.c b/gcc-4.8/gcc/config/arm/arm.c
index ca367608c..2077b97c9 100644
--- a/gcc-4.8/gcc/config/arm/arm.c
+++ b/gcc-4.8/gcc/config/arm/arm.c
@@ -25902,7 +25902,29 @@ arm_mangle_type (const_tree type)
has to be managled as if it is in the "std" namespace. */
if (TARGET_AAPCS_BASED
&& lang_hooks.types_compatible_p (CONST_CAST_TREE (type), va_list_type))
- return "St9__va_list";
+ {
+ /* Disable this obsolete warning for Android, because none of the exposed APIs
+ by NDK is impacted by this change of ARM ABI. This warning can be triggered
+ very easily by compiling the following code using arm-linux-androideabi-g++:
+
+ typedef __builtin_va_list __gnuc_va_list;
+ typedef __gnuc_va_list va_list;
+ void foo(va_list v) { }
+
+ We could advise developer to add "-Wno-psabi", but doing so also categorically
+ deny other cases guarded by "warn_psabi". Hence the decision to disable it
+ case by case here.
+
+ static bool warned;
+ if (!warned && warn_psabi && !in_system_header)
+ {
+ warned = true;
+ inform (input_location,
+ "the mangling of %<va_list%> has changed in GCC 4.4");
+ }
+ */
+ return "St9__va_list";
+ }
/* Half-precision float. */
if (TREE_CODE (type) == REAL_TYPE && TYPE_PRECISION (type) == 16)