diff options
| author | Chris Lattner <sabre@nondot.org> | 2010-05-09 06:40:08 +0000 | 
|---|---|---|
| committer | Chris Lattner <sabre@nondot.org> | 2010-05-09 06:40:08 +0000 | 
| commit | e2437f45381cf49a08b67c7e502fc588ada1ea15 (patch) | |
| tree | e063e997fa9b47332ec4a50b22bede6e50cdc92b /clang/lib/Frontend/PCHWriterStmt.cpp | |
| parent | 982673396376167dcec6bdff1afacb47d0f1f6a7 (diff) | |
| download | bcm5719-llvm-e2437f45381cf49a08b67c7e502fc588ada1ea15.tar.gz bcm5719-llvm-e2437f45381cf49a08b67c7e502fc588ada1ea15.zip | |
pch'ify default argument definitions and uses.
llvm-svn: 103376
Diffstat (limited to 'clang/lib/Frontend/PCHWriterStmt.cpp')
| -rw-r--r-- | clang/lib/Frontend/PCHWriterStmt.cpp | 15 | 
1 files changed, 15 insertions, 0 deletions
| diff --git a/clang/lib/Frontend/PCHWriterStmt.cpp b/clang/lib/Frontend/PCHWriterStmt.cpp index e042e77c6b3..e64ebbe8a31 100644 --- a/clang/lib/Frontend/PCHWriterStmt.cpp +++ b/clang/lib/Frontend/PCHWriterStmt.cpp @@ -125,6 +125,7 @@ namespace {      void VisitCXXTypeidExpr(CXXTypeidExpr *E);      void VisitCXXThisExpr(CXXThisExpr *E);      void VisitCXXThrowExpr(CXXThrowExpr *E); +    void VisitCXXDefaultArgExpr(CXXDefaultArgExpr *E);    };  } @@ -934,11 +935,25 @@ void PCHStmtWriter::VisitCXXThisExpr(CXXThisExpr *E) {  }  void PCHStmtWriter::VisitCXXThrowExpr(CXXThrowExpr *E) { +  VisitExpr(E);    Writer.AddSourceLocation(E->getThrowLoc(), Record);    Writer.WriteSubStmt(E->getSubExpr());    Code = pch::EXPR_CXX_THROW;  } +void PCHStmtWriter::VisitCXXDefaultArgExpr(CXXDefaultArgExpr *E) { +  VisitExpr(E); +  Writer.AddSourceLocation(E->getUsedLocation(), Record); +  if (E->isExprStored()) { +    Record.push_back(1); +    Writer.WriteSubStmt(E->getExpr()); +  } else { +    Record.push_back(0); +  } + +  Code = pch::EXPR_CXX_DEFAULT_ARG; +} +  //===----------------------------------------------------------------------===//  // PCHWriter Implementation | 

