[M3commit] CVS Update: cm3
Jay Krell
jkrell at elego.de
Sun Feb 3 03:06:27 CET 2008
CVSROOT: /usr/cvs
Changes by: jkrell at birch. 08/02/03 03:06:27
Modified files:
cm3/m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.m3
m3makefile
Added files:
cm3/m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.i3
ThreadPThreadC.c
Log message:
Cygwin static initializers are not all zeros and Modula-3 static
initialization happens after at least some of this data is used,
so move it to C to guarantee actual static initialization.
This fixes the problem where Cygwin/NT386GNU issues an endless stream
of assertion failures upon start, at each pthread_mutex_lock call.
Cygwin/NT386GNU still hangs at startup, since nanosleep is failing,
and there is an access violation to investigate. Cygwin does
strange things with the stack..reserving a block at the start for
their thread locals and getting to it via fs:4.
More information about the M3commit
mailing list