[Gc] On cancellation, GC_thread_exit_proc is never called

NIIBE Yutaka gniibe at fsij.org
Wed Apr 7 22:33:31 PDT 2010


NIIBE Yutaka wrote:
> So, here is second try

Then, I thought that change of the header file should be avoided.  It
is one of header files to be installed.

Here is the change I am using now.

Index: Makefile.am
===================================================================
RCS file: /cvsroot/bdwgc/bdwgc/Makefile.am,v
retrieving revision 1.32
diff -u -r1.32 Makefile.am
--- Makefile.am	23 Mar 2010 07:53:03 -0000	1.32
+++ Makefile.am	8 Apr 2010 05:28:50 -0000
@@ -69,6 +69,8 @@

 if PTHREADS
 libgc_la_SOURCES += pthread_support.c pthread_stop_world.c
+ at UNDEFINE__EXCEPTIONS_TRUE@pthread_support.o: DEFS += -U__EXCEPTIONS
+ at UNDEFINE__EXCEPTIONS_TRUE@pthread_support.lo: DEFS += -U__EXCEPTIONS
 endif

 if DARWIN_THREADS
Index: configure.ac
===================================================================
RCS file: /cvsroot/bdwgc/bdwgc/configure.ac,v
retrieving revision 1.60
diff -u -r1.60 configure.ac
--- configure.ac	19 Feb 2010 20:07:49 -0000	1.60
+++ configure.ac	8 Apr 2010 05:28:50 -0000
@@ -115,10 +115,16 @@
 	fi
 	AC_DEFINE(THREAD_LOCAL_ALLOC)
 	AC_MSG_WARN("Explicit GC_INIT() calls may be required.");
+	if test "$GCC" = yes; then
+	  undefine__exceptions=true
+	fi
 	;;
      *-*-linux*)
 	AC_DEFINE(GC_LINUX_THREADS)
 	AC_DEFINE(_REENTRANT)
+	if test "$GCC" = yes; then
+	  undefine__exceptions=true
+	fi
 	;;
      *-*-aix*)
 	AC_DEFINE(GC_AIX_THREADS)
@@ -270,6 +276,7 @@
 AM_CONDITIONAL(DARWIN_THREADS, test x$darwin_threads = xtrue)
 AM_CONDITIONAL(WIN32_THREADS, test x$win32_threads = xtrue)
 AM_CONDITIONAL(OPENBSD_THREADS, test x$openbsd_threads = xtrue)
+AM_CONDITIONAL(UNDEFINE__EXCEPTIONS, test x$undefine__exceptions = xtrue)

 case "$host" in
    powerpc-*-darwin*)
-- 


More information about the Gc mailing list