aboutsummaryrefslogtreecommitdiff
path: root/lib/Parse/ParseExprCXX.cpp
diff options
context:
space:
mode:
authorDouglas Gregor <dgregor@apple.com>2011-02-25 16:51:05 +0000
committerDouglas Gregor <dgregor@apple.com>2011-02-25 16:51:05 +0000
commitb17cb9e90d1d98c2cbcc3c0125eee9897b554921 (patch)
treea0afb52c69dd0873b9c3fd78858697d23fd157c3 /lib/Parse/ParseExprCXX.cpp
parentdb9924191092b4d426cc066637d81698211846aa (diff)
Make sure to give CXXScopeSpec::SetInvalid() a valid source
range. Fixes four new failures in the GCC testsuite. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@126495 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Parse/ParseExprCXX.cpp')
-rw-r--r--lib/Parse/ParseExprCXX.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/Parse/ParseExprCXX.cpp b/lib/Parse/ParseExprCXX.cpp
index 2abec6f0cc..d8db711809 100644
--- a/lib/Parse/ParseExprCXX.cpp
+++ b/lib/Parse/ParseExprCXX.cpp
@@ -217,7 +217,9 @@ bool Parser::ParseOptionalCXXScopeSpecifier(CXXScopeSpec &SS,
continue;
} else {
- SS.SetInvalid(SourceRange(SS.getBeginLoc(), CCLoc));
+ SourceLocation Start = SS.getBeginLoc().isValid()? SS.getBeginLoc()
+ : CCLoc;
+ SS.SetInvalid(SourceRange(Start, CCLoc));
}
continue;