diff --git a/dlls/winecrt0/delay_load.c b/dlls/winecrt0/delay_load.c
index 5926770210e05f2164f8cf5f9086cf6663804a95..ac257bafb015479620b7faa74d49e95efbbc20b4 100644
--- a/dlls/winecrt0/delay_load.c
+++ b/dlls/winecrt0/delay_load.c
@@ -52,7 +52,7 @@ FARPROC WINAPI DECLSPEC_HIDDEN __wine_spec_delay_load( unsigned int id )
     return proc;
 }
 
-#ifdef __GNUC__
+#if defined(__GNUC__) && !defined(__APPLE__)  /* we can't support destructors properly on Mac OS */
 static void free_delay_imports(void) __attribute__((destructor));
 static void free_delay_imports(void)
 {