From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 11705 invoked by alias); 14 Feb 2009 17:16:20 -0000 Received: (qmail 11661 invoked by uid 48); 14 Feb 2009 17:16:09 -0000 Date: Sat, 14 Feb 2009 17:16:00 -0000 Message-ID: <20090214171609.11660.qmail@sourceware.org> X-Bugzilla-Reason: CC References: Subject: [Bug target/39179] Wrong code in c++ for const members initialized in external file In-Reply-To: Reply-To: gcc-bugzilla@gcc.gnu.org To: gcc-bugs@gcc.gnu.org From: "ebotcazou at gcc dot gnu dot org" Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org X-SW-Source: 2009-02/txt/msg01292.txt.bz2 ------- Comment #3 from ebotcazou at gcc dot gnu dot org 2009-02-14 17:16 ------- > The problem is that targetm.binds_local_p returns true for > > type size > unit size > align 32 symtab 0 alias set -1 canonical type 0xb785edd0 precision 32 > min max > > readonly used public static unsigned external nonlocal decl_3 decl_5 decl_6 > SI file t.ii line 2 col 27 size unit size > > align 32 context > chain > > > though probably nobody thought of handling TREE_STATIC && DECL_EXTERNAL being > true at the same time. Thus, this looks like a possible C++ FE problem to me? FWIW we had the same problem in Ada on this platform and we fixed Gigi. -- ebotcazou at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |ebotcazou at gcc dot gnu dot | |org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39179