This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/22099] New: builtin_setjmp gives duplicate labels
- From: "hebisch at math dot uni dot wroc dot pl" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 17 Jun 2005 00:08:45 -0000
- Subject: [Bug target/22099] New: builtin_setjmp gives duplicate labels
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
The following program, when compiled with -fPIC option (on by
default on Darwin) gives me duplicate label in assembler
output:
extern int printf(const char *, ...);
struct { int a[5];} jmp_buf;
void
f(void)
{
void g(void)
{
}
if (__builtin_setjmp(&jmp_buf))
goto l;
g();
printf("failed\n");
l:;
}
int
main(void)
{
f();
return 0;
}
I can see duplicate label "L00000000001$pb" in the assemble output.
Note that I have not set up full cross-compile environmet, I just
configured gcc for i686-apple-darwin target. The build failed,
but cc1 is built.
This is a reduced test case. Original problem appeared in GNU
Pascal in native compiler on i686-apple-darwin host.
The problem is also present in gcc-3.3.6 (the label is called
L1$pb) and in gcc-3.4.4.
--
Summary: builtin_setjmp gives duplicate labels
Product: gcc
Version: unknown
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: target
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: hebisch at math dot uni dot wroc dot pl
CC: gcc-bugs at gcc dot gnu dot org
GCC host triplet: i686-pc-linux-gnu
GCC target triplet: i686-apple-darwin
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22099