summaryrefslogtreecommitdiffstats
path: root/clang/lib
diff options
context:
space:
mode:
authorFariborz Jahanian <fjahanian@apple.com>2010-06-04 19:06:53 +0000
committerFariborz Jahanian <fjahanian@apple.com>2010-06-04 19:06:53 +0000
commit9643399ef0f4ea5390e0e3332f88b0822f8f1416 (patch)
tree13ded23eba917080160b4f85b12c88bbf70c5b7f /clang/lib
parent8e346702b6f7d628ad1bf5fc3e8cdc697b08a9b7 (diff)
downloadbcm5719-llvm-9643399ef0f4ea5390e0e3332f88b0822f8f1416.tar.gz
bcm5719-llvm-9643399ef0f4ea5390e0e3332f88b0822f8f1416.zip
Added a field to BlockDeclRefExpr for future use.
No functionality change yet. llvm-svn: 105479
Diffstat (limited to 'clang/lib')
-rw-r--r--clang/lib/AST/StmtProfile.cpp2
-rw-r--r--clang/lib/Frontend/PCHReaderStmt.cpp3
-rw-r--r--clang/lib/Frontend/PCHWriterStmt.cpp1
3 files changed, 5 insertions, 1 deletions
diff --git a/clang/lib/AST/StmtProfile.cpp b/clang/lib/AST/StmtProfile.cpp
index ac3a9eeda66..4b17e5262e3 100644
--- a/clang/lib/AST/StmtProfile.cpp
+++ b/clang/lib/AST/StmtProfile.cpp
@@ -428,6 +428,8 @@ void StmtProfiler::VisitBlockDeclRefExpr(BlockDeclRefExpr *S) {
VisitDecl(S->getDecl());
ID.AddBoolean(S->isByRef());
ID.AddBoolean(S->isConstQualAdded());
+ if (S->getCopyConstructorExpr())
+ Visit(S->getCopyConstructorExpr());
}
static Stmt::StmtClass DecodeOperatorCall(CXXOperatorCallExpr *S,
diff --git a/clang/lib/Frontend/PCHReaderStmt.cpp b/clang/lib/Frontend/PCHReaderStmt.cpp
index 3931adbe8f2..d58a9730bb2 100644
--- a/clang/lib/Frontend/PCHReaderStmt.cpp
+++ b/clang/lib/Frontend/PCHReaderStmt.cpp
@@ -764,7 +764,8 @@ unsigned PCHStmtReader::VisitBlockDeclRefExpr(BlockDeclRefExpr *E) {
E->setLocation(SourceLocation::getFromRawEncoding(Record[Idx++]));
E->setByRef(Record[Idx++]);
E->setConstQualAdded(Record[Idx++]);
- return 0;
+ E->setCopyConstructorExpr(cast_or_null<Expr>(StmtStack.back()));
+ return 1;
}
//===----------------------------------------------------------------------===//
diff --git a/clang/lib/Frontend/PCHWriterStmt.cpp b/clang/lib/Frontend/PCHWriterStmt.cpp
index a9ee43527ce..b3501d09844 100644
--- a/clang/lib/Frontend/PCHWriterStmt.cpp
+++ b/clang/lib/Frontend/PCHWriterStmt.cpp
@@ -688,6 +688,7 @@ void PCHStmtWriter::VisitBlockDeclRefExpr(BlockDeclRefExpr *E) {
Writer.AddSourceLocation(E->getLocation(), Record);
Record.push_back(E->isByRef());
Record.push_back(E->isConstQualAdded());
+ Writer.WriteSubStmt(E->getCopyConstructorExpr());
Code = pch::EXPR_BLOCK_DECL_REF;
}
OpenPOWER on IntegriCloud