This is a slightly cleaner fix to the preference-order portion of bug 57591. It does not attempt to detect when __declspec(thread) is being ignored by the compiler, so is insufficient in general, but it should fix the problem for the compilers currently under discussion.
--Benjamin Gilbert 8<--------- After finding a working TLS storage class specifier, configure was continuing to test other candidates. This caused it to prefer __declspec(thread) over __thread. However, __declspec(thread) is ignored with a warning by mingw-w64 [1] and silently ignored by clang [2]. The resulting binary behaved as if PIXMAN_NO_TLS was defined. Bug introduced by a069da6c. [1] https://bugs.freedesktop.org/show_bug.cgi?id=57591 [2] http://lists.freedesktop.org/archives/pixman/2012-October/002320.html --- configure.ac | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/configure.ac b/configure.ac index 45b709d..81f068d 100644 --- a/configure.ac +++ b/configure.ac @@ -860,7 +860,7 @@ AC_CACHE_VAL(ac_cv_tls, [ #error OpenBSD has broken __thread support #endif -int $kw test;], [], ac_cv_tls=$kw) +int $kw test;], [], [ac_cv_tls=$kw; break]) done ]) AC_MSG_RESULT($ac_cv_tls) -- 1.7.11.7 _______________________________________________ Pixman mailing list Pixman@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/pixman