https://gcc.gnu.org/bugzilla/show_bug.cgi?id=118104

--- Comment #2 from Marek Polacek <mpolacek at gcc dot gnu.org> ---
For "void(Ts, Us)..." in the test we end up in use_pack_expansion_extra_args_p
with a TYPE _PACK_EXPANSION with pattern=void(Ts, Us) and the list of param
packs={Us, Ts}; parm_packs is { Ts -> <int, int>, Us -> <A, P...> }.  We
compare int to A, both are non-expansion args so this is OK, and then int and
P... and we get a mismatch and run into that assert.

I still do not understand what that assert is meant to catch.

Reply via email to