From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 3058 invoked by alias); 22 Apr 2003 13:56:01 -0000 Mailing-List: contact gcc-prs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-prs-owner@gcc.gnu.org Received: (qmail 3044 invoked by uid 71); 22 Apr 2003 13:56:00 -0000 Date: Tue, 22 Apr 2003 13:56:00 -0000 Message-ID: <20030422135600.3043.qmail@sources.redhat.com> To: nobody@gcc.gnu.org Cc: gcc-prs@gcc.gnu.org, From: "Giovanni Bajo" Subject: Re: target/10440: [cygwin] incorrect assembler produced (as fails with "is already defined") Reply-To: "Giovanni Bajo" X-SW-Source: 2003-04/txt/msg00921.txt.bz2 List-Id: The following reply was made to PR target/10440; it has been noted by GNATS. From: "Giovanni Bajo" To: , , , , Cc: "Wolfgang Bangerth" Subject: Re: target/10440: [cygwin] incorrect assembler produced (as fails with "is already defined") Date: Tue, 22 Apr 2003 15:52:59 +0200 http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&p r=10440 Reduced snippet is: -------------------------------- typedef struct { int dummy; } Foo; __attribute__((dllimport)) Foo issue_error_1; __attribute__((dllimport)) Foo issue_error_2; __attribute__((dllimport)) Foo issue_error_3; __attribute__((dllimport)) Foo f; void func(void) { other_func(f); } Foo f = {}; -------------------------------- /cygdrive/c/DOCUME~1/ADMINI~1/IMPOST~1/Temp/ccHvVfGR.s: Assembler messages: /cygdrive/c/DOCUME~1/ADMINI~1/IMPOST~1/Temp/ccHvVfGR.s:21: Error: symbol `_D' is already defined /cygdrive/c/DOCUME~1/ADMINI~1/IMPOST~1/Temp/ccHvVfGR.s:22: Error: symbol `_D' is already defined /cygdrive/c/DOCUME~1/ADMINI~1/IMPOST~1/Temp/ccHvVfGR.s:23: Error: symbol `_D' is already defined Funny thing is that we get one error for each symbol we declare above (I declared 3 and got three errors). This bug is a regression of the 3.2 branch only. It's fixed on 3.3 and 3.4 with Mark's patch for pr/7910, but I read that the patch has been reverted. I did not understand though if another patch has been prepared or not. GCC 3.3 build from a CVS snapshot of yesterday can compile it correctly. Giovanni Bajo