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]

Reply via email to