https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85315
--- Comment #14 from Martin Sebor <msebor at gcc dot gnu.org> --- Andrew, we discussed the same idea for built-in functions at Couldron. For instance, in: void f (const char *s, int n) { char a[8]; memcpy (a, s, n); // n must be in [0, 8] if (n < 0 || n > 8) // fold to false abort (); }