Fix compiler warnings
diff --git a/src/fccfg.c b/src/fccfg.c
index 9844017..a55bcef 100644
--- a/src/fccfg.c
+++ b/src/fccfg.c
@@ -47,7 +47,7 @@
     {
 	is_locale_initialized = FcTrue;
 	if (!fc_atomic_ptr_cmpexch (&static_is_locale_initialized, NULL,
-				    (void *)(long) is_locale_initialized))
+				    (void *)(intptr_t) is_locale_initialized))
 	    goto retry_locale;
 	setlocale (LC_ALL, "");
     }
diff --git a/src/fcdir.c b/src/fcdir.c
index d6be0be..bfcdf95 100644
--- a/src/fcdir.c
+++ b/src/fcdir.c
@@ -289,7 +289,9 @@
     struct stat		dir_stat;
     const FcChar8	*sysroot = FcConfigGetSysRoot (config);
     FcChar8		*d;
+#ifndef _WIN32
     int			fd = -1;
+#endif
 
     if (sysroot)
 	d = FcStrBuildFilename (sysroot, dir, NULL);
@@ -353,7 +355,9 @@
     FcStrSet *dirs;
     const FcChar8 *sysroot = FcConfigGetSysRoot (config);
     FcChar8 *d = NULL;
+#ifndef _WIN32
     int fd = -1;
+#endif
 
     cache = FcDirCacheLoad (dir, config, NULL);
     if (!cache)
diff --git a/src/fcfreetype.c b/src/fcfreetype.c
index da2dc3f..4af96b8 100644
--- a/src/fcfreetype.c
+++ b/src/fcfreetype.c
@@ -1767,7 +1767,7 @@
 	{
 	    weight = FcIsWeight ((FcChar8 *) psfontinfo.weight);
     	    if (FcDebug() & FC_DBG_SCANV)
-    		printf ("\tType1 weight %s maps to %d\n",
+		printf ("\tType1 weight %s maps to %g\n",
 			psfontinfo.weight, weight);
 	}
 
@@ -1845,7 +1845,7 @@
 	{
 	    weight = FcContainsWeight (style);
 	    if (FcDebug() & FC_DBG_SCANV)
-		printf ("\tStyle %s maps to weight %d\n", style, weight);
+		printf ("\tStyle %s maps to weight %g\n", style, weight);
 	}
 	if (width == -1)
 	{
diff --git a/test/test-bz131804.c b/test/test-bz131804.c
index f89756b..99f87e9 100644
--- a/test/test-bz131804.c
+++ b/test/test-bz131804.c
@@ -46,7 +46,6 @@
 int
 main(void)
 {
-    FcLangResult result;
     int i = 1;
 
     /* 1 */