aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-inline.c
diff options
context:
space:
mode:
authorRichard Biener <rguenther@suse.de>2019-09-05 11:02:43 +0000
committerRichard Biener <rguenth@gcc.gnu.org>2019-09-05 11:02:43 +0000
commite7414688f16c4c9db2dacbc31da683887b4ba1bd (patch)
tree69370df9bc5fa0757ebe5cfa4abaf676b81a6619 /gcc/tree-inline.c
parent0fd3ee92340b158f8ac283b6dd25f5612ddf3694 (diff)
downloadgcc-e7414688f16c4c9db2dacbc31da683887b4ba1bd.zip
gcc-e7414688f16c4c9db2dacbc31da683887b4ba1bd.tar.gz
gcc-e7414688f16c4c9db2dacbc31da683887b4ba1bd.tar.bz2
re PR middle-end/90501 (ICE: address taken, but ADDRESSABLE bit not set)
2019-09-05 Richard Biener <rguenther@suse.de> PR middle-end/90501 * tree-inline.c (declare_return_variable): Mark the return slot as addressable after building an address of it. From-SVN: r275401
Diffstat (limited to 'gcc/tree-inline.c')
-rw-r--r--gcc/tree-inline.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/gcc/tree-inline.c b/gcc/tree-inline.c
index 46bbec1..b9c1a3b 100644
--- a/gcc/tree-inline.c
+++ b/gcc/tree-inline.c
@@ -3569,6 +3569,7 @@ declare_return_variable (copy_body_data *id, tree return_slot, tree modify_dest,
taken by alias analysis. */
gcc_assert (TREE_CODE (return_slot) != SSA_NAME);
var = return_slot_addr;
+ mark_addressable (return_slot);
}
else
{