2018-11-07 Richard Biener <rguenther@suse.de>
[official-gcc.git] / gcc / testsuite / g++.dg / cpp1z / nontype-auto3.C
blobb1aed4392a78eac4bca1af529cf3dd55f861a14c
1 // Testcase from P0127R2
2 // { dg-do compile { target c++17 } }
4 template<auto n> struct B { decltype(n) f = n; };
5 B<5> b1;   // OK: template parameter type is int
6 B<'a'> b2; // OK: template parameter type is char
7 B<2.5> b3; // { dg-error "" } template parameter type cannot be double
9 template <auto n> void f(B<n>) { }
11 int main()
13   f(B<42>());
14   f(B<'a'>());