aboutsummaryrefslogtreecommitdiff
path: root/lib/Sema/SemaCXXCast.cpp
diff options
context:
space:
mode:
authorDouglas Gregor <dgregor@apple.com>2011-02-28 20:01:57 +0000
committerDouglas Gregor <dgregor@apple.com>2011-02-28 20:01:57 +0000
commit4c9be89bb615ec07eb3ed507c8fa9d0baa8a5ad7 (patch)
treea1b918295232ef44468ada01cab55c79ded0b028 /lib/Sema/SemaCXXCast.cpp
parent3d04a0e534b43504f6879657d47891625bd63352 (diff)
Push nested-name-specifier source location information into
UnresolvedLookupExpr and UnresolvedMemberExpr. Also, improve the computation that checks whether the base of a member expression (either unresolved or dependent-scoped) is implicit. The previous check didn't cover all of the cases we use in our representation, which threw off source-location information for these expressions (which, in turn, caused some breakage in libclang's token annotation). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@126681 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Sema/SemaCXXCast.cpp')
-rw-r--r--lib/Sema/SemaCXXCast.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/lib/Sema/SemaCXXCast.cpp b/lib/Sema/SemaCXXCast.cpp
index 506d2612ff..5b28bc3d9f 100644
--- a/lib/Sema/SemaCXXCast.cpp
+++ b/lib/Sema/SemaCXXCast.cpp
@@ -642,7 +642,8 @@ CheckStaticCast(Sema &Self, Expr *&SrcExpr, QualType DestType,
if (SrcExpr->getType() == Self.Context.OverloadTy) {
OverloadExpr* oe = OverloadExpr::find(SrcExpr).Expression;
Self.Diag(OpRange.getBegin(), diag::err_bad_static_cast_overload)
- << oe->getName() << DestType << OpRange << oe->getQualifierRange();
+ << oe->getName() << DestType << OpRange
+ << oe->getQualifierLoc().getSourceRange();
Self.NoteAllOverloadCandidates(SrcExpr);
} else {
diagnoseBadCast(Self, msg, CT_Static, OpRange, SrcExpr, DestType);
@@ -1289,7 +1290,7 @@ static ExprResult ResolveAndFixSingleFunctionTemplateSpecialization(
OverloadExpr* oe = OverloadExpr::find(SrcExpr).Expression;
Self.Diag(OpRangeForComplaining.getBegin(), DiagIDForComplaining)
<< oe->getName() << DestTypeForComplaining << OpRangeForComplaining
- << oe->getQualifierRange();
+ << oe->getQualifierLoc().getSourceRange();
Self.NoteAllOverloadCandidates(SrcExpr);
}
return SingleFunctionExpression;