Thanks Anton, That seems to work, and doesn't hurt Darwin either. However, I took the opportunity ;(foolishly); to update my cygwin to the latest, and that managed to loose the ability to do direct-threading. I updated the subject line to reflect the change in topic, so here's what's happening.
Things work perfectly fine with --enable-indirect-threaded, but when I try to --enable-direct-threaded, I get: ./gforth.exe --die-on-signal -p .:/usr/local/lib/gforth/site-forth:/usr/local/share/gforth/site-forth:/usr/l ocal/lib/gforth/0.5. 0:/usr/local/share/gforth/0.5.0:. test/tester.fs test/coretest.fs test/postpone.fs test/dbltest.fs -e bye | diff -c - ./test/cor etest.out Segmentation fault. I just hang when executing ./gforth directly, but the previously compiled executable still works fine, as does the newly compiled executable with indirect-threading enabled. The cygwin update hit almost everything, but the following is probably the most informative: $ gcc -v Reading specs from /usr/lib/gcc-lib/i686-pc-cygwin/3.2/specs Configured with: /netrel/src/gcc-3.2-1/configure --enable-languages=c,c++,f77,java --enable-l ibgcj --enable-threads=posix --with -system-zlib --enable-nls --without-included-gettext --enable-interpreter -- disable-sjlj-exceptions --disable-version-specific-r untime-libs --enable-shared --build=i686-pc-linux --host=i686-pc-cygwin --ta rget=i686-pc-cygwin --enable-haifa --prefix=/usr --e xec-prefix=/usr --sysconfdir=/etc --libdir=/usr/lib --includedir=/nonexisten t/include --libexecdir=/usr/sbin Thread model: posix gcc version 3.2 20020818 (prerelease) Don't we just love updates! ;( DaR > -----Original Message----- > From: Anton Ertl [mailto:anton@;a0.complang.tuwien.ac.at] > Sent: Saturday, October 26, 2002 5:53 AM > To: [EMAIL PROTECTED] > Subject: Re: [gforth] --enable-indirect-threaded on PPC? > > > Dennis Ruffer wrote: > > > > Well, one down.... > > > > On cygwin, I now get the same errors (repeated below) ;( > > The following patch should fix that > > diff -u -r1.16 signals.c > --- signals.c 2002/10/26 12:48:25 1.16 > +++ signals.c 2002/10/26 12:50:45 > @@ -52,6 +52,10 @@ > /* systems that don't have SA_NODEFER hopefully don't block anyway */ > #endif > > +#ifndef SA_ONSTACK > +#define SA_ONSTACK 0 > +#endif > + > #ifdef SA_SIGINFO > void install_signal_handler(int sig, void (*handler)(int, > siginfo_t *, void *)) > /* installs three-argument signal handler for sig */ > @@ -362,6 +366,7 @@ > }; > int i; > void (*throw_handler)() = die_on_signal ? graceful_exit : > signal_throw; > +#ifdef SIGSTKSZ > stack_t sigstack; > int sas_retval=-1; > > @@ -372,6 +377,7 @@ > } > if (debug) > fprintf(stderr,"sigaltstack: %s\n",strerror(sas_retval)); > +#endif > > #define DIM(X) (sizeof (X) / sizeof *(X)) > /* > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
