aboutsummaryrefslogtreecommitdiff
path: root/gcc/calls.c
diff options
context:
space:
mode:
authormsebor <msebor@138bc75d-0d04-0410-961f-82ee72b054a4>2018-05-22 19:37:48 +0000
committermsebor <msebor@138bc75d-0d04-0410-961f-82ee72b054a4>2018-05-22 19:37:48 +0000
commit0b39ade890c4bf8fd7d57b3fb7ddcdad066d2404 (patch)
treea8f5351bc207a35be81c86a6e2470a214629639e /gcc/calls.c
parentb859b598b18a42711327ff0063aae10da84abefb (diff)
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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@260550 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/calls.c')
-rw-r--r--gcc/calls.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/gcc/calls.c b/gcc/calls.c
index 9d8b96f34ad..35bcff7c6e5 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)
{