This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Build broken in libstdc++ on x86_64-linux


> Hi,
> 
> the build is currently, ie 154122, broken in libstdc++-v3:
> 
>     ...../src/system_error.cc:95:1: internal compiler error:
> Segmentation fault
> 
> Version 154120 works fine for me.
I am testing patch for that still.
The current version is (updated per Joseph's comment about COMDAT making sence
on !PUBLIC functions).

Index: ipa.c
===================================================================
--- ipa.c	(revision 154122)
+++ ipa.c	(working copy)
@@ -318,8 +318,8 @@ function_and_variable_visibility (bool w
     {
       if (!vnode->finalized)
         continue;
-      gcc_assert ((!DECL_WEAK (vnode->decl) && !DECL_COMMON (vnode->decl) && !DECL_COMDAT (vnode->decl))
-      		  || TREE_PUBLIC (vnode->decl) || DECL_EXTERNAL (node->decl));
+      gcc_assert ((!DECL_WEAK (vnode->decl) && !DECL_COMMON (vnode->decl))
+      		  || TREE_PUBLIC (vnode->decl) || DECL_EXTERNAL (vnode->decl));
       if (vnode->needed
 	  && (DECL_COMDAT (vnode->decl) || TREE_PUBLIC (vnode->decl))
 	  && (!whole_program
@@ -337,6 +337,7 @@ function_and_variable_visibility (bool w
 	{
 	  gcc_assert (whole_program || !TREE_PUBLIC (vnode->decl));
 	  TREE_PUBLIC (vnode->decl) = 0;
+	  DECL_COMMON (vnode->decl) = 0;
 	}
      gcc_assert (TREE_STATIC (vnode->decl));
     }


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]