https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86400
--- Comment #5 from Jonathan Wakely <redi at gcc dot gnu.org> --- #include <cassert> void foo2 () { static char root[1][2] = {"/"}; auto len = __builtin_strlen(*root); assert(len == 1); } int main () { foo2 (); } $ g++ set.cc -O1 -foptimize-strlen $ ./a.out a.out: set.cc:7: void foo2(): Assertion `len == 1' failed. Aborted (core dumped)