From 7ac3af38365579c83426d3d6ddb6c62884d9f5d1 Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Mon, 4 Feb 2013 18:19:56 +0100 Subject: [PATCH] re PR libstdc++/54314 (undefined references to 'construction vtable for std::ostream-in-std::basic_ostringstream, std::allocator >') PR libstdc++/54314 * config/i386/winnt.c (i386_pe_assemble_visibility): Don't warn about visibility on artificial decls. * config/sol2.c (solaris_assemble_visibility): Likewise. From-SVN: r195723 --- gcc/ChangeLog | 10 ++++++++-- gcc/config/i386/winnt.c | 5 +++-- gcc/config/sol2.c | 8 ++++---- 3 files changed, 15 insertions(+), 8 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 7d0988c5ed3..cc67ff91508 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2013-02-04 Jakub Jelinek + + PR libstdc++/54314 + * config/i386/winnt.c (i386_pe_assemble_visibility): Don't warn + about visibility on artificial decls. + * config/sol2.c (solaris_assemble_visibility): Likewise. + 2013-02-04 Kai Tietz PR target/56186 @@ -9,10 +16,9 @@ (return_in_memory_ms_64): Sync 16-byte sized mode handling with handling infunction_value_64 function. - 2013-02-04 Matthew Gretton-Dann - * gcc/reload.c (subst_reloads): Fix DEBUG_RELOAD build issue. + * reload.c (subst_reloads): Fix DEBUG_RELOAD build issue. 2013-02-04 Richard Biener diff --git a/gcc/config/i386/winnt.c b/gcc/config/i386/winnt.c index d14e11d4fac..118b1ecb007 100644 --- a/gcc/config/i386/winnt.c +++ b/gcc/config/i386/winnt.c @@ -250,8 +250,9 @@ i386_pe_assemble_visibility (tree decl, if (!decl || !lookup_attribute ("visibility", DECL_ATTRIBUTES (decl))) return; - warning (OPT_Wattributes, "visibility attribute not supported " - "in this configuration; ignored"); + if (!DECL_ARTIFICIAL (decl)) + warning (OPT_Wattributes, "visibility attribute not supported " + "in this configuration; ignored"); } /* This is used as a target hook to modify the DECL_ASSEMBLER_NAME diff --git a/gcc/config/sol2.c b/gcc/config/sol2.c index 0b7699b2496..33c8c3d5315 100644 --- a/gcc/config/sol2.c +++ b/gcc/config/sol2.c @@ -124,8 +124,7 @@ solaris_output_init_fini (FILE *file, tree decl) the visibility type VIS, which must not be VISIBILITY_DEFAULT. */ void -solaris_assemble_visibility (tree decl ATTRIBUTE_UNUSED, - int vis ATTRIBUTE_UNUSED) +solaris_assemble_visibility (tree decl, int vis ATTRIBUTE_UNUSED) { #ifdef HAVE_GAS_HIDDEN /* Sun as uses .symbolic for STV_PROTECTED. STV_INTERNAL is marked as @@ -152,8 +151,9 @@ solaris_assemble_visibility (tree decl ATTRIBUTE_UNUSED, assemble_name (asm_out_file, name); fprintf (asm_out_file, "\n"); #else - warning (OPT_Wattributes, "visibility attribute not supported " - "in this configuration; ignored"); + if (!DECL_ARTIFICIAL (decl)) + warning (OPT_Wattributes, "visibility attribute not supported " + "in this configuration; ignored"); #endif } -- 2.30.2