]> granicus.if.org Git - clang/commitdiff
Make all cases that we don't handle explicit.
authorZhongxing Xu <xuzhongxing@gmail.com>
Tue, 13 Apr 2010 13:15:19 +0000 (13:15 +0000)
committerZhongxing Xu <xuzhongxing@gmail.com>
Tue, 13 Apr 2010 13:15:19 +0000 (13:15 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101129 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Checker/GRExprEngine.cpp

index 8206c506ff27328d6f26ce3d8f2a1aa41429c8e5..88c421085611223a4e32de6a4eb1f598ac14ff2e 100644 (file)
@@ -583,6 +583,8 @@ void GRExprEngine::Visit(Stmt* S, ExplodedNode* Pred, ExplodedNodeSet& Dst) {
   }
 
   switch (S->getStmtClass()) {
+    default:
+      llvm_unreachable("Unhandled stmt class");
     // C++ stuff we don't support yet.
     case Stmt::CXXTypeidExprClass:
     case Stmt::CXXBoolLiteralExprClass:
@@ -611,7 +613,16 @@ void GRExprEngine::Visit(Stmt* S, ExplodedNode* Pred, ExplodedNodeSet& Dst) {
       break;
     }
 
-    default:
+    case Stmt::AddrLabelExprClass:
+    case Stmt::IntegerLiteralClass:
+    case Stmt::CharacterLiteralClass:
+    case Stmt::FloatingLiteralClass:
+    case Stmt::ImplicitValueInitExprClass:
+    case Stmt::ObjCSuperExprClass:
+    case Stmt::ObjCStringLiteralClass:
+    case Stmt::ObjCSelectorExprClass:
+    case Stmt::ObjCImplicitSetterGetterRefExprClass:
+    case Stmt::PredefinedExprClass:
       // Cases we intentionally have "default" handle:
       //   AddrLabelExpr, IntegerLiteral, CharacterLiteral