summaryrefslogtreecommitdiffstats
path: root/clang/lib/Serialization
diff options
context:
space:
mode:
Diffstat (limited to 'clang/lib/Serialization')
-rw-r--r--clang/lib/Serialization/ASTReaderStmt.cpp12
-rw-r--r--clang/lib/Serialization/ASTWriterStmt.cpp12
2 files changed, 9 insertions, 15 deletions
diff --git a/clang/lib/Serialization/ASTReaderStmt.cpp b/clang/lib/Serialization/ASTReaderStmt.cpp
index 86e9cdc3cb1..9bf417c7b13 100644
--- a/clang/lib/Serialization/ASTReaderStmt.cpp
+++ b/clang/lib/Serialization/ASTReaderStmt.cpp
@@ -429,8 +429,8 @@ void ASTStmtReader::VisitDeclRefExpr(DeclRefExpr *E) {
? DeclRefExpr::HasExplicitTemplateArgumentListFlag : 0));
if (HasQualifier) {
- E->getNameQualifier()->NNS = Reader.ReadNestedNameSpecifier(Record, Idx);
- E->getNameQualifier()->Range = ReadSourceRange(Record, Idx);
+ E->getNameQualifier()->QualifierLoc
+ = Reader.ReadNestedNameSpecifierLoc(F, Record, Idx);
}
if (HasExplicitTemplateArgs) {
@@ -1563,11 +1563,9 @@ Stmt *ASTReader::ReadStmtFromStream(PerFileData &F) {
// logic with a MemberExpr::CreateEmpty.
assert(Idx == 0);
- NestedNameSpecifier *NNS = 0;
- SourceRange QualifierRange;
+ NestedNameSpecifierLoc QualifierLoc;
if (Record[Idx++]) { // HasQualifier.
- NNS = ReadNestedNameSpecifier(Record, Idx);
- QualifierRange = ReadSourceRange(F, Record, Idx);
+ QualifierLoc = ReadNestedNameSpecifierLoc(F, Record, Idx);
}
TemplateArgumentListInfo ArgInfo;
@@ -1593,7 +1591,7 @@ Stmt *ASTReader::ReadStmtFromStream(PerFileData &F) {
DeclarationNameInfo MemberNameInfo(MemberD->getDeclName(), MemberLoc);
bool IsArrow = Record[Idx++];
- S = MemberExpr::Create(*Context, Base, IsArrow, NNS, QualifierRange,
+ S = MemberExpr::Create(*Context, Base, IsArrow, QualifierLoc,
MemberD, FoundDecl, MemberNameInfo,
HasExplicitTemplateArgs ? &ArgInfo : 0, T, VK, OK);
ReadDeclarationNameLoc(F, cast<MemberExpr>(S)->MemberDNLoc,
diff --git a/clang/lib/Serialization/ASTWriterStmt.cpp b/clang/lib/Serialization/ASTWriterStmt.cpp
index da194d3aa09..21f1d512532 100644
--- a/clang/lib/Serialization/ASTWriterStmt.cpp
+++ b/clang/lib/Serialization/ASTWriterStmt.cpp
@@ -382,10 +382,8 @@ void ASTStmtWriter::VisitDeclRefExpr(DeclRefExpr *E) {
Record.push_back(E->hasQualifier());
Record.push_back(E->hasExplicitTemplateArgs());
- if (E->hasQualifier()) {
- Writer.AddNestedNameSpecifier(E->getQualifier(), Record);
- Writer.AddSourceRange(E->getQualifierRange(), Record);
- }
+ if (E->hasQualifier())
+ Writer.AddNestedNameSpecifierLoc(E->getQualifierLoc(), Record);
if (E->hasExplicitTemplateArgs()) {
unsigned NumTemplateArgs = E->getNumTemplateArgs();
@@ -541,10 +539,8 @@ void ASTStmtWriter::VisitMemberExpr(MemberExpr *E) {
// Don't call VisitExpr, we'll write everything here.
Record.push_back(E->hasQualifier());
- if (E->hasQualifier()) {
- Writer.AddNestedNameSpecifier(E->getQualifier(), Record);
- Writer.AddSourceRange(E->getQualifierRange(), Record);
- }
+ if (E->hasQualifier())
+ Writer.AddNestedNameSpecifierLoc(E->getQualifierLoc(), Record);
Record.push_back(E->hasExplicitTemplateArgs());
if (E->hasExplicitTemplateArgs()) {
OpenPOWER on IntegriCloud