diff --git a/include/clang/Basic/DiagnosticASTKinds.td b/include/clang/Basic/DiagnosticASTKinds.td
index a54f39e..7074e02 100644
--- a/include/clang/Basic/DiagnosticASTKinds.td
+++ b/include/clang/Basic/DiagnosticASTKinds.td
@@ -107,7 +107,7 @@
   "see all)">;
 def note_constexpr_call_here : Note<"in call to '%0'">;
 def warn_integer_constant_overflow : Warning<
-  "overflow in case constant expression results in value %0 of type %1">,
+  "overflow of constant expression results in value %0 of type %1">,
   InGroup<DiagGroup<"integer-overflow">>;
 
 // inline asm related.
diff --git a/test/Sema/switch-1.c b/test/Sema/switch-1.c
index bcf30a8..50129c3 100644
--- a/test/Sema/switch-1.c
+++ b/test/Sema/switch-1.c
@@ -4,11 +4,11 @@
 
 int f(int i) {
   switch (i) {
-    case 2147483647 + 2: // expected-warning {{overflow in case constant expression results in value -2147483647 of type 'int'}}
+    case 2147483647 + 2: // expected-warning {{overflow of constant expression results in value -2147483647 of type 'int'}}
       return 1;
-    case 9223372036854775807L * 4: // expected-warning {{overflow in case constant expression results in value -4 of type 'long'}}
+    case 9223372036854775807L * 4: // expected-warning {{overflow of constant expression results in value -4 of type 'long'}}
       return 2;
-    case (123456 *789012) + 1:  // expected-warning {{overflow in case constant expression results in value -1375982336 of type 'int'}}
+    case (123456 *789012) + 1:  // expected-warning {{overflow of constant expression results in value -1375982336 of type 'int'}}
       return 3;
     case 2147483647:
       return 0;
