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
Be careful about comdat boundary in ICF (PR ipa/82352).
[official-gcc.git]
/
gcc
/
testsuite
/
g++.dg
/
opt
/
pr7503-1.C
blob
d366a618030d83b611d42532a72b712116e776fa
1
// PR c++/7503
2
// { dg-do run }
3
// { dg-options "-O2" }
4
5
extern "C" void abort();
6
7
void test1a()
8
{
9
int A = 4;
10
int B = 4;
11
12
(A > B ? A : B) = 1;
13
if (A != 4 || B != 1)
14
abort ();
15
}
16
17
void test1b()
18
{
19
int A = 3;
20
int B = 5;
21
22
(A > B ? A : B) = 1;
23
if (A != 3 || B != 1)
24
abort ();
25
}
26
27
void test1c()
28
{
29
int A = 5;
30
int B = 3;
31
32
(A > B ? A : B) = 1;
33
if (A != 1 || B != 3)
34
abort ();
35
}
36
37
void test2a()
38
{
39
int A = 4;
40
int B = 4;
41
42
(A >= B ? A : B) = 1;
43
if (A != 1 || B != 4)
44
abort ();
45
}
46
47
void test2b()
48
{
49
int A = 3;
50
int B = 5;
51
52
(A >= B ? A : B) = 1;
53
if (A != 3 || B != 1)
54
abort ();
55
}
56
57
void test2c()
58
{
59
int A = 5;
60
int B = 3;
61
62
(A >= B ? A : B) = 1;
63
if (A != 1 || B != 3)
64
abort ();
65
}
66
67
void test3a()
68
{
69
int A = 4;
70
int B = 4;
71
72
(A < B ? A : B) = 1;
73
if (A != 4 || B != 1)
74
abort ();
75
}
76
77
void test3b()
78
{
79
int A = 3;
80
int B = 5;
81
82
(A < B ? A : B) = 1;
83
if (A != 1 || B != 5)
84
abort ();
85
}
86
87
void test3c()
88
{
89
int A = 5;
90
int B = 3;
91
92
(A < B ? A : B) = 1;
93
if (A != 5 || B != 1)
94
abort ();
95
}
96
97
void test4a()
98
{
99
int A = 4;
100
int B = 4;
101
102
(A <= B ? A : B) = 1;
103
if (A != 1 || B != 4)
104
abort ();
105
}
106
107
void test4b()
108
{
109
int A = 3;
110
int B = 5;
111
112
(A <= B ? A : B) = 1;
113
if (A != 1 || B != 5)
114
abort ();
115
}
116
117
void test4c()
118
{
119
int A = 5;
120
int B = 3;
121
122
(A <= B ? A : B) = 1;
123
if (A != 5 || B != 1)
124
abort ();
125
}
126
127
128
int main()
129
{
130
test1a();
131
test1b();
132
test1c();
133
134
test2a();
135
test2b();
136
test2c();
137
138
test3a();
139
test3b();
140
test3c();
141
142
test4a();
143
test4b();
144
test4c();
145
146
return 0;
147
}
148