- Jul 31, 2013
-
-
Aaron Ballman authored
llvm-svn: 187474
-
Richard Trieu authored
llvm-svn: 187467
-
Chandler Carruth authored
Clang when linking and using a GCC installation from a GCC cross-compiler. This was desired already by two special case platforms (Android and Mips), and turns out to be generally (if frustratingly) true. I've added a substantial comment to the code clarifying the underlying assumptions of doing actual cross compiles with Clang (or GCC for that matter!) and help avoid further confusion here. The end result is to realize that fully general form of PR12478 cannot be resolved while we support existing cross-compiling GCC toolchains, and linking with them (namely, linking against their libgcc and libstdc++ installs). GCC installs these target libraries under a target-specific prefix but one that may not be available within the actual sysroot in use. When linking in this world, GCC works and Clang should as well, but caveat emptor: DSOs from this tree must be replicated and rpath-fixed to be found at runtime within the sysroot. I've extended the cross compile test cases to cover these issues by pointing them at a sysroot and actually checking the library search paths. llvm-svn: 187466
-
Richard Smith authored
change, other than removal of undefined behavior. llvm-svn: 187465
-
Daniel Jasper authored
Before: template <typename... Types> typename enable_if < 0<sizeof...(Types)>::type Foo() {} After: template <typename... Types> typename enable_if<0 < sizeof...(Types)>::type Foo() {} llvm-svn: 187458
-
- Jul 30, 2013
-
-
Chandler Carruth authored
on the system, and report it when running the driver in verbose mode. Without this it is essentially impossible to understand why a particular GCC toolchain is used by Clang for libstdc++, libgcc, etc. This also required threading a hook through the toolchain layers for a specific toolchain implementation to print custom information under 'clang -v'. The naming here isn't spectacular. Suggestions welcome. llvm-svn: 187427
-
Aaron Ballman authored
llvm-svn: 187420
-
Aaron Ballman authored
llvm-svn: 187419
-
Timur Iskhodzhanov authored
llvm-svn: 187409
-
NAKAMURA Takumi authored
clang/test/Driver/qa_override.c: Resurrect a part of r187376. It still requires the feature 'clang-driver' for cygming. llvm-svn: 187405
-
Aaron Ballman authored
Added the notion of Type and TargetSpecific attributes to the clang tablegen. In turn, this fixes a mistake with Ptr32, Ptr64, UPtr and SPtr attribtues generating AST nodes that are never actually used. llvm-svn: 187401
-
Aaron Ballman authored
llvm-svn: 187400
-
Aaron Ballman authored
Refactor some attributes to use checkFunctionOrMethodArgumentIndex instead of using custom logic. No functional changes intended. llvm-svn: 187398
-
David Blaikie authored
llvm-svn: 187387
-
Alexander Kornienko authored
Reviewers: rsmith Reviewed By: rsmith CC: cfe-commits Differential Revision: http://llvm-reviews.chandlerc.com/D1183 llvm-svn: 187386
-
- Jul 29, 2013
-
-
Rafael Espindola authored
llvm-svn: 187379
-
Chandler Carruth authored
output rather than just part of it. Also, remove the frighteningly ancient comment about not working with the gcc-driver. (!!!) llvm-svn: 187376
-
Richard Smith authored
corresponding 'operator new' was actually emitted as a function marked 'nobuiltin'. llvm-svn: 187374
-
Rafael Espindola authored
llvm-svn: 187367
-
Hans Wennborg authored
The quotes (from r187330) didn't really help here, the trick was to disable the test on MSYS builds. This removes those quotes, changes back the comment to explain why /? has to be quoted specifically, and moves the REQUIRES line to the top of the file because that's important. llvm-svn: 187366
-
David Blaikie authored
Patch by Ethan Jackson. llvm-svn: 187365
-
Rafael Espindola authored
llvm-svn: 187364
-
Rafael Espindola authored
On windows, c:foo is a valid file path, but stat fails on just "c:". This causes a problem for clang since its file manager wants to cache data about the parent directory. There are refactorings to be done in here, but this gives clang the correct behavior and testing first. Patch by Yunzhong Gao! llvm-svn: 187359
-
Craig Topper authored
Return ExprError if both arguments to the mask form of __builtin_shufflvector don't have the same number of elements or the mask isn't an integer vector. Previously a diagnostic was issued, but the code went ahead and built the ShuffleVectorExpr. While I'm here also simplify a couple lines by wrapping the return ExprError around the Diag calls. llvm-svn: 187344
-
NAKAMURA Takumi authored
llvm-svn: 187337
-
- Jul 28, 2013
-
-
Craig Topper authored
llvm-svn: 187334
-
Rafael Espindola authored
It was still failing with double quotes: http://bb.pgr.jp/builders/clang-i686-msys/builds/698/steps/test_clang/logs/Clang%20%3A%3A%20Driver__cl.c llvm-svn: 187330
-
Rafael Espindola authored
Should fix some of the bots that have assertions disabled. llvm-svn: 187329
-
- Jul 27, 2013
-
-
Bob Wilson authored
Beginning with svn r186971, we noticed an internal test started to fail when using clang built with LTO. After much investigation, it turns out that there are no blatant bugs here, we are just running out of stack space and crashing. Preprocessor::ReadFunctionLikeMacroArgs already has one vector of 64 Tokens, and r186971 added another. When built with LTO, that function is inlined into Preprocessor::HandleMacroExpandedIdentifier, which for our internal test is invoked in a deep recursive cycle. I'm leaving the original 64 Token vector alone on the assumption that it is important for performance, but the new FixedArgTokens vector is only used on an error path, so it should be OK if it requires additional heap storage. It would be even better if we could avoid the deep recursion, but I think this change is a good thing to do regardless. <rdar://problem/14540345> llvm-svn: 187315
-
Hans Wennborg authored
This test would fail in weird ways on systems with a one-letter filename in the root directory, because the shell would helpfully expand /? to e.g. /n. Make sure this doesn't happen by adding quotes. llvm-svn: 187295
-
Craig Topper authored
llvm-svn: 187294
-
Aaron Ballman authored
Using the function pointer instead of the function type; this allows us to re-enable a warning in MSVC by default. llvm-svn: 187292
-
Hans Wennborg authored
This establishes a new Flag in Options.td, which can be assigned to options that should be made available in clang's cl.exe compatible mode, and updates the Driver to make use of the flag. (The whitespace change to CMakeLists forces the build to re-run CMake and pick up the include dependency on the new .td file. This makes the build work if someone moves backwards in commit history after this change.) Differential Revision: http://llvm-reviews.chandlerc.com/D1215 llvm-svn: 187280
-
Eli Friedman authored
This matches how we normally perform semantic analysis for other sorts of invalid expressions: it means we don't have to reason about invalid sub-expressions. Fixes PR16680. llvm-svn: 187276
-
Richard Smith authored
no return type is specified, C++11 will deduce a cv-qualified return type in some cases, but C++1y never will. llvm-svn: 187275
-
Richard Smith authored
PR16708: If a lambda has an implicit return type, don't get confused if its return type has already been determined to be a type containing an 'auto'. llvm-svn: 187266
-
- Jul 26, 2013
-
-
Bill Wendling authored
llvm-svn: 187251
-
Bob Wilson authored
When BUILD_CLANG_ONLY is set to YES, it is supposed to simply limit the tools that get built. The change in r184794 broke this feature by moving libclang and c-index-test into PARALLEL_DIRS. Those are both supposed to be in DIRS, because c-index-test has a build dependency on libclang and cannot be reliably built in parallel with it. llvm-svn: 187246
-
Adrian Prantl authored
Restore it after each argument is emitted. This fixes the scope info for inlined subroutines inside of function argument expressions. (E.g., anything STL). rdar://problem/12592135 llvm-svn: 187240
-
Hans Wennborg authored
Also rename ccc_Group, ccc_driver_Group and ccc_Debug_Group similarly. Differential Revision: http://llvm-reviews.chandlerc.com/D1218 llvm-svn: 187239
-