This patch defines Win32 thread primitives.
Great.
...Actually it consists of the following files:
threads.h.diff thr_windows.h.diff threads.t.diff timer.t.diff
Small nitpick - please provide just one patch file - applying is much simpler then, or less work ;)
The patch had been applied, I mananged to pass all the tests from t/pmc/thread.reast and t/pmc/timer.t but thread_4.pasm(don't know yet why it fails)
threads_4 is testing killing threads. This is achieved by scheduling a terminate event to the running interpreter. This can only succeed, if the event system is running too.
see src/events.c/Parrot_new_terinate_event()
imcc.l.diff, imcc.y.diff et al - contain a dirty hack which prefixes the CONST lexeme with underscore, otherwise CONST conflicts with MACRO from windows header files. Probably the solution wwould be to prefix all the lexemes with IMCC_ or whatever. Prefixing should be done for thread primitives either.
Argh, yes. Can you just #undef the CONST after including the windows.h?
leo