From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 28158 invoked by alias); 5 Apr 2008 20:59:30 -0000 Received: (qmail 28057 invoked by uid 48); 5 Apr 2008 20:58:48 -0000 Date: Sat, 05 Apr 2008 20:59:00 -0000 Message-ID: <20080405205848.28056.qmail@sourceware.org> X-Bugzilla-Reason: CC References: Subject: [Bug middle-end/35835] Compiler fails to recognize match of local "extern" declarations In-Reply-To: Reply-To: gcc-bugzilla@gcc.gnu.org To: gcc-bugs@gcc.gnu.org From: "rguenth 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: 2008-04/txt/msg00434.txt.bz2 ------- Comment #4 from rguenth at gcc dot gnu dot org 2008-04-05 20:58 ------- (works with the C frontend) We don't share the decls of g_iValue properly, but doesn't this program violate the ODR anyway? void SetValue(int) (iD.2309) { : g_iValueD.2312 ={v} iD.2309_1(D); return; } int GetValue() () { intD.2 D.2316; : D.2316_1 = g_iValueD.2315; return D.2316_1; } int main() () { intD.2 D.2333; intD.2 D.2333; intD.2 iValueSaveD.2320; : iValueSaveD.2320_6 = g_iValueD.2315; g_iValueD.2312 ={v} 1; D.2333_7 = g_iValueD.2315; printf (&"%d\n"[0], D.2333_7); g_iValueD.2312 ={v} iValueSaveD.2320_6; return 0; } -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35835