When mangling a template specialization where two consecutive template arguments are both packs, MSVC inserts the separator "$$Z" between the two arguments to disambiguate between the case of { { int, int }, { int } } and { { int }, { int, int } }. I've updated Clang's MSVC mangler to do the same, and added a test case to check that the separator is inserted correctly.
Details
Details
Diff Detail
Diff Detail