diff --git a/lib/CodeGen/CodeGenModule.cpp b/lib/CodeGen/CodeGenModule.cpp
index 99390c1..1867207 100644
--- a/lib/CodeGen/CodeGenModule.cpp
+++ b/lib/CodeGen/CodeGenModule.cpp
@@ -65,10 +65,10 @@
   assert(!verifyModule(TheModule));
 }
 
-/// WarnUnsupported - Print out a warning that codegen doesn't support the
+/// ErrorUnsupported - Print out an error that codegen doesn't support the
 /// specified stmt yet.
-void CodeGenModule::WarnUnsupported(const Stmt *S, const char *Type) {
-  unsigned DiagID = getDiags().getCustomDiagID(Diagnostic::Warning, 
+void CodeGenModule::ErrorUnsupported(const Stmt *S, const char *Type) {
+  unsigned DiagID = getDiags().getCustomDiagID(Diagnostic::Error, 
                                                "cannot codegen this %0 yet");
   SourceRange Range = S->getSourceRange();
   std::string Msg = Type;
@@ -76,10 +76,10 @@
                     &Msg, 1, &Range, 1);
 }
 
-/// WarnUnsupported - Print out a warning that codegen doesn't support the
+/// ErrorUnsupported - Print out an error that codegen doesn't support the
 /// specified decl yet.
-void CodeGenModule::WarnUnsupported(const Decl *D, const char *Type) {
-  unsigned DiagID = getDiags().getCustomDiagID(Diagnostic::Warning, 
+void CodeGenModule::ErrorUnsupported(const Decl *D, const char *Type) {
+  unsigned DiagID = getDiags().getCustomDiagID(Diagnostic::Error, 
                                                "cannot codegen this %0 yet");
   std::string Msg = Type;
   getDiags().Report(Context.getFullLoc(D->getLocation()), DiagID,
@@ -888,7 +888,7 @@
   case Decl::LinkageSpec: {
     LinkageSpecDecl *LSD = cast<LinkageSpecDecl>(D);
     if (LSD->getLanguage() == LinkageSpecDecl::lang_cxx)
-      WarnUnsupported(LSD, "linkage spec");
+      ErrorUnsupported(LSD, "linkage spec");
     // FIXME: implement C++ linkage, C linkage works mostly by C
     // language reuse already.
     break;
