File tree Expand file tree Collapse file tree 2 files changed +16
-0
lines changed
Expand file tree Collapse file tree 2 files changed +16
-0
lines changed Original file line number Diff line number Diff line change @@ -5417,6 +5417,7 @@ QualType TreeTransform<Derived>::TransformTypeInObjectScope(
54175417 case TypeLoc::Typedef:
54185418 case TypeLoc::TemplateSpecialization:
54195419 case TypeLoc::SubstTemplateTypeParm:
5420+ case TypeLoc::SubstTemplateTypeParmPack:
54205421 case TypeLoc::PackIndexing:
54215422 case TypeLoc::Enum:
54225423 case TypeLoc::Record:
Original file line number Diff line number Diff line change @@ -167,3 +167,18 @@ namespace unresolved_using {
167167 };
168168 template struct C <int >;
169169} // namespace unresolved_using
170+
171+ #if __cplusplus >= 201703L
172+ namespace SubstTemplateTypeParmPackType {
173+ template <int ...> struct A {};
174+
175+ template <class ... Ts> void f () {
176+ []<int ... Is>(A<Is...>) { (Ts::g (Is) && ...); }(A<0 >{});
177+ // expected-warning@-1 {{explicit template parameter list for lambdas is a C++20 extension}}
178+ };
179+
180+ struct B { static void g (int ); };
181+
182+ template void f<B>();
183+ } // namespace SubstTemplateTypeParmPackType
184+ #endif
You can’t perform that action at this time.
0 commit comments