From: Daniel Dunbar Date: Wed, 4 Nov 2009 23:41:40 +0000 (+0000) Subject: Turn if chain into switch. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=593c41fb0bc6dd556401440c63754e28b93d803b;p=clang Turn if chain into switch. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86071 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/tools/clang-cc/clang-cc.cpp b/tools/clang-cc/clang-cc.cpp index 95f6370401..2c0c7021d5 100644 --- a/tools/clang-cc/clang-cc.cpp +++ b/tools/clang-cc/clang-cc.cpp @@ -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);