#endif
#ifndef HAVE_ASPRINTF
-extern int asprintf(char **, const char *, ...);
-extern int vasprintf(char **, const char *, va_list ap);
+extern int asprintf(char **, const char *, ...) ATTR_FORMAT(printf, 2, 3);
+extern int vasprintf(char **, const char *, va_list ap) ATTR_FORMAT(printf, 2, 0);
#endif
#ifndef HAVE_GETTIMEOFDAY
} while (0)
#endif
-#ifdef HAVE_MINGW
+#ifdef HAVE_WINDOWS
#define mkdir(a, b) mkdir(a)
#ifndef SHUT_RDWR
#define SHUT_RDWR SD_BOTH
#define MAX(a,b) (((a)>(b))?(a):(b))
#endif
-#ifdef _MSC_VER
+#define CLAMP(val, min, max) MIN((max), MAX((min), (val)))
-#define __attribute(args)
-#define __attribute__(args)
+#ifdef _MSC_VER
#define PATH_MAX MAX_PATH
#define strcasecmp _stricmp
#define strncasecmp _strnicmp
+#define isatty _isatty
+#define fileno _fileno
+#define close CloseHandle
#define __const const
typedef int mode_t;