brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.2 KiB · 6562389 Raw
44 lines · cpp
1// RUN: %clang_cc1 -std=c++2a -x c++ %s -verify2// expected-no-diagnostics3 4template<typename T, typename U=void>5concept C = true;6 7namespace ns {8  template<typename T, typename U=void>9  concept D = true;10}11 12void foo1(C auto a,13          C<int> auto b,14          ns::D auto c,15          ns::D<int> auto d,16          const C auto e,17          const C<int> auto f,18          const ns::D auto g,19          const ns::D<int> auto h);20void foo2(C auto a);21void foo3(C<int> auto b);22void foo4(ns::D auto c);23void foo5(ns::D<int> auto d);24void foo6(const C auto e);25void foo7(const C<int> auto f);26void foo8(const ns::D auto g);27void foo9(const ns::D<int> auto h);28 29struct S1 { S1(C auto a,30               C<int> auto b,31               ns::D auto c,32               ns::D<int> auto d,33               const C auto e,34               const C<int> auto f,35               const ns::D auto g,36               const ns::D<int> auto h); };37struct S2 { S2(C auto a); };38struct S3 { S3(C<int> auto b); };39struct S4 { S4(ns::D auto c); };40struct S5 { S5(ns::D<int> auto d); };41struct S6 { S6(const C auto e); };42struct S7 { S7(const C<int> auto f); };43struct S8 { S8(const ns::D auto g); };44struct S9 { S9(const ns::D<int> auto h); };