[Bug target/22099] New: builtin_setjmp gives duplicate labels

hebisch at math dot uni dot wroc dot pl gcc-bugzilla@gcc.gnu.org
Fri Jun 17 00:09:00 GMT 2005


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



More information about the Gcc-bugs mailing list