erik.pilkington added inline comments.
================ Comment at: clang/lib/Sema/SemaTemplateInstantiate.cpp:143 TSK_ExplicitSpecialization && !Function->getClassScopeSpecializationPattern())) break; ---------------- It looks like theres a bug here too: ``` template <class T> struct S { template <class T> void f() {} template <> void f<int>() {} }; ``` Will lead to a depth-2 MultiLevelTemplateArgumentList for f<int>, but I believe there should only be 1 level. I don't think theres any way to observe this though. ================ Comment at: clang/test/SemaCXX/member-spec-dr727.cpp:35 + static_assert(is_same<Cp, int>::value); + static_assert(is_same<Ap, char>::value); + }; ---------------- This fails on TOT because clang substitutes `int` for `Ap`! Repository: rC Clang https://reviews.llvm.org/D52521 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits