lto-symtab.c (lto_symtab_merge_decls_1): Use fatal_error instead of gcc_assert to print better error message for...

2010-07-12  Andi Kleen  <ak@linux.intel.com>

        * lto-symtab.c (lto_symtab_merge_decls_1): Use fatal_error
        instead of gcc_assert to print better error message for
        multiple prevailing defs.

From-SVN: r162070
This commit is contained in:
Andi Kleen 2010-07-12 08:35:08 +00:00 committed by Richard Biener
parent 9db335b97c
commit e56d9a76ea
2 changed files with 12 additions and 2 deletions

View File

@ -1,3 +1,9 @@
2010-07-12 Andi Kleen <ak@linux.intel.com>
* lto-symtab.c (lto_symtab_merge_decls_1): Use fatal_error
instead of gcc_assert to print better error message for multiple
prevailing defs.
2010-07-12 Uros Bizjak <ubizjak@gmail.com>
* config/i386/i386.c (ix86_asm_output_function_label): Change format

View File

@ -649,8 +649,12 @@ lto_symtab_merge_decls_1 (void **slot, void *data ATTRIBUTE_UNUSED)
/* Assert it's the only one. */
if (prevailing)
for (e = prevailing->next; e; e = e->next)
gcc_assert (e->resolution != LDPR_PREVAILING_DEF_IRONLY
&& e->resolution != LDPR_PREVAILING_DEF);
{
if (e->resolution == LDPR_PREVAILING_DEF_IRONLY
|| e->resolution == LDPR_PREVAILING_DEF)
fatal_error ("multiple prevailing defs for %qE",
DECL_NAME (prevailing->decl));
}
/* If there's not a prevailing symbol yet it's an external reference.
Happens a lot during ltrans. Choose the first symbol with a