/* | |
{ dg-do run } | |
{ dg-options "-O2" } | |
*/ | |
extern void abort (void); | |
enum Status | |
{ | |
P_ON_LOWER = -4, | |
P_ON_UPPER = -2, | |
P_FREE = -1 | |
}; | |
void | |
foo (enum Status *stat, double newUpper, double lower, double max) | |
{ | |
if (newUpper >= max) | |
*stat = P_FREE; | |
else if (newUpper == lower) | |
*stat = P_ON_LOWER; | |
} | |
int | |
main () | |
{ | |
enum Status stat = P_ON_UPPER; | |
foo (&stat, 5.0, -10.0, 10.0); | |
if (stat != P_ON_UPPER) | |
abort (); | |
return 0; | |
} |