// RUN: %clang_cc1 -std=c++2a -x c++ %s -verify // expected-no-diagnostics template concept C = true; namespace ns { template concept D = true; } void foo1(C auto a, C auto b, ns::D auto c, ns::D auto d, const C auto e, const C auto f, const ns::D auto g, const ns::D auto h); void foo2(C auto a); void foo3(C auto b); void foo4(ns::D auto c); void foo5(ns::D auto d); void foo6(const C auto e); void foo7(const C auto f); void foo8(const ns::D auto g); void foo9(const ns::D auto h); struct S1 { S1(C auto a, C auto b, ns::D auto c, ns::D auto d, const C auto e, const C auto f, const ns::D auto g, const ns::D auto h); }; struct S2 { S2(C auto a); }; struct S3 { S3(C auto b); }; struct S4 { S4(ns::D auto c); }; struct S5 { S5(ns::D auto d); }; struct S6 { S6(const C auto e); }; struct S7 { S7(const C auto f); }; struct S8 { S8(const ns::D auto g); }; struct S9 { S9(const ns::D auto h); };