| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
| |
llvm-svn: 164788
|
| |
|
|
| |
llvm-svn: 164781
|
| |
|
|
|
|
|
| |
framework location out to a top-level framework. Such frameworks are
not really embedded at all.
llvm-svn: 164774
|
| |
|
|
|
|
| |
See: http://en.wikipedia.org/wiki/If_and_only_if Commit 164766
llvm-svn: 164769
|
| |
|
|
| |
llvm-svn: 164766
|
| |
|
|
|
|
| |
[-Wunused-private-field]
llvm-svn: 164745
|
| |
|
|
|
|
|
|
|
|
| |
http://lists.cs.uiuc.edu/pipermail/cfe-commits/Week-of-Mon-20120917/064551.html
have PPCallbacks::InclusionDirective pass the character range for the filename quotes or brackets.
rdar://11113134 & http://llvm.org/PR13880
llvm-svn: 164743
|
| |
|
|
|
|
| |
results for a macro name, not CXCursor_NotImplemented.
llvm-svn: 164740
|
| |
|
|
| |
llvm-svn: 164726
|
| |
|
|
|
|
| |
Fixes PR13851. Patch by Dimitry Andric!
llvm-svn: 164717
|
| |
|
|
|
|
|
|
|
|
|
| |
This checker is annotation driven. It checks that the annotated
invalidation method accesses all ivars of the enclosing objects that are
objects of type, which in turn contains an invalidation method.
This is driven by
__attribute((annotation("objc_instance_variable_invalidator")).
llvm-svn: 164716
|
| |
|
|
|
|
| |
This isn't correct, as Jordan correctly points out.
llvm-svn: 164711
|
| |
|
|
|
|
|
|
|
| |
where an attribute is attached to a forward declaration of a template function,
and refers to parameters of that declaration, but is then inherited by the
definition of that function. When the definition is instantiated, the
parameter references need to be remapped.
llvm-svn: 164710
|
| |
|
|
| |
llvm-svn: 164709
|
| |
|
|
|
|
| |
This is to reduce dependency to cursors for the code-completion results.
llvm-svn: 164705
|
| |
|
|
|
|
| |
Removes a dependency of ASTUnit to clang-c/Index.h.
llvm-svn: 164704
|
| |
|
|
|
|
|
| |
Add a test for PR13924. Do not revert the test added in r163022,
it surprisingly still passes even after reverting the code changes.
llvm-svn: 164672
|
| |
|
|
|
|
|
|
| |
In the C programming language, we have to add the
"struct" keyword. Otherwise, the compiler will
emit error message.
llvm-svn: 164665
|
| |
|
|
| |
llvm-svn: 164661
|
| |
|
|
| |
llvm-svn: 164660
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
typeid (and a couple other non-standard places where we can transform an
unevaluated expression into an evaluated expression) is special
because it introduces an an expression evaluation context,
which conflicts with the mechanism to compute the current
lambda mangling context. PR12123.
I would appreciate if someone would double-check that we get the mangling
correct with this patch.
llvm-svn: 164658
|
| |
|
|
|
|
|
|
|
|
|
|
| |
enough information so we can mangle them correctly in cases involving
dependent parameter types. (This specifically impacts cases involving
null pointers and cases involving parameters of reference type.)
Fix the mangler to use this information instead of trying to scavenge
it out of the parameter declaration.
<rdar://problem/12296776>.
llvm-svn: 164656
|
| |
|
|
|
|
|
| |
for a type alias template can appear as sugar at any level of desugaring, just
like a TypedefType.
llvm-svn: 164655
|
| |
|
|
| |
llvm-svn: 164644
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
This makes the behavior clearer concerning literals with the maximum
number of digits. For a 32-bit example, 4,000,000,000 is a valid uint32_t,
but 5,000,000,000 is not, so we'd have to count 10-digit decimal numbers
as "unsafe" (meaning we have to check for overflow when parsing them,
just as we would for numbers with 11 digits or higher). This is the same,
only with 64 bits to play with.
No functionality change.
llvm-svn: 164639
|
| |
|
|
|
|
| |
rdar://12299433
llvm-svn: 164638
|
| |
|
|
|
|
| |
a function decl inside the ASTNodeImporter::VisitFunctionDecl function.
llvm-svn: 164625
|
| |
|
|
|
|
|
| |
It does a conservative estimate on the size of numbers that can fit into
uint64_t. This bound is improved.
llvm-svn: 164624
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
removeDeadBindings."
Previously, we'd just keep constraints around forever, which means we'd
never be able to merge paths that differed only in constraints on dead
symbols.
Because we now allow constraints on symbolic expressions, not just single
symbols, this requires changing SymExpr::symbol_iterator to include
intermediate symbol nodes in its traversal, not just the SymbolData leaf
nodes.
This depends on the previous commit to be correct. Originally applied in
r163444, reverted in r164275, now being re-applied.
llvm-svn: 164622
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
No tests, but this allows the optimization of removing dead constraints.
We can then add tests that we don't do this prematurely.
<rdar://problem/12333297>
Note: the added FIXME to investigate SymbolRegionValue liveness is
tracked by <rdar://problem/12368183>. This patch does not change the
existing behavior.
llvm-svn: 164621
|
| |
|
|
|
|
|
|
|
| |
top-level frameworks can actually be symlinked over to embedded
frameworks, and accessed via the top-level framework's headers. In
this case, we need to determine that the framework was *actually* an
embedded framework, so we can load the appropriate top-level module.
llvm-svn: 164620
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
latest macro definition. Needs more work.
Summary: Passes all tests (+ the new one with code completion), but needs a thorough review in part related to modules.
Reviewers: doug.gregor
Reviewed By: alexfh
CC: cfe-commits, rsmith
Differential Revision: http://llvm-reviews.chandlerc.com/D41
llvm-svn: 164610
|
| |
|
|
|
|
|
|
| |
If an MS-style inline asm is matched to multiple instructions, e.g., with a
a WAIT-prefix, then we need to examine the operands of the last instruction
instruction, not the prefix instruction.
llvm-svn: 164608
|
| |
|
|
|
|
|
|
|
|
| |
specific module (__building_module(modulename)) and to get the name of
the current module as an identifier (__MODULE__).
Used to help headers behave differently when they're being included as
part of building a module. Oh, the irony.
llvm-svn: 164605
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
be sure to delete the complete object pointer, not the original
pointer. This is necessary if the base being deleted is at a
non-zero offset in the complete object. This is only required
for objects with virtual destructors because deleting an object
via a base-class subobject when the base does not have a virtual
destructor is undefined behavior.
Noticed while reviewing the last four years of cxx-abi-dev
activity.
llvm-svn: 164597
|
| |
|
|
| |
llvm-svn: 164593
|
| |
|
|
| |
llvm-svn: 164592
|
| |
|
|
|
|
| |
Patch by Andy Gibbs!
llvm-svn: 164591
|
| |
|
|
|
|
| |
Patch by Andy Gibbs!
llvm-svn: 164590
|
| |
|
|
|
|
|
|
|
|
|
|
| |
into the enclosing scope; this is a more accurate model but is
(I believe) unnecessary in my test case due to other flaws.
However, one of those flaws is now intentional: blocks which
appear in return statements can be trivially observed to not
extend in lifetime past the return, and so we can allow a jump
past them. Do the necessary magic in IR-generation to make
this work.
llvm-svn: 164589
|
| |
|
|
|
|
|
|
|
|
| |
function being instantiated. An error recovery codepath was recursively
performing name lookup (and triggering an unbounded stack of template
instantiations which blew out the stack before hitting the depth limit).
Patch by Wei Pan!
llvm-svn: 164586
|
| |
|
|
| |
llvm-svn: 164580
|
| |
|
|
|
|
| |
dispatch.
llvm-svn: 164579
|
| |
|
|
|
|
| |
instantiations if we encountered errors parsing some of the initializers.
llvm-svn: 164578
|
| |
|
|
|
|
| |
unused expression warnings. <rdar://problem/12359208>.
llvm-svn: 164569
|
| |
|
|
| |
llvm-svn: 164568
|
| |
|
|
| |
llvm-svn: 164557
|
| |
|
|
| |
llvm-svn: 164555
|
| |
|
|
| |
llvm-svn: 164554
|
| |
|
|
| |
llvm-svn: 164551
|