diff options
author | Martin Sebor <msebor@redhat.com> | 2018-05-22 19:37:48 +0000 |
---|---|---|
committer | Martin Sebor <msebor@gcc.gnu.org> | 2018-05-22 13:37:48 -0600 |
commit | 36537a1c41adabc6da23ae19e7c3a933582b19dd (patch) | |
tree | a8f5351bc207a35be81c86a6e2470a214629639e /gcc/calls.c | |
parent | aab778d3825052d262e3fc6d87af67e7cc196273 (diff) | |
download | gcc-36537a1c41adabc6da23ae19e7c3a933582b19dd.zip gcc-36537a1c41adabc6da23ae19e7c3a933582b19dd.tar.gz gcc-36537a1c41adabc6da23ae19e7c3a933582b19dd.tar.bz2 |
PR middle-end/85359 - duplicate -Wstringop-overflow for a strcmp call with a nonstring pointer
gcc/ChangeLog:
PR middle-end/85359
* builtins.c (expand_builtin_strcpy): Call maybe_warn_nonstring_arg
only when expasion succeeds.
(expand_builtin_strcmp): Same.
(expand_builtin_strncmp): Same.
gcc/testsuite/ChangeLog:
PR middle-end/85359
* gcc.dg/attr-nonstring.c: New test.
From-SVN: r260550
Diffstat (limited to 'gcc/calls.c')
-rw-r--r-- | gcc/calls.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/gcc/calls.c b/gcc/calls.c index 9d8b96f..35bcff7 100644 --- a/gcc/calls.c +++ b/gcc/calls.c @@ -1671,7 +1671,10 @@ maybe_warn_nonstring_arg (tree fndecl, tree exp) /* Determine the range of the bound argument (if specified). */ tree bndrng[2] = { NULL_TREE, NULL_TREE }; if (bound) - get_size_range (bound, bndrng); + { + STRIP_NOPS (bound); + get_size_range (bound, bndrng); + } if (*lenrng) { |