- Oct 10, 2012
-
-
Argyrios Kyrtzidis authored
an invalid location if the location points to the synthetic buffer for the module input. llvm-svn: 165592
-
Argyrios Kyrtzidis authored
This means the main file for modules will always be a virtual one. llvm-svn: 165591
-
Richard Smith authored
llvm-svn: 165584
-
Richard Smith authored
llvm-svn: 165583
-
Richard Smith authored
-fcatch-undefined-behavior: store the type name directly at the end of a type descriptor. 5% binary size reduction due to fewer relocations. llvm-svn: 165572
-
Douglas Gregor authored
MacroInfo*. Instead of simply dumping an offset into the current file, give each macro definition a proper ID with all of the standard modules-remapping facilities. Additionally, when a macro is modified in a subsequent AST file (e.g., #undef'ing a macro loaded from another module or from a precompiled header), provide a macro update record rather than rewriting the entire macro definition. This gives us greater consistency with the way we handle declarations, and ties together macro definitions much more cleanly. Note that we're still not actually deserializing macro history (we never were), but it's far easy to do properly now. llvm-svn: 165560
-
Eli Friedman authored
I think our general framework for parser pragmas needs a bit more work, but I'm not planning on working on it at the moment. llvm-svn: 165558
-
- Oct 09, 2012
-
-
Rafael Espindola authored
clang itself. This dates back to clang's early days and while it looks like some of it is still used (for kext for example), other parts are probably dead. Remove the -ccc-clang-archs option and associated code. I don't think there is any remaining setup where clang doesn't support an architecture but it can expect an working gcc cross compiler to be available. A nice side effect is that tests no longer need to differentiate architectures that are included in production builds of clang and those that are not. llvm-svn: 165545
-
Argyrios Kyrtzidis authored
llvm-svn: 165538
-
Chad Rosier authored
(r165534), but leave the test case in place. llvm-svn: 165537
-
Richard Smith authored
llvm-svn: 165536
-
Chad Rosier authored
options when clang invokes cc1plus for i386 kexts. rdar://12459188 llvm-svn: 165534
-
Ted Kremenek authored
llvm-svn: 165532
-
Ted Kremenek authored
llvm-svn: 165531
-
Argyrios Kyrtzidis authored
ASTContext to the ObjCMethodDecl, and have the more generic ASTContext::getOverriddenMethods() use the ObjCMethodDecl::getOverriddenMethods() function. llvm-svn: 165518
-
Douglas Gregor authored
deterministic. llvm-svn: 165515
-
Douglas Gregor authored
whether that function/method already has a body (loaded from some other AST file), as introduced in r165137. Delay this check until after the redeclaration chains have been wired up. While I'm here, make the loading of method bodies lazy. llvm-svn: 165513
-
Douglas Gregor authored
write out the macro history for that macro. Similarly, we need to cope with reading a macro definition that has been #undef'd. Take advantage of this new ability so that global code-completion results can refer to #undef'd macros, rather than losing them entirely. For multiply defined/#undef'd macros, we will still get the wrong result, but it's better than getting no result. llvm-svn: 165502
-
Benjamin Kramer authored
Clearing a SmallPtrSet is still expensive, split it out from OverloadCandidateSet::clear and don't do it on destruction. llvm-svn: 165501
-
Bill Wendling authored
opaque layer is responsible for knowing where that specific attribute is stored. llvm-svn: 165489
-
Argyrios Kyrtzidis authored
ASTContext so that it can be widely available. llvm-svn: 165473
-
Argyrios Kyrtzidis authored
canonical method; avoid storing them again for an out-of-line definition. llvm-svn: 165472
-
Eli Friedman authored
Make sure we allow "#pragma options align=mac68k" in function-local contexts. <rdar://problem/12453134> llvm-svn: 165462
-
Argyrios Kyrtzidis authored
of the initializer is valid before using it. Fixes rdar://12455002&12449015 where local variables of objc objects in ARC mode were not annotated because of the ImplicitValueInitExpr initializer having invalid source range, resulting in the SourceRange of the VarDecl having invalid end location. llvm-svn: 165456
-
- Oct 08, 2012
-
-
Chandler Carruth authored
With this patch Bitrig can use a different c++ library without pain and within the normal commandline parameters. Original patch by David Hill, with lots of fixes and cleanup by me. llvm-svn: 165430
-
Benjamin Kramer authored
PR14040. llvm-svn: 165415
-
Daniel Jasper authored
llvm-svn: 165414
-
Daniel Jasper authored
llvm-svn: 165412
-
Micah Villmow authored
llvm-svn: 165395
-
Daniel Jasper authored
Review: http://llvm-reviews.chandlerc.com/D30 llvm-svn: 165392
-
David Blaikie authored
llvm-svn: 165384
-
David Blaikie authored
llvm-svn: 165383
-
- Oct 07, 2012
-
-
Rafael Espindola authored
llvm-svn: 165370
-
Rafael Espindola authored
The darwin change should be a nop since Triple::getArchTypeForDarwinArchName doesn't know about amd64. If things like amd64-mingw32 are to be rejected, we should print a error earlier on instead of silently using the wrong abi. Remove old comment that looks out of place, this is "in clang". llvm-svn: 165368
-
- Oct 06, 2012
-
-
Benjamin Kramer authored
GCC has always supported this on PowerPC and 4.8 supports it on all platforms, so it's a good idea to expose it in clang too. LLVM supports this on all targets. llvm-svn: 165362
-
Jordan Rose authored
The Clang ASTs are a DAG, not a pure tree. However, ParentMap has to choose a single parent for each object. In the main (only?) cases in which the AST forms a DAG, it protects from multiple traversal by using OpaqueValueExprs. Previously, ParentMap would just unconditionally look through all OpaqueValueExprs when building its map. In order to make this behavior better for the analyzer's diagnostics, ParentMap was changed to not set a statement's parent if there already was one in the map. However, ParentMap is supposed to allow updating existing mappings by calling addStmt once again. This change makes the "transparency" of OpaqueValueExprs explicit, and disables it when it is not desired, rather than checking the current contents of the map. This new code seems like a big change, but it should actually have essentially the same performance as before. Only OpaqueValueExprs and their users (PseudoObjectExpr and BinaryConditionalOperator) will have any different behavior. There should be no user-visible functionality change, though a test has been added for the current behavior of BinaryConditionalOperator source locations and accompanying Xcode arrows (which are not so great...). llvm-svn: 165355
-
Jordan Rose authored
Some implicit statements, such as the implicit 'self' inserted for "free" Objective-C ivar access, have invalid source locations. If one of these statements is the location where an issue is reported, we'll now look at the enclosing statements for a valid source location. <rdar://problem/12446776> llvm-svn: 165354
-
Alex Rosenberg authored
llvm-svn: 165343
-
DeLesley Hutchins authored
llvm-svn: 165339
-
- Oct 05, 2012
-
-
Michael Liao authored
llvm-svn: 165325
-