Fix PR2281: these two warnings should be promoted to error on
pedantic error.  Perhaps I should add a class of 'extension' that is
'extension that warns by default', which would be cleaner.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@50633 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/Driver/clang.cpp b/Driver/clang.cpp
index 62f570f..e7dacc4 100644
--- a/Driver/clang.cpp
+++ b/Driver/clang.cpp
@@ -500,6 +500,15 @@
     
   if (MSExtensions) // MS allows unnamed struct/union fields.
     Diags.setDiagnosticMapping(diag::w_no_declarators, diag::MAP_IGNORE);
+
+  // If -pedantic-errors is set, turn extensions that warn by default into
+  // errors. 
+  if (ErrorOnExtensions) {
+    Diags.setDiagnosticMapping(diag::warn_hex_escape_too_large,
+                               diag::MAP_ERROR);
+    Diags.setDiagnosticMapping(diag::warn_octal_escape_too_large,
+                               diag::MAP_ERROR);
+  }
 }
 
 //===----------------------------------------------------------------------===//