131
|
1 /* PR c/83801 */
|
|
2 /* { dg-do compile } */
|
|
3 /* { dg-options "-O2 -fdump-tree-original" } */
|
|
4
|
|
5 static const char a[] = "01234567890123456789012345678901234567890123456789012345678901234567890123456789";
|
|
6 static const char b = a[27];
|
|
7 struct S { const char c[30]; const char d[30]; };
|
|
8 static const struct S e[] = { { "01234567890123456789012345678", "90123456789012345678901234567" },
|
|
9 { "89012345678901234567890123456", "78901234567890123456789012345" } };
|
|
10 static const char f = e[1].c[4];
|
|
11
|
|
12 char
|
|
13 foo (int i)
|
|
14 {
|
|
15 return a[i];
|
|
16 }
|
|
17
|
|
18 char
|
|
19 bar (int i)
|
|
20 {
|
|
21 return e[0].d[i];
|
|
22 }
|
|
23
|
|
24 /* { dg-final { scan-tree-dump {a\[i]} "original" } } */
|
|
25 /* { dg-final { scan-tree-dump-not {"01234567890123456789012345678901234567890123456789012345678901234567890123456789"\[i]} "original" } } */
|
|
26 /* { dg-final { scan-tree-dump {e\[0]\.d\[i]} "original" } } */
|
|
27 /* { dg-final { scan-tree-dump-not {"90123456789012345678901234567"\[i]} "original" } } */
|