diff options
author | Jason Merrill <jason@redhat.com> | 2011-06-23 12:52:56 -0400 |
---|---|---|
committer | Jason Merrill <jason@gcc.gnu.org> | 2011-06-23 12:52:56 -0400 |
commit | d72ce0c110efa0597e1620f8dd946a14191b9b83 (patch) | |
tree | dedee443711edcd75ec35bb28fe262243bb77a70 /gcc/cp/optimize.c | |
parent | 012d5d2526e73eb98190fdabfd86e075ed5c7d50 (diff) | |
download | gcc-d72ce0c110efa0597e1620f8dd946a14191b9b83.zip gcc-d72ce0c110efa0597e1620f8dd946a14191b9b83.tar.gz gcc-d72ce0c110efa0597e1620f8dd946a14191b9b83.tar.bz2 |
optimize.c (maybe_clone_body): Set linkage flags before cgraph_same_body_alias.
* optimize.c (maybe_clone_body): Set linkage flags before
cgraph_same_body_alias.
From-SVN: r175341
Diffstat (limited to 'gcc/cp/optimize.c')
-rw-r--r-- | gcc/cp/optimize.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/gcc/cp/optimize.c b/gcc/cp/optimize.c index 87302dc..b9e3551 100644 --- a/gcc/cp/optimize.c +++ b/gcc/cp/optimize.c @@ -310,8 +310,11 @@ maybe_clone_body (tree fn) || (HAVE_COMDAT_GROUP && DECL_WEAK (fns[0]))) && (flag_syntax_only - || cgraph_same_body_alias (cgraph_get_node (fns[0]), clone, - fns[0]))) + /* Set linkage flags appropriately before + cgraph_create_function_alias looks at them. */ + || (expand_or_defer_fn_1 (clone) + && cgraph_same_body_alias (cgraph_get_node (fns[0]), + clone, fns[0])))) { alias = true; if (DECL_ONE_ONLY (fns[0])) |