Avoid including other headers from the msvcrt headers, duplicate some
definitions instead like Windows does.
Always define wchar_t (suggested by Dimitrie O. Paun), and use wchar_t
everywhere instead of WCHAR to avoid depending on Windows headers.

diff --git a/dlls/msvcrt/misc.c b/dlls/msvcrt/misc.c
index ea917f6..d292b6f 100644
--- a/dlls/msvcrt/misc.c
+++ b/dlls/msvcrt/misc.c
@@ -60,7 +60,7 @@
  */
 void* _lfind(const void* match, const void* start,
              unsigned int* array_size, unsigned int elem_size,
-             MSVCRT_compar_fn_t cf)
+             int (*cf)(const void*,const void*) )
 {
   unsigned int size = *array_size;
   if (size)
@@ -78,7 +78,7 @@
  */
 void* _lsearch(const void* match, void* start,
                unsigned int* array_size, unsigned int elem_size,
-               MSVCRT_compar_fn_t cf)
+               int (*cf)(const void*,const void*) )
 {
   unsigned int size = *array_size;
   if (size)