diff --git a/lib/Sema/SemaFixItUtils.cpp b/lib/Sema/SemaFixItUtils.cpp
index 3b76213..b78ea7d 100644
--- a/lib/Sema/SemaFixItUtils.cpp
+++ b/lib/Sema/SemaFixItUtils.cpp
@@ -182,6 +182,14 @@
       else if (isMacroDefined(*this, "NULL"))
         return " = NULL";
     }
+    if (T->isCharType())
+      return " = '\\0'";
+    if (T->isWideCharType())
+      return " = L'\\0'";
+    if (T->isChar16Type())
+      return " = u'\\0'";
+    if (T->isChar32Type())
+      return " = U'\\0'";
     return " = 0";
   }
 
diff --git a/test/FixIt/fixit-vexing-parse-cxx0x.cpp b/test/FixIt/fixit-vexing-parse-cxx0x.cpp
new file mode 100644
index 0000000..a870794
--- /dev/null
+++ b/test/FixIt/fixit-vexing-parse-cxx0x.cpp
@@ -0,0 +1,21 @@
+// RUN: %clang_cc1 -verify -x c++ -std=c++11 %s
+// RUN: %clang_cc1 -fdiagnostics-parseable-fixits -x c++ -std=c++11 %s 2>&1 | FileCheck %s
+
+struct X {
+  int i;
+};
+
+void func() {
+  // CHECK: fix-it:"{{.*}}":{10:6-10:8}:"{}"
+  X x(); // expected-warning {{function declaration}} expected-note{{replace parentheses with an initializer}}
+  
+  typedef int *Ptr;
+  // CHECK: fix-it:"{{.*}}":{14:8-14:10}:" = nullptr"
+  Ptr p(); // expected-warning {{function declaration}} expected-note {{replace parentheses with an initializer}}
+
+  // CHECK: fix-it:"{{.*}}":{17:15-17:17}:" = u'\\0'"
+  char16_t u16(); // expected-warning {{function declaration}} expected-note {{replace parentheses with an initializer}}
+
+  // CHECK: fix-it:"{{.*}}":{20:15-20:17}:" = U'\\0'"
+  char32_t u32(); // expected-warning {{function declaration}} expected-note {{replace parentheses with an initializer}}
+}
diff --git a/test/FixIt/fixit-vexing-parse.cpp b/test/FixIt/fixit-vexing-parse.cpp
index 0f0505f..8450590 100644
--- a/test/FixIt/fixit-vexing-parse.cpp
+++ b/test/FixIt/fixit-vexing-parse.cpp
@@ -76,5 +76,14 @@
 #define NULL 0
     // CHECK: fix-it:"{{.*}}":{78:10-78:12}:" = NULL"
     Ptr p(); // expected-warning {{function declaration}} expected-note {{replace parentheses with an initializer}}
+
+    // CHECK: fix-it:"{{.*}}":{81:11-81:13}:" = false"
+    bool b(); // expected-warning {{function declaration}} expected-note {{replace parentheses with an initializer}}
+
+    // CHECK: fix-it:"{{.*}}":{84:11-84:13}:" = '\\0'"
+    char c(); // expected-warning {{function declaration}} expected-note {{replace parentheses with an initializer}}
+
+    // CHECK: fix-it:"{{.*}}":{87:15-87:17}:" = L'\\0'"
+    wchar_t wc(); // expected-warning {{function declaration}} expected-note {{replace parentheses with an initializer}}
   }
 }
