1// { dg-do run }
2// { dg-options "-O2 -Wtype-limits -std=c++0x" }
3extern void link_error (void);
4
5enum Alpha : unsigned char {
6 ZERO = 0, ONE, TWO, THREE
7};
8
9Alpha a2;
10
11int m1 = -1;
12int GetM1() {
13 return m1;
14}
15
16int main() {
17 a2 = static_cast<Alpha>(GetM1());
18 if (a2 == -1) {	// { dg-warning "always false due" }
19    link_error ();
20 }
21 if (-1 == a2) {	// { dg-warning "always false due" }
22    link_error ();
23 }
24 return 0;
25}
26