https://gcc.gnu.org/bugzilla/show_bug.cgi?id=116135
--- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> --- Similarly for: ``` int f1(unsigned _BitInt(9) x, unsigned _BitInt(9) y, unsigned _BitInt(9) * res) { return __builtin_mul_overflow(x, y, res); } int f2(unsigned _BitInt(9) x, unsigned _BitInt(9) y, unsigned _BitInt(9) * res) { unsigned int xx = x; unsigned int yy = y; unsigned int t = xx * yy; *res = t; return (t >> (9)) != 0; } ```