]> granicus.if.org Git - clang/commitdiff
In the past "production" clang builds would not be used for c++, and
authorRafael Espindola <rafael.espindola@gmail.com>
Tue, 30 Oct 2012 00:13:16 +0000 (00:13 +0000)
committerRafael Espindola <rafael.espindola@gmail.com>
Tue, 30 Oct 2012 00:13:16 +0000 (00:13 +0000)
we had the -ccc-clang-cxx and -ccc-no-clang-cxx options to force them
on or off for testing.

Clang c++ support is now production quality and these options are dead.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@166986 91177308-0d34-0410-b5e6-96231b3b80d8

include/clang/Basic/DiagnosticDriverKinds.td
include/clang/Driver/Driver.h
include/clang/Driver/Options.td
lib/Driver/Driver.cpp
test/Driver/bindings.c
test/Misc/warning-flags.c
test/lit.cfg

index fd38f1fd9f765dc78b9bac353dedf4a4b54474be..899c37b5337440ef2a3c50fc22e300c8d17f7f12 100644 (file)
@@ -121,8 +121,6 @@ def warn_drv_empty_joined_argument : Warning<
   InGroup<DiagGroup<"unused-command-line-argument">>;
 def warn_drv_not_using_clang_cpp : Warning<
   "not using the clang preprocessor due to user override">;
-def warn_drv_not_using_clang_cxx : Warning<
-  "not using the clang compiler for C++ inputs">;
 def warn_drv_clang_unsupported : Warning<
   "the clang compiler does not support '%0'">;
 def warn_drv_assuming_mfloat_abi_is : Warning<
index 3ab98f7b76933734c96c7e711aff0377d9e9aee8..84add7cbd1f3aa39e9e9c1942f816a10fe935898 100644 (file)
@@ -149,9 +149,6 @@ private:
   /// Use the clang compiler where possible.
   unsigned CCCUseClang : 1;
 
-  /// Use clang for handling C++ and Objective-C++ inputs.
-  unsigned CCCUseClangCXX : 1;
-
   /// Use clang as a preprocessor (clang's preprocessor will still be
   /// used where an integrated CPP would).
   unsigned CCCUseClangCPP : 1;
index c14b0bccc1ca20303a89f091d3734ce0327ec2db..81e35239f5344a62a8e0400cff4c9714cef58be5 100644 (file)
@@ -91,10 +91,6 @@ def ccc_echo : Flag<["-"], "ccc-echo">, CCCDriverOpt,
 def ccc_gcc_name : Separate<["-"], "ccc-gcc-name">, CCCDriverOpt,
   HelpText<"Name for native GCC compiler">,
   MetaVarName<"<gcc-path>">;
-def ccc_clang_cxx : Flag<["-"], "ccc-clang-cxx">, CCCDriverOpt,
-  HelpText<"Enable the clang compiler for C++">;
-def ccc_no_clang_cxx : Flag<["-"], "ccc-no-clang-cxx">, CCCDriverOpt,
-  HelpText<"Disable the clang compiler for C++">;
 def ccc_no_clang : Flag<["-"], "ccc-no-clang">, CCCDriverOpt,
   HelpText<"Disable the clang compiler">;
 def ccc_no_clang_cpp : Flag<["-"], "ccc-no-clang-cpp">, CCCDriverOpt,
index 29202b5411b958877be1f6c8bf28766d6d3ba77f..f8b923286e342e187e21f3a8750b91d5efd6c6d3 100644 (file)
@@ -58,7 +58,7 @@ Driver::Driver(StringRef ClangExecutable,
     CCCIsCPP(false),CCCEcho(false), CCCPrintBindings(false),
     CCPrintOptions(false), CCPrintHeaders(false), CCLogDiagnostics(false),
     CCGenDiagnostics(false), CCCGenericGCCName(""), CheckInputsExist(true),
-    CCCUseClang(true), CCCUseClangCXX(true), CCCUseClangCPP(true),
+    CCCUseClang(true), CCCUseClangCPP(true),
     ForcedClangUse(false), CCCUsePCH(true), SuppressMissingInputWarning(false) {
 
   Name = llvm::sys::path::stem(ClangExecutable);
@@ -275,9 +275,6 @@ Compilation *Driver::BuildCompilation(ArrayRef<const char *> ArgList) {
   CCCEcho = Args->hasArg(options::OPT_ccc_echo);
   if (const Arg *A = Args->getLastArg(options::OPT_ccc_gcc_name))
     CCCGenericGCCName = A->getValue(*Args);
-  CCCUseClangCXX = Args->hasFlag(options::OPT_ccc_clang_cxx,
-                                 options::OPT_ccc_no_clang_cxx,
-                                 CCCUseClangCXX);
   CCCUsePCH = Args->hasFlag(options::OPT_ccc_pch_is_pch,
                             options::OPT_ccc_pch_is_pth);
   CCCUseClang = !Args->hasArg(options::OPT_ccc_no_clang);
@@ -1797,12 +1794,6 @@ bool Driver::ShouldUseClangCompiler(const Compilation &C, const JobAction &JA,
   } else if (!isa<PrecompileJobAction>(JA) && !isa<CompileJobAction>(JA))
     return false;
 
-  // Use clang for C++?
-  if (!CCCUseClangCXX && types::isCXX((*JA.begin())->getType())) {
-    Diag(clang::diag::warn_drv_not_using_clang_cxx);
-    return false;
-  }
-
   return true;
 }
 
index 7ae04a91db124b4fcefff28c7a9563dcb1aadad3..4db155a22b78dddd74cb87f93cf360ed0c0c4966 100644 (file)
 // RUN: %clang -target i386-unknown-unknown -ccc-print-bindings -ccc-no-clang -fsyntax-only %s 2>&1 | FileCheck %s --check-prefix=CHECK06
 // CHECK06: "gcc::Compile", inputs: ["{{.*}}bindings.c"], output: (nothing)
 
-// RUN: %clang -target i386-unknown-unknown -ccc-print-bindings -ccc-no-clang-cxx -fsyntax-only -x c++ %s 2>&1 | FileCheck %s --check-prefix=CHECK07
-// CHECK07: "gcc::Compile", inputs: ["{{.*}}bindings.c"], output: (nothing)
-
-// RUN: %clang -target i386-unknown-unknown -ccc-print-bindings -ccc-clang-cxx -fsyntax-only -x c++ %s 2>&1 | FileCheck %s --check-prefix=CHECK08
+// RUN: %clang -target i386-unknown-unknown -ccc-print-bindings -fsyntax-only -x c++ %s 2>&1 | FileCheck %s --check-prefix=CHECK08
 // CHECK08: "clang", inputs: ["{{.*}}bindings.c"], output: (nothing)
 
 // RUN: %clang -target i386-unknown-unknown -ccc-print-bindings -ccc-no-clang-cpp -fsyntax-only -no-integrated-cpp %s 2>&1 | FileCheck %s --check-prefix=CHECK09
index 398e9bce26ebf0c0a0aef3c481e86e1b916df333..aa6c290f846979c358fe16fe1f7939f93e795ef6 100644 (file)
@@ -18,7 +18,7 @@ This test serves two purposes:
 
 The list of warnings below should NEVER grow.  It should gradually shrink to 0.
 
-CHECK: Warnings without flags (153):
+CHECK: Warnings without flags (152):
 CHECK-NEXT:   ext_delete_void_ptr_operand
 CHECK-NEXT:   ext_enum_friend
 CHECK-NEXT:   ext_expected_semi_decl_list
@@ -69,7 +69,6 @@ CHECK-NEXT:   warn_double_const_requires_fp64
 CHECK-NEXT:   warn_drv_assuming_mfloat_abi_is
 CHECK-NEXT:   warn_drv_clang_unsupported
 CHECK-NEXT:   warn_drv_not_using_clang_cpp
-CHECK-NEXT:   warn_drv_not_using_clang_cxx
 CHECK-NEXT:   warn_drv_objc_gc_unsupported
 CHECK-NEXT:   warn_drv_pch_not_first_include
 CHECK-NEXT:   warn_dup_category_def
index 54a683f0e7ff7f98b3cac1385d728f6777d3146a..b22346e046b1ba908d6772ffd578b3f136cb1620 100644 (file)
@@ -186,7 +186,7 @@ config.substitutions.append( ('%clang_cc1', '%s -cc1 -internal-isystem %s'
                                  getClangBuiltinIncludeDir(config.clang))) )
 
 config.substitutions.append( ('%clangxx', ' ' + config.clang +
-                              ' -ccc-clang-cxx -ccc-cxx '))
+                              ' -ccc-cxx '))
 config.substitutions.append( ('%clang', ' ' + config.clang + ' ') )
 config.substitutions.append( ('%test_debuginfo', ' ' + config.llvm_src_root + '/utils/test_debuginfo.pl ') )