Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 30 Jul 2011 23:08:31 +0200
From:      Roman Divacky <rdivacky@freebsd.org>
To:        Martin Matuska <mm@FreeBSD.org>
Cc:        svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org
Subject:   Re: svn commit: r224523 - head/contrib/gcc/cp
Message-ID:  <20110730210831.GA98105@freebsd.org>
In-Reply-To: <201107301727.p6UHRTBr008855@svn.freebsd.org>
References:  <201107301727.p6UHRTBr008855@svn.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Why are we compiling our in-tree gcc with assertions enabled in the first
place?

On Sat, Jul 30, 2011 at 05:27:29PM +0000, Martin Matuska wrote:
> Author: mm
> Date: Sat Jul 30 17:27:29 2011
> New Revision: 224523
> URL: http://svn.freebsd.org/changeset/base/224523
> 
> Log:
>   Fix invalid assertion of C++ external static data member declarations
>   as anonymous namespaces are local to the current translation.
>   
>   GCC PR:		c++/33094
>   
>   Reviewed by:	uqs
>   Approved by:	re (kib)
>   Obtained from:	gcc (branches/redhat/gcc-4_1-branch, rev. 129554, GPLv2)
>   MFC after:	1 week
> 
> Modified:
>   head/contrib/gcc/cp/ChangeLog
>   head/contrib/gcc/cp/decl.c
> 
> Modified: head/contrib/gcc/cp/ChangeLog
> ==============================================================================
> --- head/contrib/gcc/cp/ChangeLog	Sat Jul 30 14:13:57 2011	(r224522)
> +++ head/contrib/gcc/cp/ChangeLog	Sat Jul 30 17:27:29 2011	(r224523)
> @@ -1,3 +1,9 @@
> +2007-09-29  Jason Merrill  <jason@redhat.com>
> +
> +	PR c++/33094
> +	* decl.c (make_rtl_for_nonlocal_decl): It's ok for a member
> +	constant to not have DECL_EXTERNAL if it's file-local.
> +
>  2007-08-24  Jakub Jelinek  <jakub@redhat.com>
>  
>  	PR c++/31941
> 
> Modified: head/contrib/gcc/cp/decl.c
> ==============================================================================
> --- head/contrib/gcc/cp/decl.c	Sat Jul 30 14:13:57 2011	(r224522)
> +++ head/contrib/gcc/cp/decl.c	Sat Jul 30 17:27:29 2011	(r224523)
> @@ -4968,7 +4968,7 @@ make_rtl_for_nonlocal_decl (tree decl, t
>        /* An in-class declaration of a static data member should be
>  	 external; it is only a declaration, and not a definition.  */
>        if (init == NULL_TREE)
> -	gcc_assert (DECL_EXTERNAL (decl));
> +	gcc_assert (DECL_EXTERNAL (decl) || !TREE_PUBLIC (decl));
>      }
>  
>    /* We don't create any RTL for local variables.  */



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20110730210831.GA98105>