---
Source/GSPrivate.h | 9 +++++++--
Source/NSThread.m | 2 +-
2 files changed, 8 insertions(+), 3 deletions(-)
diff --git a/Source/GSPrivate.h b/Source/GSPrivate.h
index faa61bc..24053ad 100644
--- a/Source/GSPrivate.h
+++ b/Source/GSPrivate.h
@@ -35,8 +35,10 @@
#if ( (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 3) ) && HAVE_VISIBILITY_ATTRIBUTE )
#define GS_ATTRIB_PRIVATE __attribute__ ((visibility("internal")))
+#define GS_ATTRIB_HIDDEN __attribute__ ((visibility("hidden")))
#else
#define GS_ATTRIB_PRIVATE
+#define GS_ATTRIB_HIDDEN
#endif
/* Absolute Gregorian date for NSDate reference date Jan 01 2001
@@ -549,11 +551,14 @@ GSPrivateDispatchInitialize(void) GS_ATTRIB_PRIVATE;
/* These functions are used by libdispatch to initialize
* NSAutoreleasePool for its worker threads.
+ * We must *REALLY* define them as hidden instead of internal
+ * because they are callbacks given to libdispatch which is
+ * an external module.
*/
void*
-GSPrivateAutoreleasePoolAllocate(void) GS_ATTRIB_PRIVATE;
+GSPrivateAutoreleasePoolAllocate(void) GS_ATTRIB_HIDDEN;
void
-GSPrivateAutoreleasePoolDeallocate(void* param) GS_ATTRIB_PRIVATE;
+GSPrivateAutoreleasePoolDeallocate(void* param) GS_ATTRIB_HIDDEN;
#endif /* GS_HAVE_LIBDISPATCH_COMPAT */
diff --git a/Source/NSThread.m b/Source/NSThread.m
index 8bce09b..8aef9c4 100644
--- a/Source/NSThread.m
+++ b/Source/NSThread.m
@@ -92,7 +92,7 @@
# define MAIN_PTHREAD_NEEDS_LOAD 1
# define IS_MAIN_PTHREAD pthread_equal(_main_pthread, pthread_self())
/* clang is whining if it's static so make it global internal... */
-__attribute__((visibility("internal"))) pthread_t _main_pthread;
+GS_ATTRIB_PRIVATE pthread_t _main_pthread;
#endif
_______________________________________________
Gnustep-dev mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/gnustep-dev