annotate gcc/testsuite/g++.dg/cpp0x/constexpr-array-ptr.C @ 111:04ced10e8804

gcc 7
author kono
date Fri, 27 Oct 2017 22:46:09 +0900
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
111
kono
parents:
diff changeset
1 // { dg-do compile { target c++11 } }
kono
parents:
diff changeset
2
kono
parents:
diff changeset
3 template<class T>
kono
parents:
diff changeset
4 constexpr T do_get(T* x, int n) {
kono
parents:
diff changeset
5 return x[n - 1];
kono
parents:
diff changeset
6 }
kono
parents:
diff changeset
7
kono
parents:
diff changeset
8 template<class T, int N>
kono
parents:
diff changeset
9 constexpr T get(T (&x)[N]) {
kono
parents:
diff changeset
10 return do_get(x, N);
kono
parents:
diff changeset
11 }
kono
parents:
diff changeset
12
kono
parents:
diff changeset
13 constexpr int arr_i[] = {1};
kono
parents:
diff changeset
14 constexpr auto var = get(arr_i); // #2
kono
parents:
diff changeset
15 static_assert(var == arr_i[0], "Error");