diff options
author | Eli Friedman <eli.friedman@gmail.com> | 2008-02-06 22:48:16 +0000 |
---|---|---|
committer | Eli Friedman <eli.friedman@gmail.com> | 2008-02-06 22:48:16 +0000 |
commit | 510190777c4bd53e960eea4665b204778fec1b64 (patch) | |
tree | db38a8a65c77dd9e8c50f9ac76d6eabf940e25df /AST/StmtSerialization.cpp | |
parent | c8edf6bd5f76bf50411d037c83d36847edfa68f0 (diff) |
Make sure to propagate qualifiers through the member operator.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@46830 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'AST/StmtSerialization.cpp')
-rw-r--r-- | AST/StmtSerialization.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/AST/StmtSerialization.cpp b/AST/StmtSerialization.cpp index f075e1c12d..1915748111 100644 --- a/AST/StmtSerialization.cpp +++ b/AST/StmtSerialization.cpp @@ -686,6 +686,7 @@ void MemberExpr::EmitImpl(Serializer& S) const { S.EmitPtr(MemberDecl); S.EmitBool(IsArrow); S.EmitOwnedPtr(Base); + S.Emit(getType()); } MemberExpr* MemberExpr::CreateImpl(Deserializer& D) { @@ -693,8 +694,9 @@ MemberExpr* MemberExpr::CreateImpl(Deserializer& D) { FieldDecl* MemberDecl = cast<FieldDecl>(D.ReadPtr<Decl>()); bool IsArrow = D.ReadBool(); Expr* base = D.ReadOwnedPtr<Expr>(); + QualType T = QualType::ReadVal(D); - return new MemberExpr(base,IsArrow,MemberDecl,L); + return new MemberExpr(base,IsArrow,MemberDecl,L,T); } void NullStmt::EmitImpl(Serializer& S) const { |