From: Richard Biener Date: Mon, 18 Jan 2016 12:19:31 +0000 (+0000) Subject: re PR lto/69337 (Internal compiler error fortran c lto) X-Git-Tag: basepoints/gcc-7~1541 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=13092f619889805136f945718288a3c17c6beae1;p=thirdparty%2Fgcc.git re PR lto/69337 (Internal compiler error fortran c lto) 2016-01-18 Richard Biener PR lto/69337 * lto-symtab.c (lto_symtab_merge): Return early for mismatched function vs. variable. From-SVN: r232505 --- diff --git a/gcc/lto/ChangeLog b/gcc/lto/ChangeLog index 352fe17eecbd..724a525e860a 100644 --- a/gcc/lto/ChangeLog +++ b/gcc/lto/ChangeLog @@ -1,3 +1,9 @@ +2016-01-18 Richard Biener + + PR lto/69337 + * lto-symtab.c (lto_symtab_merge): Return early for mismatched + function vs. variable. + 2016-01-12 Richard Biener PR lto/69077 diff --git a/gcc/lto/lto-symtab.c b/gcc/lto/lto-symtab.c index a6f6d01dda12..b22dea873765 100644 --- a/gcc/lto/lto-symtab.c +++ b/gcc/lto/lto-symtab.c @@ -303,6 +303,9 @@ lto_symtab_merge (symtab_node *prevailing, symtab_node *entry) if (prevailing_decl == decl) return true; + if (TREE_CODE (decl) != TREE_CODE (prevailing_decl)) + return false; + /* Merge decl state in both directions, we may still end up using the new decl. */ TREE_ADDRESSABLE (prevailing_decl) |= TREE_ADDRESSABLE (decl);