/* PR middle-end/115887 */ /* { dg-do compile { target { bitint && int128 } } } */ /* { dg-options "-O -fnon-call-exceptions -finstrument-functions -w" } */ float f; #if __BITINT_MAXWIDTH__ >= 1024 #define N1024 1024 #define N127 127 #define N256 256 #else #define N1024 64 #define N127 64 #define N256 64 #endif _BitInt(N1024) a; static inline void bar (_BitInt(N127) b, _BitInt(N256) c, int, int, int, int, int, int, int, int, int, int, int, int, int, int, int, int, int, int *) { b %= 0; do c -= *(short *) 0; while (__builtin_add_overflow_p (a, 0, 0)); __int128 d = b + c + f; } void foo (void) { int x; bar (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, &x); while (x) ; }