https://gcc.gnu.org/bugzilla/show_bug.cgi?id=108356
--- Comment #5 from Andrew Macleod <amacleod at redhat dot com> --- The full comment is the test case is: /* Verify offsets in an anti-range. */ <...> /* The initial source range is valid but the final range after the access has complete cannot be. The value mentioned in the warning is the final offset, i.e., 7 + 3. Including the whole final range because would be confusing (the upper bound would either be negative or a very large positive number) so only the lower bound is included. */ T (char, 9, a, a + SAR ( 0, 6), 3); /* { dg-warning "forming offset 9 is out of the bounds \\\[0, 9] of object " "memcpy" } */ I'm not sure what it means exactly, but I presume -1 is a bad thing. I find it marginally disturbing that this is happening in a function that is focused on "verifying offsets in an anti-range" as we move away from anti-ranges. That one of 7 warnings affected in this function.