Author: Jan Svoboda Date: 2020-12-09T10:35:07+01:00 New Revision: 13e4e5ed59c92d81ee5fee55f20ecf1842ec8cf3
URL: https://github.com/llvm/llvm-project/commit/13e4e5ed59c92d81ee5fee55f20ecf1842ec8cf3 DIFF: https://github.com/llvm/llvm-project/commit/13e4e5ed59c92d81ee5fee55f20ecf1842ec8cf3.diff LOG: Revert "[clang][cli] CompilerInvocationTest: add tests for boolean options" Differential Revision of original patch: https://reviews.llvm.org/D92774 Added: Modified: clang/unittests/Frontend/CompilerInvocationTest.cpp Removed: ################################################################################ diff --git a/clang/unittests/Frontend/CompilerInvocationTest.cpp b/clang/unittests/Frontend/CompilerInvocationTest.cpp index b0fe11dd8d5b..c3bdd6bff65c 100644 --- a/clang/unittests/Frontend/CompilerInvocationTest.cpp +++ b/clang/unittests/Frontend/CompilerInvocationTest.cpp @@ -77,150 +77,6 @@ TEST_F(CommandLineTest, BoolOptionDefaultTrueSingleFlagUnknownPresent) { ASSERT_TRUE(Invocation.getFrontendOpts().UseTemporary); } -// Boolean option with a keypath that defaults to true. -// The flag with negative spelling can set the keypath to false. -// The flag with positive spelling can reset the keypath to true. - -TEST_F(CommandLineTest, BoolOptionDefaultTruePresentNone) { - const char *Args[] = {""}; - - CompilerInvocation::CreateFromArgs(Invocation, Args, *Diags); - ASSERT_FALSE(Diags->hasErrorOccurred()); - ASSERT_TRUE(Invocation.getCodeGenOpts().Autolink); - - // TODO: Test argument generation. -} - -TEST_F(CommandLineTest, BoolOptionDefaultTruePresentNegChange) { - const char *Args[] = {"-fno-autolink"}; - - CompilerInvocation::CreateFromArgs(Invocation, Args, *Diags); - ASSERT_FALSE(Diags->hasErrorOccurred()); - ASSERT_FALSE(Invocation.getCodeGenOpts().Autolink); - - // TODO: Test argument generation. -} - -TEST_F(CommandLineTest, BoolOptionDefaultTruePresentPosReset) { - const char *Args[] = {"-fautolink"}; - - CompilerInvocation::CreateFromArgs(Invocation, Args, *Diags); - ASSERT_TRUE(Diags->hasErrorOccurred()); // Driver-only flag. - ASSERT_TRUE(Invocation.getCodeGenOpts().Autolink); -} - -// Boolean option with a keypath that defaults to false. -// The flag with negative spelling can set the keypath to true. -// The flag with positive spelling can reset the keypath to false. - -TEST_F(CommandLineTest, BoolOptionDefaultFalsePresentNone) { - const char *Args[] = {""}; - - CompilerInvocation::CreateFromArgs(Invocation, Args, *Diags); - ASSERT_FALSE(Diags->hasErrorOccurred()); - ASSERT_FALSE(Invocation.getCodeGenOpts().NoInlineLineTables); - - // TODO: Test argument generation. -} - -TEST_F(CommandLineTest, BoolOptionDefaultFalsePresentNegChange) { - const char *Args[] = {"-gno-inline-line-tables"}; - - CompilerInvocation::CreateFromArgs(Invocation, Args, *Diags); - ASSERT_FALSE(Diags->hasErrorOccurred()); - ASSERT_TRUE(Invocation.getCodeGenOpts().NoInlineLineTables); - - // TODO: Test argument generation. -} - -TEST_F(CommandLineTest, BoolOptionDefaultFalsePresentPosReset) { - const char *Args[] = {"-ginline-line-tables"}; - - CompilerInvocation::CreateFromArgs(Invocation, Args, *Diags); - ASSERT_TRUE(Diags->hasErrorOccurred()); // Driver-only flag. - ASSERT_FALSE(Invocation.getCodeGenOpts().NoInlineLineTables); -} - -// Boolean option with a keypath that defaults to false. -// The flag with positive spelling can set the keypath to true. -// The flag with negative spelling can reset the keypath to false. - -TEST_F(CommandLineTest, BoolOptionDefaultFalsePresentNoneX) { - const char *Args[] = {""}; - - CompilerInvocation::CreateFromArgs(Invocation, Args, *Diags); - ASSERT_FALSE(Diags->hasErrorOccurred()); - ASSERT_FALSE(Invocation.getCodeGenOpts().CodeViewGHash); - - // TODO: Test argument generation. -} - -TEST_F(CommandLineTest, BoolOptionDefaultFalsePresentPosChange) { - const char *Args[] = {"-gcodeview-ghash"}; - - CompilerInvocation::CreateFromArgs(Invocation, Args, *Diags); - ASSERT_FALSE(Diags->hasErrorOccurred()); - ASSERT_TRUE(Invocation.getCodeGenOpts().CodeViewGHash); - - // TODO: Test argument generation. -} - -TEST_F(CommandLineTest, BoolOptionDefaultFalsePresentNegReset) { - const char *Args[] = {"-gno-codeview-ghash"}; - - CompilerInvocation::CreateFromArgs(Invocation, Args, *Diags); - ASSERT_TRUE(Diags->hasErrorOccurred()); // Driver-only flag. - ASSERT_FALSE(Invocation.getCodeGenOpts().CodeViewGHash); -} - -// Boolean option with a keypath that defaults to an arbitrary expression. -// The flag with positive spelling can set the keypath to true. -// The flag with negative spelling can set the keypath to false. - -// NOTE: The following tests need to be updated when we start enabling the new -// pass manager by default. - -TEST_F(CommandLineTest, BoolOptionDefaultArbitraryTwoFlagsPresentNone) { - const char *Args = {""}; - - CompilerInvocation::CreateFromArgs(Invocation, Args, *Diags); - - ASSERT_FALSE(Diags->hasErrorOccurred()); - ASSERT_FALSE(Invocation.getCodeGenOpts().ExperimentalNewPassManager); - - Invocation.generateCC1CommandLine(GeneratedArgs, *this); - ASSERT_THAT(GeneratedArgs, - Not(Contains(StrEq("-fexperimental-new-pass-manager")))); -} - -TEST_F(CommandLineTest, BoolOptionDefaultArbitraryTwoFlagsPresentPos) { - const char *Args[] = {"-fexperimental-new-pass-manager"}; - - CompilerInvocation::CreateFromArgs(Invocation, Args, *Diags); - ASSERT_FALSE(Diags->hasErrorOccurred()); - ASSERT_TRUE(Invocation.getCodeGenOpts().ExperimentalNewPassManager); - - Invocation.generateCC1CommandLine(GeneratedArgs, *this); - ASSERT_THAT(GeneratedArgs, - Contains(StrEq("-fexperimental-new-pass-manager"))); - ASSERT_THAT(GeneratedArgs, - Not(Contains(StrEq("-fno-experimental-new-pass-manager")))); -} - -TEST_F(CommandLineTest, BoolOptionDefaultArbitraryTwoFlagsPresentNeg) { - const char *Args[] = {"-fno-experimental-new-pass-manager"}; - - CompilerInvocation::CreateFromArgs(Invocation, Args, *Diags); - ASSERT_FALSE(Diags->hasErrorOccurred()); - ASSERT_FALSE(Invocation.getCodeGenOpts().ExperimentalNewPassManager); - - Invocation.generateCC1CommandLine(GeneratedArgs, *this); - ASSERT_THAT(GeneratedArgs, - Contains(StrEq("-fno-experimental-new-pass-manager"))); - ASSERT_THAT(GeneratedArgs, - Not(Contains(StrEq("-fexperimental-new-pass-manager")))); -} - TEST_F(CommandLineTest, CanGenerateCC1CommandLineFlag) { const char *Args[] = {"-fmodules-strict-context-hash"}; _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits