llvm-project/clang/lib/Frontend
Dimitry Andric f59a2b3901 Fix C++ support on recent DragonFly BSD releases
Summary:
[ Copied from https://llvm.org/bugs/show_bug.cgi?id=25597 ]

Clang support for DragonFly BSD is lagging a bit, resulting in poor
support for c++.

DragonFlyBSD is unique in that it has two base compilers.  At the time
of the last Clang update for DragonFly, these compilers were GCC 4.4 and
GCC 4.7 (default).

With DragonFly Release 4.2, GCC 4.4 was replaced with GCC 5.0, partially
because the C++11 support of GCC 4.7 was incomplete.  The DragonFly
project will Release version 4.4 soon.

This patch updates the Clang driver to use libstdc++ from GCC 5.2 The
support for falling back to the alternate compiler was removed for two
reasons:

1) The last release to use GCC 4.7 is DF 4.0 which has already reached EOL
2) GCC 4.7 libstdc++ is insufficient for many "ports"

Therefore, I think it is reasonable that the development version of
clang expects GCC 5.2 to be in place and not try to fall back to another
compiler.

The attached patch will do this.  The Tools.cpp file was signficantly
modified to fix the linking which had been changed somewhere along the
line.  The rest of the changes should be self-explanatory.

Reviewers: joerg, rsmith, davide

Subscribers: jrmarino, davide, cfe-commits

Differential Revision: http://reviews.llvm.org/D15166

llvm-svn: 256467
2015-12-27 10:01:44 +00:00
..
Rewrite Fix a couple places where InsertText was being called with a pointer and size when it really expects a StringRef and a normally optional bool argument. 2015-10-22 03:13:10 +00:00
ASTConsumers.cpp Revert r240270 ("Fixed/added namespace ending comments using clang-tidy"). 2015-06-22 23:07:51 +00:00
ASTMerge.cpp Initialize the AST consumer as soon as we have both an ASTConsumer and an 2015-08-18 20:39:29 +00:00
ASTUnit.cpp [libclang] Add a flag to create the precompiled preamble on the first parse. 2015-12-15 09:30:31 +00:00
CMakeLists.txt clangFrontend: [PR25565] Quick fix for dependencies on Attributes.inc. 2015-11-19 10:59:48 +00:00
CacheTokens.cpp [PTH] Fix data length used for stat cache entries 2015-11-02 20:47:31 +00:00
ChainedDiagnosticConsumer.cpp
ChainedIncludesSource.cpp Introduce module file extensions to piggy-back data onto module files. 2015-11-03 18:33:07 +00:00
CodeGenOptions.cpp [cleanup] Re-sort *all* #include lines with llvm/utils/sort_includes.py 2015-01-14 11:29:14 +00:00
CompilerInstance.cpp Update for llvm API change. 2015-12-16 22:59:09 +00:00
CompilerInvocation.cpp Some minor correction based on David Blaikie post-commit code review for r255281. 2015-12-24 22:52:41 +00:00
CreateInvocationFromCommandLine.cpp [libclang] Add entry points that take a full command line including argv[0]. 2015-11-18 16:14:27 +00:00
DependencyFile.cpp Roll-back r250822. 2015-10-20 13:23:58 +00:00
DependencyGraph.cpp Revert r240270 ("Fixed/added namespace ending comments using clang-tidy"). 2015-06-22 23:07:51 +00:00
DiagnosticRenderer.cpp [diagnostics] Avoid crashes while printing macro backtraces 2015-12-08 01:08:09 +00:00
FrontendAction.cpp Roll-back r250822. 2015-10-20 13:23:58 +00:00
FrontendActions.cpp [modules] Refactor handling of -fmodules-embed-*. Track this properly rather 2015-11-26 02:04:16 +00:00
FrontendOptions.cpp Ensure that we still parse preprocessed CUDA files as CUDA when we use 2015-03-19 17:32:06 +00:00
HeaderIncludeGen.cpp Update for llvm API change. 2015-12-16 22:59:09 +00:00
InitHeaderSearch.cpp Fix C++ support on recent DragonFly BSD releases 2015-12-27 10:01:44 +00:00
InitPreprocessor.cpp [CUDA] Make CUDA compilation usable by default. 2015-11-17 22:28:55 +00:00
LangStandards.cpp [C++11] Use 'nullptr'. Frontend edition. 2014-05-22 04:46:25 +00:00
LayoutOverrideSource.cpp Excise <cctype> from Clang (except clang-tblgen) in favor of CharInfo.h. 2013-02-08 22:30:41 +00:00
LogDiagnosticPrinter.cpp Replace double negation of !FileID.isInvalid() with FileID.isValid(). 2015-10-03 10:46:20 +00:00
Makefile Make clang's rewrite engine a core feature 2014-07-16 16:48:33 +00:00
ModuleDependencyCollector.cpp Moving FileManager::removeDotPaths to llvm::sys::path::remove_dots 2015-11-09 19:12:18 +00:00
MultiplexConsumer.cpp Stop back-patching 'readonly' Objective-C properties with 'readwrite' ones. 2015-11-03 01:15:46 +00:00
PCHContainerOperations.cpp Further simplify the interface of PCHContainerGenerator 2015-09-19 21:42:52 +00:00
PrintPreprocessedOutput.cpp According to the OpenMP spec, all the preprocessor macros should be 2015-06-15 23:44:27 +00:00
SerializedDiagnosticPrinter.cpp Roll-back r250822. 2015-10-20 13:23:58 +00:00
SerializedDiagnosticReader.cpp Revert r240270 ("Fixed/added namespace ending comments using clang-tidy"). 2015-06-22 23:07:51 +00:00
TestModuleFileExtension.cpp Module file extensions: pass a Sema through to the extension writer. 2015-12-08 22:43:32 +00:00
TestModuleFileExtension.h Module file extensions: pass a Sema through to the extension writer. 2015-12-08 22:43:32 +00:00
TextDiagnostic.cpp Roll-back r250822. 2015-10-20 13:23:58 +00:00
TextDiagnosticBuffer.cpp Replace push_back(Constructor(foo)) with emplace_back(foo) for non-trivial types 2015-05-29 19:42:19 +00:00
TextDiagnosticPrinter.cpp Remove uses of the redundant ".reset(nullptr)" of unique_ptr, in favor of ".reset()" 2014-07-19 01:06:45 +00:00
VerifyDiagnosticConsumer.cpp Revert r240270 ("Fixed/added namespace ending comments using clang-tidy"). 2015-06-22 23:07:51 +00:00