From 201d3fb13c0fe7b22bdf6832fe16c317036aad7c Mon Sep 17 00:00:00 2001 From: Rafael Espindola Date: Wed, 7 Aug 2013 12:54:47 +0000 Subject: [PATCH] Indicate success for simple options when clang called with -cc1. Patch by David Wiberg. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187888 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/FrontendTool/ExecuteCompilerInvocation.cpp | 6 +++--- test/Frontend/cc1-return-codes.c | 4 ++++ 2 files changed, 7 insertions(+), 3 deletions(-) create mode 100644 test/Frontend/cc1-return-codes.c diff --git a/lib/FrontendTool/ExecuteCompilerInvocation.cpp b/lib/FrontendTool/ExecuteCompilerInvocation.cpp index 53f373d4f7..2f6d4b29b6 100644 --- a/lib/FrontendTool/ExecuteCompilerInvocation.cpp +++ b/lib/FrontendTool/ExecuteCompilerInvocation.cpp @@ -183,7 +183,7 @@ bool clang::ExecuteCompilerInvocation(CompilerInstance *Clang) { Opts->PrintHelp(llvm::outs(), "clang -cc1", "LLVM 'Clang' Compiler: http://clang.llvm.org", /*Include=*/ driver::options::CC1Option, /*Exclude=*/ 0); - return 0; + return true; } // Honor -version. @@ -191,7 +191,7 @@ bool clang::ExecuteCompilerInvocation(CompilerInstance *Clang) { // FIXME: Use a better -version message? if (Clang->getFrontendOpts().ShowVersion) { llvm::cl::PrintVersionMessage(); - return 0; + return true; } // Load any requested plugins. @@ -223,7 +223,7 @@ bool clang::ExecuteCompilerInvocation(CompilerInstance *Clang) { // This should happen AFTER plugins have been loaded! if (Clang->getAnalyzerOpts()->ShowCheckerHelp) { ento::printCheckerHelp(llvm::outs(), Clang->getFrontendOpts().Plugins); - return 0; + return true; } #endif diff --git a/test/Frontend/cc1-return-codes.c b/test/Frontend/cc1-return-codes.c new file mode 100644 index 0000000000..da329b9342 --- /dev/null +++ b/test/Frontend/cc1-return-codes.c @@ -0,0 +1,4 @@ +// cc1 immediate arguments (arguments which displays information and exits) +// shall exit indicating success (return code 0) +// RUN: %clang -cc1 -help +// RUN: %clang -cc1 -version -- 2.50.1