summaryrefslogtreecommitdiff
path: root/apps/plugins/lib/pluginlib_exit.h
diff options
context:
space:
mode:
Diffstat (limited to 'apps/plugins/lib/pluginlib_exit.h')
-rw-r--r--apps/plugins/lib/pluginlib_exit.h8
1 files changed, 6 insertions, 2 deletions
diff --git a/apps/plugins/lib/pluginlib_exit.h b/apps/plugins/lib/pluginlib_exit.h
index 411d075..8170cf7 100644
--- a/apps/plugins/lib/pluginlib_exit.h
+++ b/apps/plugins/lib/pluginlib_exit.h
@@ -27,8 +27,12 @@
#include <stdlib.h>
#include "gcc_extensions.h"
-/* these are actually implemented in plugin_crt0.c which all plugins link */
-extern int atexit(void (*func)(void));
+/* these are actually implemented in plugin_crt0.c which all plugins link
+ *
+ * the cygwin/mingw shared library stub also defines atexit, so give our
+ * implementation a prefix */
+#define atexit rb_atexit
+extern int rb_atexit(void (*func)(void));
extern void exit(int status) NORETURN_ATTR;
/* these don't call the exit handlers */
extern void _exit(int status) NORETURN_ATTR;