+2011-09-16 Eli Zaretskii <eliz@gnu.org>
+
+ * image.c (tiff_handler): Work around a bug in MinGW GCC 3.x (see
+ GCC PR/17406) by declaring this function with external scope.
+
2011-09-15 Paul Eggert <eggert@cs.ucla.edu>
* editfns.c (Fformat): Fix bug in text-property fix (Bug#9514).
return ((tiff_memory_source *) data)->len;
}
+/* GCC 3.x on x86 Windows targets has a bug that triggers an internal
+ compiler error compiling tiff_handler, see Bugzilla bug #17406
+ (http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17406). Declaring
+ this function as external works around that problem. */
+#if defined (__MINGW32__) && __GNUC__ == 3
+# define MINGW_STATIC
+#else
+# define MINGW_STATIC static
+#endif
-static void tiff_handler (const char *, const char *, const char *, va_list)
+MINGW_STATIC void
+tiff_handler (const char *, const char *, const char *, va_list)
ATTRIBUTE_FORMAT_PRINTF (3, 0);
-static void
+MINGW_STATIC void
tiff_handler (const char *log_format, const char *title,
const char *format, va_list ap)
{
add_to_log (log_format, build_string (title),
make_string (buf, max (0, min (len, sizeof buf - 1))));
}
+#undef MINGW_STATIC
static void tiff_error_handler (const char *, const char *, va_list)
ATTRIBUTE_FORMAT_PRINTF (2, 0);