1 // PR c++/55992
2 // { dg-do compile { target c++11 } }
3 
4 template<unsigned N>
5 struct A {};
6 
7 template<unsigned MaxP>
8 struct test
9 {
poletest10   static constexpr unsigned pole(unsigned P)
11   { return P>MaxP? MaxP:P; }
12 
13   template<unsigned P>
14   using my_array = A<pole(P)>;
15 
16   template<unsigned P>
17   void do_something(my_array<P> const&, my_array<P>);
18 };
19