diff options
Diffstat (limited to 'gcc/calls.c')
-rw-r--r-- | gcc/calls.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/gcc/calls.c b/gcc/calls.c index 51ad55f..ae90447 100644 --- a/gcc/calls.c +++ b/gcc/calls.c @@ -1614,6 +1614,10 @@ maybe_warn_nonstring_arg (tree fndecl, tree exp) if (!get_attr_nonstring_decl (arg)) { c_strlen_data lendata = { }; + /* Set MAXBOUND to an arbitrary non-null non-integer + node as a request to have it set to the length of + the longest string in a PHI. */ + lendata.maxbound = arg; get_range_strlen (arg, &lendata, /* eltsize = */ 1); maxlen = lendata.maxbound; } @@ -1639,6 +1643,10 @@ maybe_warn_nonstring_arg (tree fndecl, tree exp) if (!get_attr_nonstring_decl (arg)) { c_strlen_data lendata = { }; + /* Set MAXBOUND to an arbitrary non-null non-integer + node as a request to have it set to the length of + the longest string in a PHI. */ + lendata.maxbound = arg; get_range_strlen (arg, &lendata, /* eltsize = */ 1); maxlen = lendata.maxbound; } |