give better diagnostics for converting between function pointer and void*.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45556 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/Sema/SemaDecl.cpp b/Sema/SemaDecl.cpp
index 5a58839..1165e52 100644
--- a/Sema/SemaDecl.cpp
+++ b/Sema/SemaDecl.cpp
@@ -394,6 +394,11 @@
          DeclType.getAsString(), rhsType.getAsString(), 
          Init->getSourceRange());
     break;
+  case FunctionVoidPointer:
+    Diag(Init->getLocStart(), diag::ext_typecheck_assign_pointer_void_func, 
+         DeclType.getAsString(), rhsType.getAsString(), 
+         Init->getSourceRange());
+    break;
   case IncompatiblePointer:
     Diag(Init->getLocStart(), diag::ext_typecheck_assign_incompatible_pointer,
          DeclType.getAsString(), rhsType.getAsString(),