--- a/lib/wincompat.h
+++ b/lib/wincompat.h
@@ -35,6 +35,7 @@
 
 
 #include <limits.h>
+#include <stdio.h>
 
 #ifdef LIBCONFIG_WINDOWS_OS
 
@@ -61,7 +62,7 @@
 */
 extern int posix_fsync(int fd);
 
-#if _MSC_VER <= 1800
+#if defined(_MSC_VER) && _MSC_VER <= 1800
 #define snprintf  _snprintf
 #endif
 
