// RUN: %clang_cc1 -std=c++11 %s -verify
// expected-no-diagnostics
structValue{constexprValue(intn):n(n){}constexproperatorshort()const{return n;}int n;};enumE{ E0, E1 };structAlt{constexproperatorE()const{return E0;}};constexprshort s =Alt();voidtest(Value v){switch(v){caseAlt():case E1:caseValue(2):case3:break;}switch(Alt a =Alt()){caseAlt():case E1:caseValue(2):case3:break;}switch(E0){caseAlt():case E1:// FIXME: These should produce a warning that 2 and 3 are not values of the
// enumeration.
caseValue(2):case3:break;}}