Mercurial > hg > CbC > CbC_gcc
comparison gcc/testsuite/g++.dg/cpp0x/pr65398-2.C @ 111:04ced10e8804
gcc 7
author | kono |
---|---|
date | Fri, 27 Oct 2017 22:46:09 +0900 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
68:561a7518be6b | 111:04ced10e8804 |
---|---|
1 // PR c++/65398 | |
2 // { dg-do compile { target c++11 } } | |
3 | |
4 #define SA(X) static_assert((X),#X) | |
5 | |
6 constexpr char s[] = "abc"; | |
7 | |
8 SA((&s[0] + 0) == (&s[0] + 0)); | |
9 SA((&s[0] + 1) == (&s[1] + 0)); | |
10 SA((&s[0] + 2) == (&s[1] + 1)); | |
11 SA((&s[0] + 3) == (&s[1] + 2)); | |
12 SA((&s[0] + 4) == (&s[1] + 3)); | |
13 SA((&s[2] + 0) == (&s[0] + 2)); | |
14 SA((&s[2] + 1) == (&s[3] + 0)); | |
15 SA((&s[2] + 2) == (&s[3] + 1)); | |
16 SA((&s[4] + 0) == (&s[2] + 2)); | |
17 | |
18 SA((&s[0] + 0) != (&s[1] + 0)); | |
19 SA((&s[0] + 2) != (&s[1] + 0)); | |
20 SA((&s[2] + 0) != (&s[2] + 1)); | |
21 SA((&s[1] + 1) != (&s[0] + 1)); | |
22 | |
23 constexpr int l[] = { 'c', 'd', 'e', '\0' }; | |
24 | |
25 SA((&l[0] + 0) == (&l[0] + 0)); | |
26 SA((&l[0] + 1) == (&l[1] + 0)); | |
27 SA((&l[0] + 2) == (&l[1] + 1)); | |
28 SA((&l[0] + 3) == (&l[1] + 2)); | |
29 SA((&l[0] + 4) == (&l[1] + 3)); | |
30 SA((&l[2] + 0) == (&l[0] + 2)); | |
31 SA((&l[2] + 1) == (&l[3] + 0)); | |
32 SA((&l[2] + 2) == (&l[3] + 1)); | |
33 SA((&l[4] + 0) == (&l[2] + 2)); | |
34 | |
35 SA((&l[0] + 0) != (&l[1] + 0)); | |
36 SA((&l[0] + 2) != (&l[1] + 0)); | |
37 SA((&l[2] + 0) != (&l[2] + 1)); | |
38 SA((&l[1] + 1) != (&l[0] + 1)); |