move unsupported warning into a centralized place.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44502 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/CodeGen/CGStmt.cpp b/CodeGen/CGStmt.cpp
index d41d2de..40cdcd3 100644
--- a/CodeGen/CGStmt.cpp
+++ b/CodeGen/CGStmt.cpp
@@ -19,9 +19,6 @@
 using namespace clang;
 using namespace CodeGen;
 
-#include "clang/Basic/Diagnostic.h"
-#include "CodeGenModule.h"
-
 //===----------------------------------------------------------------------===//
 //                              Statement Emission
 //===----------------------------------------------------------------------===//
@@ -41,11 +38,7 @@
       else
         EmitAggExpr(E, 0, false);
     } else {
-      
-      unsigned DiagID = CGM.getDiags().getCustomDiagID(Diagnostic::Warning, 
-                                                  "cannot codegen this yet");
-      SourceRange Range = S->getSourceRange();
-      CGM.getDiags().Report(S->getLocStart(), DiagID, 0, 0, &Range, 1);
+      WarnUnsupported(S);
     }
     break;
   case Stmt::NullStmtClass: break;
diff --git a/CodeGen/CodeGenFunction.cpp b/CodeGen/CodeGenFunction.cpp
index 3602d60..db5072b 100644
--- a/CodeGen/CodeGenFunction.cpp
+++ b/CodeGen/CodeGenFunction.cpp
@@ -14,6 +14,7 @@
 #include "CodeGenFunction.h"
 #include "CodeGenModule.h"
 #include "clang/Basic/TargetInfo.h"
+#include "clang/Basic/Diagnostic.h"
 #include "clang/AST/AST.h"
 #include "llvm/Constants.h"
 #include "llvm/DerivedTypes.h"
@@ -143,3 +144,13 @@
   
   return CGT.getCGRecordLayout(Ty);
 }
+
+/// WarnUnsupported - Print out a warning that codegen doesn't support the
+/// specified stmt yet.
+void CodeGenFunction::WarnUnsupported(const Stmt *S) {
+  unsigned DiagID = CGM.getDiags().getCustomDiagID(Diagnostic::Warning, 
+                                                   "cannot codegen this yet");
+  SourceRange Range = S->getSourceRange();
+  CGM.getDiags().Report(S->getLocStart(), DiagID, 0, 0, &Range, 1);
+}
+
diff --git a/CodeGen/CodeGenFunction.h b/CodeGen/CodeGenFunction.h
index e4bf09b..2fd8063 100644
--- a/CodeGen/CodeGenFunction.h
+++ b/CodeGen/CodeGenFunction.h
@@ -269,6 +269,10 @@
   
   
   void EmitBlock(llvm::BasicBlock *BB);
+  
+  /// WarnUnsupported - Print out a warning that codegen doesn't support the
+  /// specified stmt yet.
+  void WarnUnsupported(const Stmt *S);
 
   //===--------------------------------------------------------------------===//
   //                                  Helpers