PR c++/85765 - SFINAE and non-type default template arg.
[official-gcc.git] / gcc / testsuite / g++.dg / cpp0x / constexpr-array-ptr3.C
blob2338f70f0762ed1447f3a710a621db1174b00f7f
1 // { dg-do compile { target c++11 } }
3 constexpr bool is_negative(int x) {
4   return x < 0;
7 constexpr bool do_has_neg(const int* x, bool(*p)(int)) {
8  return p(x[0]) || p(x[1]);  // Line 6
11 constexpr bool has_neg(const int (&x)[2], bool(*p)(int)) {
12  return do_has_neg(x, p); // Line 10
15 constexpr int a[] = {1, -2};
17 constexpr auto answer = has_neg(a, is_negative); // Line 15
19 static_assert(answer, "Error");