| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
| |
llvm-svn: 121321
|
|
|
|
|
|
|
| |
DenseMap-backed hashtable for doing client-side
management of CXCursors within a set.
llvm-svn: 121318
|
|
|
|
|
|
| |
BinaryTypeTraitExpr.
llvm-svn: 121298
|
|
|
|
|
|
| |
CIndex's EnqueueVisitor must visit elements backward apparently.
llvm-svn: 121247
|
|
|
|
|
|
| |
New AST node introduced: BinaryTypeTraitExpr; to be reused for more intrinsics.
llvm-svn: 121074
|
|
|
|
| |
llvm-svn: 121073
|
|
|
|
|
|
| |
reason this is limited to C++, and it's certainly not limited to temporaries.
llvm-svn: 120996
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
used in a constructor initializer list:
struct X {
X() : au_i1(123) {}
union {
int au_i1;
float au_f1;
};
};
clang will now deal with au_i1 explicitly as an IndirectFieldDecl.
llvm-svn: 120900
|
|
|
|
|
|
|
|
| |
ObjCPropertyRefExpr
into the latter.
llvm-svn: 120643
|
|
|
|
|
|
|
|
|
|
| |
trap the serialized preprocessing records (macro definitions, macro
instantiations, macro definitions) from the generation of the
precompiled preamble, then replay those when walking the list of
preprocessed entities. This eliminates a bug where clang_getCursor()
wasn't able to find preprocessed-entity cursors in the preamble.
llvm-svn: 120396
|
|
|
|
| |
llvm-svn: 120297
|
|
|
|
|
|
|
|
|
| |
FileSystemOpts through a ton of apis, simplifying a lot of code.
This also fixes a latent bug in ASTUnit where it would invoke
methods on FileManager without creating one in some code paths
in cindextext.
llvm-svn: 120010
|
|
|
|
|
|
|
| |
to simplify a bunch of code in it. It should ultimately get inlined
into FileManager.
llvm-svn: 120007
|
|
|
|
|
|
| |
- Negative ChainingSize doesn't make sense, make it unsigned.
llvm-svn: 119943
|
|
|
|
| |
llvm-svn: 119935
|
|
|
|
| |
llvm-svn: 119876
|
|
|
|
| |
llvm-svn: 119874
|
|
|
|
|
|
| |
option name, category ID, and category name corresponding to a diagnostic.
llvm-svn: 119802
|
|
|
|
|
|
| |
clang_parseTranslationUnit_Impl.
llvm-svn: 119745
|
|
|
|
|
|
|
|
|
|
|
| |
-Move the stuff of Diagnostic related to creating/querying diagnostic IDs into a new DiagnosticIDs class.
-DiagnosticIDs can be shared among multiple Diagnostics for multiple translation units.
-The rest of the state in Diagnostic object is considered related and tied to one translation unit.
-Have Diagnostic point to the SourceManager that is related with. Diagnostic can now accept just a
SourceLocation instead of a FullSourceLoc.
-Reflect the changes to various interfaces.
llvm-svn: 119730
|
|
|
|
|
|
|
| |
to the data-recursion algorithm. CursorVisitor
now no longer subclasses StmtVisitor.
llvm-svn: 119596
|
|
|
|
|
|
|
|
| |
'DependentScopeDeclRefExpr' and
'CXXDependentScopeMemberExpr' to the
data-recursion algorithm.
llvm-svn: 119591
|
|
|
|
|
|
| |
to libclang.
llvm-svn: 119585
|
|
|
|
|
|
|
|
| |
an implicit "this"; it causes clang_getCursor() to find the implicit
"this" expression (which isn't written in the source!) rather than the
actual member.
llvm-svn: 119516
|
|
|
|
|
|
|
|
|
| |
interest (e.g., as used by clang_getCursor()), count the
decl-specifier-seq as part of the source range, as we do for
clang_annotateTokens(). Makes clang_getCursor() work properly for the
result types of functions, for example.
llvm-svn: 119514
|
|
|
|
|
|
|
| |
'SizeOfAlignOfExpr' and 'CXXSCalarValueInitExpr'
to data-recursion algorithm.
llvm-svn: 119452
|
|
|
|
|
|
|
|
|
| |
@synthesize foo = _foo;
keep track of the location of the ivar ("_foo"). Teach libclang to
visit the ivar as a member reference.
llvm-svn: 119447
|
|
|
|
|
|
| |
data-recursion algorithm.
llvm-svn: 119444
|
|
|
|
|
|
| |
to data-recursion algorithm.
llvm-svn: 119443
|
|
|
|
|
|
|
| |
explicit template args within data-recursion
algorithm.
llvm-svn: 119442
|
|
|
|
|
|
|
| |
AddrLabelExpr to data-recursion algorithm, and
unify that reasoning with GotoStmt.
llvm-svn: 119441
|
|
|
|
|
|
| |
VAArgExpr to data-recursion algorithm.
llvm-svn: 119440
|
|
|
|
|
|
| |
CXXTypeidExpr to data-recursion algorithm.
llvm-svn: 119439
|
|
|
|
|
|
| |
TypesCompatibleExpr to data-recursion algorithm.
llvm-svn: 119438
|
|
|
|
|
|
| |
algorithm.
llvm-svn: 119437
|
|
|
|
|
|
|
|
|
|
|
|
| |
we were just getting a range covering only the property name, which is
certainly not correct (and broke token annotation, among other
things).
Also, teach libclang about the relationship between
@synthesize/@dynamic and @property, so we get property name and
cursor-reference information for @synthesize and @dynamic.
llvm-svn: 119409
|
|
|
|
|
|
| |
the other side.
llvm-svn: 119349
|
|
|
|
|
|
|
|
|
|
|
| |
for the backing of generated USRs. This optmizes
for the case when a client generates a sequence
of USRs in sequence, disposing of them soon
after generating them. By using a string buffer,
we recycle malloc'ed memory instead of constantly
malloc'ing and copying strings.
llvm-svn: 119338
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
but to wrap both an ASTUnit and a "string pool"
that will be used for fast USR generation.
This requires a bunch of mechanical changes, as
there was a ton of code that assumed that CXTranslationUnit
and ASTUnit* were the same.
Along with this change, introduce CXStringBuf,
which provides an llvm::SmallVector<char> backing
for repeatedly generating CXStrings without a huge
amount of malloc() traffic. This requires making
some changes to the representation of CXString
by renaming a few fields (but keeping the size
of the object the same).
llvm-svn: 119337
|
|
|
|
| |
llvm-svn: 119322
|
|
|
|
|
|
|
| |
their own .cpp file and make the interpretation
of its flags private.
llvm-svn: 119319
|
|
|
|
|
|
| |
traffic.
llvm-svn: 119290
|
|
|
|
|
|
|
| |
certain internal type-checking procedures as well as for representing
certain implicitly-generated operations. Uses to follow.
llvm-svn: 119289
|
|
|
|
| |
llvm-svn: 119287
|
|
|
|
| |
llvm-svn: 119282
|
|
|
|
|
|
|
| |
Clang currently uses a ridiculous amount of stack space when inlining
this function, which can lead to premature stack overflows.
llvm-svn: 119281
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
the Stmt* visitation in CursorVisitor to be
data-recursive.
Since AnnotationTokensWorker explicitly calls
CursorVisitor::VisitChildren(), it essentially
transforms the data-recursive algorithm in
CursorVisitor back into a non-data recursive one.
This is particularly bad because the data-recursive
algorithm uses more stack space per stack frame,
which can cause us to blow the stack in some cases.
"Fix" this by making the stack that AnnotationTokensWorker
runs in really huge. The real fix is to modify
AnnotationTokensWorker not to do the explicit
recursive call.
llvm-svn: 119047
|
|
|
|
|
|
|
|
| |
remaining Exprs still
covered by the normal recursive visitation.
llvm-svn: 119030
|
|
|
|
| |
llvm-svn: 119028
|
|
|
|
| |
llvm-svn: 118990
|