Change a whole lot of diagnostics to take QualType's directly 
instead of converting them to strings first.  This also fixes a
bunch of minor inconsistencies in the diagnostics emitted by clang
and adds a bunch of FIXME's to DiagnosticKinds.def.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59948 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Sema/SemaInit.cpp b/lib/Sema/SemaInit.cpp
index 1e26c84..42f9b14 100644
--- a/lib/Sema/SemaInit.cpp
+++ b/lib/Sema/SemaInit.cpp
@@ -144,7 +144,7 @@
     // This type is invalid, issue a diagnostic.
     Index++;
     SemaRef->Diag(IList->getLocStart(), diag::err_illegal_initializer_type)
-      << DeclType.getAsString();
+      << DeclType;
     hadError = true;
   } else {
     // In C, all types are either scalars or aggregates, but