Loading...
stdlib/FreeBSD/exit.c Libc-1082.20.4 Libc-997.90.3
--- Libc/Libc-1082.20.4/stdlib/FreeBSD/exit.c
+++ Libc/Libc-997.90.3/stdlib/FreeBSD/exit.c
@@ -55,3 +55,11 @@
 void
 exit(int status)
 {
+#if !TARGET_IPHONE_SIMULATOR && (__i386__ || __x86_64__)
+	_tlv_exit(); // C++11 requires thread_local objects to be destroyed before global objects
+#endif
+	__cxa_finalize(NULL);
+	if (__cleanup)
+		(*__cleanup)();
+	__exit(status);
+}