https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110866
--- Comment #2 from Andrew Pinski <pinskia at gcc dot gnu.org> --- In fact ICC rejects all cases: <source>(11): error: incorrect use of va_start va_start(va, fmt); va.engaged = 1; ^ <source>(12): error: incorrect use of va_arg va_arg(va, int); ^ <source>(14): error: incorrect use of va_copy va_copy(va, va); ^ <source>(14): error: incorrect use of va_copy va_copy(va, va); ^ <source>(16): error: incorrect use of va_end va_end(va); ^