https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112332
--- Comment #1 from Sergei Trofimovich <slyfox at gcc dot gnu.org> --- Slightly shorter example: typedef union { double d; int L[2]; } U; void d2b(int*); void _Py_dg_dtoa(double dd) { int be; U u; u.d = dd; if ((&u)->L[1]) d2b(&be); }