From feeca9cc428456e86ee6d9dc9cbe1dfa9ad9e3cb Mon Sep 17 00:00:00 2001 From: Kai Tietz Date: Wed, 25 Feb 2015 17:44:26 +0100 Subject: [PATCH] re PR target/64212 (ICE [in noninterposable_alias, at symtab.c:1706]) PR target/64212 * symtab.c (symtab::make_decl_local): Set DECL_IMPORT_P explicit to 0. (symtab::noninterposable_alias): Likewise. From-SVN: r220982 --- gcc/ChangeLog | 6 ++++++ gcc/symtab.c | 3 ++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 6e9faf9f0d8..c9270c80d15 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2015-02-25 Kai Tietz + + PR target/64212 + * symtab.c (symtab::make_decl_local): Set DECL_IMPORT_P explicit to 0. + (symtab::noninterposable_alias): Likewise. + 2015-02-25 Ilya Enkovich PR target/65167 diff --git a/gcc/symtab.c b/gcc/symtab.c index 7a70b100da1..957457b25e5 100644 --- a/gcc/symtab.c +++ b/gcc/symtab.c @@ -1165,6 +1165,7 @@ symtab_node::make_decl_local (void) DECL_VISIBILITY_SPECIFIED (decl) = 0; DECL_VISIBILITY (decl) = VISIBILITY_DEFAULT; TREE_PUBLIC (decl) = 0; + DECL_DLLIMPORT_P (decl) = 0; if (!DECL_RTL_SET_P (decl)) return; @@ -1534,7 +1535,6 @@ symtab_node::noninterposable_alias (symtab_node *node, void *data) != flags_from_decl_or_type (fn->decl)) || DECL_ATTRIBUTES (node->decl) != DECL_ATTRIBUTES (fn->decl)) return false; - *(symtab_node **)data = node; return true; } @@ -1566,6 +1566,7 @@ symtab_node::noninterposable_alias (void) /* Otherwise create a new one. */ new_decl = copy_node (node->decl); + DECL_DLLIMPORT_P (new_decl) = 0; DECL_NAME (new_decl) = clone_function_name (node->decl, "localalias"); if (TREE_CODE (new_decl) == FUNCTION_DECL) DECL_STRUCT_FUNCTION (new_decl) = NULL; -- 2.30.2