]> granicus.if.org Git - clang/commitdiff
Turn if chain into switch.
authorDaniel Dunbar <daniel@zuster.org>
Wed, 4 Nov 2009 23:41:40 +0000 (23:41 +0000)
committerDaniel Dunbar <daniel@zuster.org>
Wed, 4 Nov 2009 23:41:40 +0000 (23:41 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86071 91177308-0d34-0410-b5e6-96231b3b80d8

tools/clang-cc/clang-cc.cpp

index 95f63704014183fab58adf3d9652f19f1821bdcf..2c0c7021d597503872eb20e294d7840615828bb9 100644 (file)
@@ -1989,7 +1989,11 @@ static void ProcessInputFile(Preprocessor &PP, PreprocessorFactory &PPF,
              CreateCodeCompleter, CreateCodeCompleterData);
   }
 
-  if (PA == RunPreprocessorOnly) {    // Just lex as fast as we can, no output.
+  // Perform post processing actions and actions which don't use a consumer.
+  switch (PA) {
+  default: break;
+
+  case RunPreprocessorOnly: {    // Just lex as fast as we can, no output.
     llvm::TimeRegion Timer(ClangFrontendTimer);
     Token Tok;
     // Start parsing the specified input file.
@@ -1998,11 +2002,17 @@ static void ProcessInputFile(Preprocessor &PP, PreprocessorFactory &PPF,
       PP.Lex(Tok);
     } while (Tok.isNot(tok::eof));
     ClearSourceMgr = true;
-  } else if (PA == ParseNoop) {                  // -parse-noop
+    break;
+  }
+
+  case ParseNoop: {
     llvm::TimeRegion Timer(ClangFrontendTimer);
     ParseFile(PP, new MinimalAction(PP));
     ClearSourceMgr = true;
-  } else if (PA == PrintPreprocessedInput){  // -E mode.
+    break;
+  }
+
+  case PrintPreprocessedInput: {
     llvm::TimeRegion Timer(ClangFrontendTimer);
     if (DumpMacros)
       DoPrintMacros(PP, OS.get());
@@ -2013,6 +2023,8 @@ static void ProcessInputFile(Preprocessor &PP, PreprocessorFactory &PPF,
     ClearSourceMgr = true;
   }
 
+  }
+
   if (FixItRewrite)
     FixItRewrite->WriteFixedFile(InFile, OutputFile);