aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-ssa-strlen.c
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2017-11-15 09:40:32 +0100
committerJakub Jelinek <jakub@gcc.gnu.org>2017-11-15 09:40:32 +0100
commit65205a116a8d1c076f0709d92acad2453caa1efb (patch)
treef2e71fcca17a2b30d31b87b275d57b2ddc37d2c4 /gcc/tree-ssa-strlen.c
parent9879232c98696816d0d81c12ed207db241a55c16 (diff)
downloadgcc-65205a116a8d1c076f0709d92acad2453caa1efb.zip
gcc-65205a116a8d1c076f0709d92acad2453caa1efb.tar.gz
gcc-65205a116a8d1c076f0709d92acad2453caa1efb.tar.bz2
re PR tree-optimization/82977 (AddressSanitizer: heap-use-after-free in strlen_optimize_stmt .././../gcc/tree-ssa-strlen.c:2971)
PR tree-optimization/82977 * tree-ssa-strlen.c (strlen_optimize_stmt): Pass a reference to a copy constructed temporary to strlen_to_stridx.put. From-SVN: r254757
Diffstat (limited to 'gcc/tree-ssa-strlen.c')
-rw-r--r--gcc/tree-ssa-strlen.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/tree-ssa-strlen.c b/gcc/tree-ssa-strlen.c
index 2efa182..ff32301 100644
--- a/gcc/tree-ssa-strlen.c
+++ b/gcc/tree-ssa-strlen.c
@@ -2968,7 +2968,7 @@ strlen_optimize_stmt (gimple_stmt_iterator *gsi)
tree rhs1 = gimple_assign_rhs1 (stmt);
if (stridx_strlenloc *ps = strlen_to_stridx.get (rhs1))
- strlen_to_stridx.put (lhs, *ps);
+ strlen_to_stridx.put (lhs, stridx_strlenloc (*ps));
}
else if (TREE_CODE (lhs) != SSA_NAME && !TREE_SIDE_EFFECTS (lhs))
{