/* { dg-do compile } */ | |
/* { dg-options "-O2 -fdump-tree-optimized" } */ | |
/* PR tree-optmization/103281 */ | |
void foo(void); | |
static unsigned b; | |
int main() { | |
for (; b < 3; b++) { | |
char c = b; | |
char a = c ? c : c << 1; | |
if (!(a < 1 ^ b)) | |
foo(); | |
} | |
} | |
/* the call to foo should be optimized away. */ | |
/* { dg-final { scan-tree-dump-not "foo " "optimized" } } */ |