mirror of
https://github.com/cc65/cc65.git
synced 2024-12-23 04:30:10 +00:00
46 lines
575 B
C
46 lines
575 B
C
|
|
/* pr #1425 - Ternary fixes */
|
|
|
|
unsigned char fails = 0;
|
|
|
|
void test1(void)
|
|
{
|
|
int x = 0;
|
|
x ? (void)x-- : (void)1;
|
|
if (x != 0) {
|
|
fails++;
|
|
}
|
|
}
|
|
|
|
int test2(void)
|
|
{
|
|
int x = 0, y = 0;
|
|
x ? (void)x--, (void)y++ : (void)1;
|
|
if (x != 0) {
|
|
fails++;
|
|
}
|
|
if (y != 0) {
|
|
fails++;
|
|
}
|
|
}
|
|
|
|
void test3(void)
|
|
{
|
|
int x = 0, y = 0;
|
|
x ? ((void)x--, (void)y++) : (void)1;
|
|
if (x != 0) {
|
|
fails++;
|
|
}
|
|
if (y != 0) {
|
|
fails++;
|
|
}
|
|
}
|
|
|
|
int main(void)
|
|
{
|
|
test1();
|
|
test2();
|
|
test3();
|
|
return fails;
|
|
}
|