Remove BlockStmtExpr. 
Block literals are now represented by the concrete BlockExpr class.
This is cleanup (removes a FIXME).
No functionality change.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56288 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/AST/Expr.cpp b/lib/AST/Expr.cpp
index 8a545d6..8d49c8e 100644
--- a/lib/AST/Expr.cpp
+++ b/lib/AST/Expr.cpp
@@ -1448,10 +1448,10 @@
 }
 
 // Blocks
-Stmt::child_iterator BlockStmtExpr::child_begin() {
+Stmt::child_iterator BlockExpr::child_begin() {
   return reinterpret_cast<Stmt**>(&Body);
 }
-Stmt::child_iterator BlockStmtExpr::child_end() {
+Stmt::child_iterator BlockExpr::child_end() {
   return reinterpret_cast<Stmt**>(&Body)+1;
 }
 
diff --git a/lib/AST/StmtPrinter.cpp b/lib/AST/StmtPrinter.cpp
index fbff987..e95b8c8 100644
--- a/lib/AST/StmtPrinter.cpp
+++ b/lib/AST/StmtPrinter.cpp
@@ -891,7 +891,7 @@
     const FunctionTypeProto *FT = cast<FunctionTypeProto>(AFT);
     OS << '(';
     std::string ParamStr;
-    for (BlockStmtExpr::arg_iterator AI = Node->arg_begin(),
+    for (BlockExpr::arg_iterator AI = Node->arg_begin(),
          E = Node->arg_end(); AI != E; ++AI) {
       if (AI != Node->arg_begin()) OS << ", ";
       ParamStr = (*AI)->getName();
@@ -907,11 +907,6 @@
   }
 }
 
-void StmtPrinter::VisitBlockStmtExpr(BlockStmtExpr *Node) {
-  VisitBlockExpr(Node);
-  PrintRawCompoundStmt(Node->getBody());
-}
-
 void StmtPrinter::VisitBlockDeclRefExpr(BlockDeclRefExpr *Node) {
   OS << Node->getDecl()->getName();
 }
diff --git a/lib/AST/StmtSerialization.cpp b/lib/AST/StmtSerialization.cpp
index 5dbd3cd..dea0ba4 100644
--- a/lib/AST/StmtSerialization.cpp
+++ b/lib/AST/StmtSerialization.cpp
@@ -1112,13 +1112,13 @@
 //   Serialization for Clang Extensions.
 //===----------------------------------------------------------------------===//
 
-void BlockStmtExpr::EmitImpl(Serializer& S) const {
+void BlockExpr::EmitImpl(Serializer& S) const {
   S.Emit(getType());
   S.Emit(getCaretLocation());
   S.EmitOwnedPtr(Body);
 }
 
-BlockStmtExpr* BlockStmtExpr::CreateImpl(Deserializer& D, ASTContext& C) {
+BlockExpr* BlockExpr::CreateImpl(Deserializer& D, ASTContext& C) {
   QualType Q = QualType::ReadVal(D);
   SourceLocation L = SourceLocation::ReadVal(D);
   /*CompoundStmt* BodyStmt = cast<CompoundStmt>(*/D.ReadOwnedPtr<Stmt>(C)/*)*/;