aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Schulze Frielinghaus <stefansf@linux.ibm.com>2020-04-27 18:09:07 +0200
committerStefan Schulze Frielinghaus <stefansf@linux.ibm.com>2020-04-29 15:51:47 +0200
commit1657178f59bf0c5b269a668bcdcc432fac3bbdd0 (patch)
tree25f29525f2df3693ce7f659b6c4fa545605d6993
parenta7201a085cc30f89944931d8fb1d7936f02a169f (diff)
downloadgcc-1657178f59bf0c5b269a668bcdcc432fac3bbdd0.zip
gcc-1657178f59bf0c5b269a668bcdcc432fac3bbdd0.tar.gz
gcc-1657178f59bf0c5b269a668bcdcc432fac3bbdd0.tar.bz2
tree-optimization: Fix use of uninitialized variable [PR94774]
Array retval is not necessarily initialized by function is_call_safe and may be used afterwards. Thus, initialize it explicitly. gcc/ChangeLog: 2020-04-29 Stefan Schulze Frielinghaus <stefansf@linux.ibm.com> PR tree-optimization/94774 * gimple-ssa-sprintf.c (try_substitute_return_value): Initialize variable retval.
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/gimple-ssa-sprintf.c2
2 files changed, 7 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index a110062..f33193b 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2020-04-29 Stefan Schulze Frielinghaus <stefansf@linux.ibm.com>
+
+ PR tree-optimization/94774
+ * gimple-ssa-sprintf.c (try_substitute_return_value): Initialize
+ variable retval.
+
2020-04-29 Richard Sandiford <richard.sandiford@arm.com>
* calls.h (cxx17_empty_base_field_p): Turn into a function declaration.
diff --git a/gcc/gimple-ssa-sprintf.c b/gcc/gimple-ssa-sprintf.c
index 1879686..011c3e2 100644
--- a/gcc/gimple-ssa-sprintf.c
+++ b/gcc/gimple-ssa-sprintf.c
@@ -4120,7 +4120,7 @@ try_substitute_return_value (gimple_stmt_iterator *gsi,
bool removed = false;
/* The minimum and maximum return value. */
- unsigned HOST_WIDE_INT retval[2];
+ unsigned HOST_WIDE_INT retval[2] = {0};
bool safe = is_call_safe (info, res, true, retval);
if (safe