This is the mail archive of the mailing list for the GCC project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: lto1: internal compiler error: in lto_symtab_merge_decls_1, at lto-symtab.c:549

Richard Guenther wrote:

On Sat, Apr 24, 2010 at 3:28 PM, Toon Moene <> wrote:


   525 /* Helper to process the decl chain for the symbol table entry *SLOT.
   527 static int
   528 lto_symtab_merge_decls_1 (void **slot, void *data ATTRIBUTE_UNUSED)
   545   /* Assert it's the only one.  */
   546   if (prevailing)
   547     for (e = prevailing->next; e; e = e->next)
   548       gcc_assert (e->resolution != LDPR_PREVAILING_DEF_IRONLY
   549                   && e->resolution != LDPR_PREVAILING_DEF);

Of course, I'd like to make a test case out of this - but what is this
assert checking ?

It is checking that for one symbol we only have one definition.

You are using -fuse-linker-plugin?

Indeed, I do (all of our code ends up in libraries - .a files - so I have to, to make -flto -fwhole-program be meaningful).

Is it a problem with COMMON ? Those typically have umpteen definitions, which all have to match ...

Thanks in advance,

Toon Moene - e-mail: - phone: +31 346 214290
Saturnushof 14, 3738 XG  Maartensdijk, The Netherlands
At home:; weather:
Progress of GNU Fortran:

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]