Mercurial > hg > CbC > CbC_gcc
comparison gcc/testsuite/g++.dg/ext/constexpr-vla2.C @ 131:84e7813d76e9
gcc-8.2
author | mir3636 |
---|---|
date | Thu, 25 Oct 2018 07:37:49 +0900 |
parents | 04ced10e8804 |
children |
comparison
equal
deleted
inserted
replaced
111:04ced10e8804 | 131:84e7813d76e9 |
---|---|
3 | 3 |
4 constexpr int | 4 constexpr int |
5 fn_bad (int n) | 5 fn_bad (int n) |
6 { | 6 { |
7 __extension__ int a [n] = { 0 }; | 7 __extension__ int a [n] = { 0 }; |
8 int z = a [0] + (n ? fn_bad (n - 1) : 0); | 8 int z = a [0] + (n ? fn_bad (n - 1) : 0); // { dg-message "in .constexpr. expansion of " } |
9 return z; | 9 return z; |
10 } | 10 } |
11 | 11 |
12 constexpr int | 12 constexpr int |
13 fn_ok (int n) | 13 fn_ok (int n) |
16 int z = a [0] + (n > 1 ? fn_ok (n - 1) : 0); | 16 int z = a [0] + (n > 1 ? fn_ok (n - 1) : 0); |
17 return z; | 17 return z; |
18 } | 18 } |
19 | 19 |
20 constexpr int i1 = fn_ok (3); | 20 constexpr int i1 = fn_ok (3); |
21 constexpr int i2 = fn_bad (3); // { dg-error "array subscript" } | 21 constexpr int i2 = fn_bad (3); // { dg-error "array subscript|in .constexpr. expansion of " } |