| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
This revealed a bunch of inconsistencies in how CXCursorKinds were being computed.
llvm-svn: 93618
|
| |
|
|
| |
llvm-svn: 93601
|
| |
|
|
|
|
| |
pointer-to-member operator.
llvm-svn: 93592
|
| |
|
|
| |
llvm-svn: 93584
|
| |
|
|
| |
llvm-svn: 93574
|
| |
|
|
| |
llvm-svn: 93546
|
| |
|
|
|
|
|
|
| |
to directly check the results of clang_getCursor(). Also, start
migrating some index-test tests over to c-index test [*] and some
grep-using tests over to FileCheck.
llvm-svn: 93537
|
| |
|
|
|
|
| |
Fixes radar 7546096.
llvm-svn: 93519
|
| |
|
|
|
|
|
|
| |
references a const variable of integral type, the initializer may be
in a different declaration than the one that name-lookup saw. Find the
initializer anyway. Fixes PR6045.
llvm-svn: 93514
|
| |
|
|
|
|
| |
qualifiers. Fixes PR6021.
llvm-svn: 93513
|
| |
|
|
|
|
|
|
|
|
| |
Adjust BuildMemberReferenceExpr to perform the inheritance check on implicit
member accesses, which can arise from unqualified lookups and therefore may
reference decls from enclosing class scopes.
Fixes PR 5838.
llvm-svn: 93510
|
| |
|
|
|
|
| |
function is not available. Fixes PR 6012.
llvm-svn: 93508
|
| |
|
|
|
|
| |
messages when emitted results to the standard Diagnostics output. Fixes PR 6033.
llvm-svn: 93507
|
| |
|
|
| |
llvm-svn: 93503
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
do not look into base classes if there are any dependent base
classes. Instead, note in the lookup result that we couldn't look into
any dependent bases. Use that new result kind to detect when this case
occurs, so that we can fall back to treating the type/value/etc. as a
member of an unknown specialization.
Fixes an issue where we were resolving lookup at template definition
time and then missing an ambiguity at template instantiation time.
llvm-svn: 93497
|
| |
|
|
| |
llvm-svn: 93493
|
| |
|
|
|
|
|
| |
for __block variables of same name declared in multiple scopes.
Fixes radar 7540194
llvm-svn: 93474
|
| |
|
|
| |
llvm-svn: 93458
|
| |
|
|
| |
llvm-svn: 93444
|
| |
|
|
| |
llvm-svn: 93440
|
| |
|
|
|
|
| |
the dyn_cast against NULL rather than the *input*. Fixes PR6025.
llvm-svn: 93435
|
| |
|
|
|
|
|
|
| |
finds nothing), and the current instantiation has dependent base
classes, treat the qualified lookup as if it referred to an unknown
specialization. Fixes PR6031.
llvm-svn: 93433
|
| |
|
|
| |
llvm-svn: 93422
|
| |
|
|
|
|
|
| |
for special diagnostics. Unfortunately, the non-overload diagnostics are not
this good.
llvm-svn: 93420
|
| |
|
|
|
|
|
|
|
|
| |
LookupVisibleDecls, unifying the name lookup mechanisms used by code
completion and typo correction. Aside from the software-engineering
improvements, this makes code-completion see through using directives
and see ivars when performing unqualified name lookup in an
Objective-C instance method.
llvm-svn: 93397
|
| |
|
|
|
|
| |
about 'object argument' vs. 'nth argument'.
llvm-svn: 93395
|
| |
|
|
|
|
|
|
| |
place.
Fixes radar 7284618.
llvm-svn: 93382
|
| |
|
|
|
|
|
|
| |
the "typed" text, first, then take into account
nested-name-specifiers, name hiding, etc. This means that the
resulting sort is actually alphabetical :)
llvm-svn: 93370
|
| |
|
|
|
|
|
|
|
|
|
|
| |
to be considering user-defined conversions in the first place.
Doug, please review; I'm not sure what we should be doing if we see a real
ambiguity in selecting a copy constructor when otherwise suppressing
user-defined conversions.
Fixes PR6014.
llvm-svn: 93365
|
| |
|
|
| |
llvm-svn: 93362
|
| |
|
|
| |
llvm-svn: 93361
|
| |
|
|
|
|
| |
constructor. Fixes radar 7537770.
llvm-svn: 93358
|
| |
|
|
|
|
|
|
|
|
|
| |
provide completions for @ keywords. Previously, we only provided
@-completions after an @ was actually typed, which is useful but
probably not the common case.
Also, make sure a few Objective-C 2.0 completions only show up when
Objective-C 2.0 support is enabled (the default).
llvm-svn: 93354
|
| |
|
|
| |
llvm-svn: 93353
|
| |
|
|
| |
llvm-svn: 93348
|
| |
|
|
| |
llvm-svn: 93347
|
| |
|
|
| |
llvm-svn: 93346
|
| |
|
|
| |
llvm-svn: 93340
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
that name constructors, the endless joys of out-of-line constructor
definitions, and various other corner cases that the previous hack
never imagined. Fixes PR5688 and tightens up semantic analysis for
constructor names.
Additionally, fixed a problem where we wouldn't properly enter the
declarator scope of a parenthesized declarator. We were entering the
scope, then leaving it when we saw the ")"; now, we re-enter the
declarator scope before parsing the parameter list.
Note that we are forced to perform some tentative parsing within a
class (call it C) to tell the difference between
C(int); // constructor
and
C (f)(int); // member function
which is rather unfortunate. And, although it isn't necessary for
correctness, we use the same tentative-parsing mechanism for
out-of-line constructors to improve diagnostics in icky cases like:
C::C C::f(int); // error: C::C refers to the constructor name, but
// we complain nicely and recover by treating it as
// a type.
llvm-svn: 93322
|
| |
|
|
|
|
|
| |
information to feed diagnostics instead of regenerating it. Much room for
improvement here, but fixes some unfortunate problems reporting on method calls.
llvm-svn: 93316
|
| |
|
|
|
|
|
| |
This now rejects literal operators that don't meet the requirements.
Templates are not yet checked for.
llvm-svn: 93315
|
| |
|
|
| |
llvm-svn: 93314
|
| |
|
|
|
|
|
| |
disabled with the intent that users can start with them now and not have to change
a thing to have them work when we implement the features.
llvm-svn: 93312
|
| |
|
|
| |
llvm-svn: 93287
|
| |
|
|
|
|
|
|
| |
why the candidate is non-viable. There's a lot we can do to improve this, but
it's a good start. Further improvements should probably be integrated with the
bad-initialization reporting routines.
llvm-svn: 93277
|
| |
|
|
|
|
| |
ivar name lookup. Fixes pr5986.
llvm-svn: 93271
|
| |
|
|
|
|
|
|
|
|
| |
unevaluated contexts, because they only matter for code that will
actually be evaluated at runtime.
As part of this, I had to extend PartialDiagnostic to support fix-it
hints.
llvm-svn: 93266
|
| |
|
|
| |
llvm-svn: 93260
|
| |
|
|
|
|
| |
not in an evaluated context. This removes some bogus warnings.
llvm-svn: 93258
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
name a template, when they occur in a base-specifier. This is one of
the (few) places where we know for sure that an identifier followed by
a '<' must be a template name, so we can diagnose and recover well:
test/SemaTemplate/dependent-base-classes.cpp:9:16: error: missing
'template'
keyword prior to dependent template name 'T::apply'
struct X1 : T::apply<U> { }; // expected-error{{missing 'template' ...
^
template
test/SemaTemplate/dependent-base-classes.cpp:12:13: error: unknown
template name
'vector'
struct X2 : vector<T> { }; // expected-error{{unknown template name
'vector'}}
^
2 diagnostics generated.
llvm-svn: 93257
|