https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104468
--- Comment #2 from Erik Carstensen <erik.carstensen at intel dot com> --- Perhaps the problem is unrelated to function calls; it seems the time is quadratic in the number of struct literals: If I change argument types to pointers, then the issue remains if I pass the args as ({static s_t x; x=(s_t){{0}};&x;}), but it vanishes if I pass them as ({static s_t x=(s_t){{0}};&x;}).