diff options
Diffstat (limited to 'gcc-4.8/gcc/cp/mangle.c')
-rw-r--r-- | gcc-4.8/gcc/cp/mangle.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/gcc-4.8/gcc/cp/mangle.c b/gcc-4.8/gcc/cp/mangle.c index dd5ed8d0d..26d360396 100644 --- a/gcc-4.8/gcc/cp/mangle.c +++ b/gcc-4.8/gcc/cp/mangle.c @@ -3480,6 +3480,7 @@ mangle_decl (const tree decl) if (G.need_abi_warning /* Don't do this for a fake symbol we aren't going to emit anyway. */ + && TREE_CODE (decl) != TYPE_DECL && !DECL_MAYBE_IN_CHARGE_CONSTRUCTOR_P (decl) && !DECL_MAYBE_IN_CHARGE_DESTRUCTOR_P (decl)) { @@ -3775,7 +3776,8 @@ mangle_conv_op_name_for_type (const tree type) static void write_guarded_var_name (const tree variable) { - if (strncmp (IDENTIFIER_POINTER (DECL_NAME (variable)), "_ZGR", 4) == 0) + if (DECL_NAME (variable) + && strncmp (IDENTIFIER_POINTER (DECL_NAME (variable)), "_ZGR", 4) == 0) /* The name of a guard variable for a reference temporary should refer to the reference, not the temporary. */ write_string (IDENTIFIER_POINTER (DECL_NAME (variable)) + 4); |