https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80924
Richard Biener <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |diagnostic Status|UNCONFIRMED |NEW Last reconfirmed| |2017-05-31 CC| |msebor at gcc dot gnu.org Version|unknown |7.1.1 Ever confirmed|0 |1 --- Comment #1 from Richard Biener <rguenth at gcc dot gnu.org> --- Confirmed. The warning is clearly wrong. '-999\0' is only 5 chars. <bb 3> [99.00%]: # RANGE [0, 999] NONZERO 1023 # idx_11 = PHI <idx_7(3), 0(2)> # USE = nonlocal null { D.2288 } (escaped) # CLB = nonlocal null { D.2288 } (escaped) snprintf (&buf, 5, "-%d", idx_11); so it even gets correct range info... (not before VRP2 though)