repo.or.cz
/
official-gcc.git
/
blob
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
log
|
graphiclog1
|
graphiclog2
|
commit
|
commitdiff
|
tree
|
refs
|
edit
|
fork
blame
|
history
|
raw
|
HEAD
Split print_rtx into subroutines
[official-gcc.git]
/
gcc
/
testsuite
/
gcc.dg
/
pr65345-2.c
blob
c9adffb5f5aff9344367fef5237e99e474a84cd3
1
/* PR c/65345 */
2
/* { dg-do run } */
3
/* { dg-require-effective-target sync_int_long } */
4
/* { dg-options "" } */
5
6
#define CHECK(X) if (!(X)) __builtin_abort ()
7
8
_Atomic
int
i
=
5
;
9
_Atomic
int
j
=
2
;
10
11
void
12
fn1
(
int
a
[
i
=
0
])
13
{
14
}
15
16
void
17
fn2
(
int
a
[
i
+=
2
])
18
{
19
}
20
21
void
22
fn3
(
int
a
[++
i
])
23
{
24
}
25
26
void
27
fn4
(
int
a
[++
i
])
28
{
29
}
30
31
void
32
fn5
(
int
a
[++
i
][
j
=
10
])
33
{
34
}
35
36
void
37
fn6
(
int
a
[
i
=
7
][
j
--])
38
{
39
}
40
41
int
42
main
()
43
{
44
int
a
[
10
];
45
int
aa
[
10
][
10
];
46
fn1
(
a
);
47
CHECK
(
i
==
0
);
48
fn2
(
a
);
49
CHECK
(
i
==
2
);
50
fn3
(
a
);
51
CHECK
(
i
==
3
);
52
fn4
(
a
);
53
CHECK
(
i
==
4
);
54
fn5
(
aa
);
55
CHECK
(
i
==
5
);
56
CHECK
(
j
==
10
);
57
fn6
(
aa
);
58
CHECK
(
i
==
7
);
59
CHECK
(
j
==
9
);
60
}