https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67515
--- Comment #8 from Jakub Jelinek <jakub at gcc dot gnu.org> --- You can get the same segfault with clang++ e.g. on struct A { int a; A () {} int foo () { return 1; } virtual ~A () {} }; alignas (A) char buf[sizeof (A)]; void foo (void *x) { A *y = (A *) x; y->foo (); } int main () { __builtin_memset (buf, '\x7f', sizeof 0); foo (&buf); } (but as in this case it is really called on object not even started to be constructed, there is no other workaround than to slow down the library).