aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorJason Merrill <jason@redhat.com>2012-01-06 16:39:27 -0500
committerJason Merrill <jason@gcc.gnu.org>2012-01-06 16:39:27 -0500
commit1be3db365ddbf781ee183be2632140bcedfcf66c (patch)
tree5162c6200691d2a63b9b97ba8c74c59bf1fe4882 /gcc
parent11a36a2754b40efa9539178a30f2cfa2bda7e577 (diff)
downloadgcc-1be3db365ddbf781ee183be2632140bcedfcf66c.zip
gcc-1be3db365ddbf781ee183be2632140bcedfcf66c.tar.gz
gcc-1be3db365ddbf781ee183be2632140bcedfcf66c.tar.bz2
mangle.c (mangle_decl): Don't generate mangling aliases for maybe-in-charge [cd]tors.
* mangle.c (mangle_decl): Don't generate mangling aliases for maybe-in-charge [cd]tors. From-SVN: r182968
Diffstat (limited to 'gcc')
-rw-r--r--gcc/cp/ChangeLog3
-rw-r--r--gcc/cp/mangle.c5
2 files changed, 7 insertions, 1 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 3f77f1b..01480e3 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,5 +1,8 @@
2012-01-06 Jason Merrill <jason@redhat.com>
+ * mangle.c (mangle_decl): Don't generate mangling aliases
+ for maybe-in-charge [cd]tors.
+
* error.c (dump_expr): Print type of CONSTRUCTOR.
2012-01-05 Dodji Seketeli <dodji@redhat.com>
diff --git a/gcc/cp/mangle.c b/gcc/cp/mangle.c
index 548998a..e5c2895 100644
--- a/gcc/cp/mangle.c
+++ b/gcc/cp/mangle.c
@@ -3194,7 +3194,10 @@ mangle_decl (const tree decl)
tree id = get_mangled_id (decl);
SET_DECL_ASSEMBLER_NAME (decl, id);
- if (G.need_abi_warning)
+ if (G.need_abi_warning
+ /* Don't do this for a fake symbol we aren't going to emit anyway. */
+ && !DECL_MAYBE_IN_CHARGE_CONSTRUCTOR_P (decl)
+ && !DECL_MAYBE_IN_CHARGE_DESTRUCTOR_P (decl))
{
#ifdef ASM_OUTPUT_DEF
/* If the mangling will change in the future, emit an alias with the