--- a/ext/standard/php_crypt_r.c
+++ b/ext/standard/php_crypt_r.c
-@@ -96,6 +96,8 @@ void _crypt_extended_init_r(void)
- InterlockedIncrement(&initialized);
- #elif (defined(__GNUC__) && (__GNUC__ >= 4 && __GNUC_MINOR__ >= 1))
+@@ -97,6 +97,8 @@ void _crypt_extended_init_r(void)
+ #elif (defined(__GNUC__) && !defined(__hpux) && (__GNUC__ > 4 || \
+ (__GNUC__ == 4 && (__GNUC_MINOR__ > 1 || (__GNUC_MINOR__ == 1 && __GNUC_PATCHLEVEL__ > 1)))))
__sync_fetch_and_add(&initialized, 1);
+#elif (defined(__GNUC__) && (__GNUC__ == 3))
+ initialized = 1;