1 /* { dg-do compile } */ 2 /* { dg-options "-Wc++-compat" } */ 3 enum E1 { A }; 4 enum E2 { B }; 5 int f1(int i)6f1 (int i) 7 { 8 return (int) (i ? A : B); /* { dg-warning "invalid in C\[+\]\[+\]" } */ 9 } 10 extern enum E1 f2(); 11 int f3(int i)12f3 (int i) 13 { 14 return (int) (i ? f2 () : B); /* { dg-warning "invalid in C\[+\]\[+\]" } */ 15 } 16