[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: v0_139 available



Jonathan Bachrach <jrb@ai.mit.edu> writes:

> we will working to improve the pthreads-based threads implementation
> and will start looking to porting it to windows.  any help on this
> would be appreciated.  the major obstacle might be that the boehm gc
> supports threads but only when compiled with vc++.

I've been looking at what's required to get things compiling under
vc++. I notice in grt.h there are #defines like:

#define CALLN(...) _CALLN(regs, __VA_ARGS__)
#define XCALL0(...) _CALL0(REGSCREF(), __VA_ARGS__)
#define XCALL1(...) _CALL1(REGSCREF(), __VA_ARGS__)

Visual C++ doesn't like the variable argument #define
unfortunately. Would there be any problem with the g2c code generator
being changed to emit the _CALLN(regs, ...) instead of the CALLN? I'm
going to try the change but thought I'd run it by everyone here in
case there's a reason for it not being done that way. 

Also, anyone think of a way of working around VC++'s lack of variable
arg macros without going the 'change the code generation' route?

Another approach might be to use Mingw since I think Boehm works with
WIN32_THREADS under Mingw as well. But I can't do the .net port with
that approach unfortunately.

BTW, it builds and runs fine under cygwin without thread support which
is great. 

Chris.