Remove a few more bogus returns when the switch covers all the
enumerators.
Also remove a default that led to llvm_unreachable to make another
switch warn if any enumerators fail to be covered.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@130646 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/AST/StmtPrinter.cpp b/lib/AST/StmtPrinter.cpp
index 72d71d3..0d13502 100644
--- a/lib/AST/StmtPrinter.cpp
+++ b/lib/AST/StmtPrinter.cpp
@@ -1345,7 +1345,7 @@
case BTT_TypeCompatible: return "__builtin_types_compatible_p";
case BTT_IsConvertibleTo: return "__is_convertible_to";
}
- return "";
+ llvm_unreachable("Binary type trait not covered by switch");
}
static const char *getTypeTraitName(ArrayTypeTrait ATT) {
@@ -1353,16 +1353,15 @@
case ATT_ArrayRank: return "__array_rank";
case ATT_ArrayExtent: return "__array_extent";
}
- return "";
+ llvm_unreachable("Array type trait not covered by switch");
}
static const char *getExpressionTraitName(ExpressionTrait ET) {
switch (ET) {
- default: llvm_unreachable("Unknown expression trait");
case ET_IsLValueExpr: return "__is_lvalue_expr";
case ET_IsRValueExpr: return "__is_rvalue_expr";
}
- return "";
+ llvm_unreachable("Expression type trait not covered by switch");
}
void StmtPrinter::VisitUnaryTypeTraitExpr(UnaryTypeTraitExpr *E) {