| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
Patch by Loïc Jaquemet!
llvm-svn: 191345
|
| |
|
|
|
|
|
|
| |
written attributes in a property declaration.
rdar://13684512
llvm-svn: 179803
|
| |
|
|
|
|
|
|
|
|
|
|
| |
for plowing through macros.
This fixes a subtle bug reported in <rdar://problem/12584554> where a double-nested
macro could lead to an incorrect fixit location with live issues.
This fix also uncovers a bunch of subtle bugs in our indexer test cases which
are now fixed (mostly around source ranges for attributes).
llvm-svn: 170468
|
| |
|
|
|
|
|
|
| |
a given entity, so that we can tell when the entity was
introduced/deprecated/obsoleted on each platform for which we have an
annotation. Addresses <rdar://problem/11365715>.
llvm-svn: 156347
|
| |
|
|
|
|
|
|
|
|
| |
CXCursor_ObjCInstanceMethodDecl/CXCursor_ObjCClassMethodDecl cursor,
return from clang_getCursorLocation the start location of the method name.
rdar://11105223
llvm-svn: 153303
|
| |
|
|
|
|
| |
from Manuel Holtgrewe!
llvm-svn: 141200
|
| |
|
|
|
|
|
|
| |
-Add the location of the class name to all objc container decls, not just ObjCInterfaceDecl.
-Make objc decls consistent with the rest of the NamedDecls and have getLocation() point to the
class name, not the location of '@'.
llvm-svn: 141061
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
increasingly prevailing case to the point that new features
like ARC don't even support the fragile ABI anymore.
This required a little bit of reshuffling with exceptions
because a check was assuming that ObjCNonFragileABI was
only being set in ObjC mode, and that's actually a bit
obnoxious to do.
Most, though, it involved a perl script to translate a ton
of test cases.
Mostly no functionality change for driver users, although
there are corner cases with disabling language-specific
exceptions that we should handle more correctly now.
llvm-svn: 140957
|
| |
|
|
|
|
| |
annotation to Objective-C object types. Fixes <rdar://problem/10142685>.
llvm-svn: 140778
|
| |
|
|
|
|
| |
Related to rdar://10087069.
llvm-svn: 140551
|
| |
|
|
|
|
|
| |
a DeclRefExpr, MemberExpr, etc. with a CastExpr if it is ImplicitCast,
since the implicit cast is the one that is invisible in source code.
llvm-svn: 139547
|
| |
|
|
|
|
|
|
| |
user-declared) as implicit.
This results in libclang ignoring such methods.
llvm-svn: 137852
|
| |
|
|
|
|
| |
attributes. Fixes <rdar://problem/9561076>.
llvm-svn: 135273
|
| |
|
|
|
|
| |
range for declarations using postfix types.
llvm-svn: 127251
|
| |
|
|
| |
llvm-svn: 127225
|
| |
|
|
| |
llvm-svn: 127119
|
| |
|
|
| |
llvm-svn: 115618
|
| |
|
|
|
|
|
|
| |
waiting until we think we need it: we didn't catch all of the places
where we actually needed it, and we probably wouldn't ever. Fixes a
C++ PCH crasher.
llvm-svn: 115617
|
| |
|
|
|
|
| |
address of a label (GNU extension).
llvm-svn: 113564
|
| |
|
|
|
|
| |
collection type for iboutletcollection attributes.
llvm-svn: 112139
|
| |
|
|
|
|
|
| |
of a cursor or code-completion result, e.g., whether that result
refers to an unavailable, deleted, or deprecated declaration.
llvm-svn: 111858
|
| |
|
|
|
|
| |
test works with ToT Clang already
llvm-svn: 108318
|
| |
|
|
| |
llvm-svn: 104135
|
| |
|
|
|
|
|
|
| |
locations for
many things.
llvm-svn: 103583
|
| |
|
|
|
|
|
| |
before the selector name (but after the return type). Among other things,
this allows IBAction to be implemented with an attribute.
llvm-svn: 96623
|
| |
|
|
|
|
| |
to the children of a Decl.
llvm-svn: 96599
|
| |
|
|
|
|
| |
ranges for Attr objects, so lookup by cursor location currently doesn't work.
llvm-svn: 96571
|
| |
|
|
| |
llvm-svn: 96160
|
| |
|
|
| |
llvm-svn: 96158
|
| |
|
|
|
|
|
| |
string when given a cursor that does not have a name. Also, don't give
silly names for statements and non-reference expressions.
llvm-svn: 94426
|
| |
|
|
|
|
|
| |
the tag kind (union, struct, class, enum) over to the name of the tag,
if there is a name, since most clients want to point at the name.
llvm-svn: 94424
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
region of interest (if provided). Implement clang_getCursor() in terms
of this traversal rather than using the Index library; the unified
cursor visitor is more complete, and will be The Way Forward.
Minor other tweaks needed to make this work:
- Extend Preprocessor::getLocForEndOfToken() to accept an offset
from the end, making it easy to move to the last character in the
token (rather than just past the end of the token).
- In Lexer::MeasureTokenLength(), the length of whitespace is zero.
llvm-svn: 94200
|
| |
|
|
|
|
|
|
| |
declarations that have enough source information to make such a walk
useful. This includes walking into variable initializers and enum
constants, the types behind typedefs, etc.
llvm-svn: 94124
|
| |
|
|
|
|
| |
a few important subkinds. Now we're cookin' with gas!
llvm-svn: 94116
|
| |
|
|
|
|
| |
kinds, so that we see referenced types, protocols, classes, etc.
llvm-svn: 94085
|
| |
|
|
|
|
| |
typedefs only (for now).
llvm-svn: 94078
|
| |
|
|
|
|
|
|
|
|
|
|
| |
CIndex functions that (1) map from a reference or declaration to the
corresponding definition, if available, and (2) determine whether a
given declaration cursor is also a definition. This eliminates a lot
of duplication in the cursor kinds, and maps more closely to the Clang
ASTs.
This is another API + ABI breaker with no deprecation. Yay, progress.
llvm-svn: 93893
|
| |
|
|
|
|
| |
entity that a particular cursor references.
llvm-svn: 93830
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
cursor itself. In particular, for references this returns the source
range of the reference rather than the source range of the thing it
refers to.
Switch c-index-test from clang_getDeclExtent (which will eventually be
deprecated and removed) over to clang_getCursorExtent. The source
ranges we print for references now make sense; fix up the tests
appropriately.
llvm-svn: 93823
|
| |
|
|
|
|
| |
'contexts' from c-index-test output; it wasn't helpful and was extremely brittle.
llvm-svn: 93760
|
| |
|
|
|
|
|
|
|
| |
in CXCursor.cpp. With this sane representation, fix the class
reference that is part of Objective-C category declarations so that
the cursor's location matches up with the reference, not the class
being referred to.
llvm-svn: 93640
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
previously only had a single location (the @ in @interface); now we
know where the @ is (for the start of the declaration), where the
class name is (that's the normal "location" now for diagnostics), and
where the category name is. Also, eliminated the redundant "end"
location, since ObjCContainerDecl already has better @end information.
The only XFAIL'd test is temporary; will un-XFAIL-it once I've taught
CIndex how to use the new locations.
llvm-svn: 93639
|
| |
|
|
|
|
|
| |
source locations where the protocols were referenced rather than the
location of some random enclosing declaration.
llvm-svn: 93637
|
| |
|
|
|
|
| |
to CXCursor.cpp.
llvm-svn: 93634
|
| |
|
|
|
|
| |
This revealed a bunch of inconsistencies in how CXCursorKinds were being computed.
llvm-svn: 93618
|
| |
|
|
|
|
|
|
|
|
|
| |
piece of the declaration. The '@' and the 'end' are separate tokens,
and require two SourceLocations to accurately track.
This change was motivated because ObjCContainerDecl::getSourceRange()
would previously not return the entire range of the declaration (the
'end' would be left off).
llvm-svn: 92891
|
| |
|
|
|
|
| |
character in the last token.
llvm-svn: 92869
|
| |
|
|
|
|
| |
declaration. This implements <rdar://problem/7280072>.
llvm-svn: 92802
|
| |
|
|
|
|
|
|
|
| |
- This is designed to make it obvious that %clang_cc1 is a "test variable"
which is substituted. It is '%clang_cc1' instead of '%clang -cc1' because it
can be useful to redefine what gets run as 'clang -cc1' (for example, to set
a default target).
llvm-svn: 91446
|
| |
|
|
| |
llvm-svn: 91303
|