diff options
| author | Chris Lattner <sabre@nondot.org> | 2010-05-09 05:36:05 +0000 |
|---|---|---|
| committer | Chris Lattner <sabre@nondot.org> | 2010-05-09 05:36:05 +0000 |
| commit | b7e7f722a25ece99834a6d9e447b2e89e7c5a56a (patch) | |
| tree | c2dc3d80a4fd04a1fb56ec84f6fa5a7a6a4d1302 /clang/lib/Frontend/PCHWriterStmt.cpp | |
| parent | 82828a31f67e1eba976dbcfada8d4f26a127845c (diff) | |
| download | bcm5719-llvm-b7e7f722a25ece99834a6d9e447b2e89e7c5a56a.tar.gz bcm5719-llvm-b7e7f722a25ece99834a6d9e447b2e89e7c5a56a.zip | |
pchify CXXMemberCallExpr correctly. Before it would serialize
and deserialize as a CallExpr which is close, but ends up
deserializing with the wrong stmt class.
llvm-svn: 103371
Diffstat (limited to 'clang/lib/Frontend/PCHWriterStmt.cpp')
| -rw-r--r-- | clang/lib/Frontend/PCHWriterStmt.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/clang/lib/Frontend/PCHWriterStmt.cpp b/clang/lib/Frontend/PCHWriterStmt.cpp index a1993d37f2d..3c2022ea998 100644 --- a/clang/lib/Frontend/PCHWriterStmt.cpp +++ b/clang/lib/Frontend/PCHWriterStmt.cpp @@ -112,6 +112,7 @@ namespace { // C++ Statements void VisitCXXOperatorCallExpr(CXXOperatorCallExpr *E); + void VisitCXXMemberCallExpr(CXXMemberCallExpr *E); void VisitCXXConstructExpr(CXXConstructExpr *E); void VisitCXXNamedCastExpr(CXXNamedCastExpr *E); void VisitCXXStaticCastExpr(CXXStaticCastExpr *E); @@ -848,6 +849,11 @@ void PCHStmtWriter::VisitCXXOperatorCallExpr(CXXOperatorCallExpr *E) { Code = pch::EXPR_CXX_OPERATOR_CALL; } +void PCHStmtWriter::VisitCXXMemberCallExpr(CXXMemberCallExpr *E) { + VisitCallExpr(E); + Code = pch::EXPR_CXX_MEMBER_CALL; +} + void PCHStmtWriter::VisitCXXConstructExpr(CXXConstructExpr *E) { VisitExpr(E); Writer.AddDeclRef(E->getConstructor(), Record); |

