From: Sam S. <sd...@gn...> - 2009-06-29 19:22:31
|
Vladimir, Vladimir Tzankov wrote: > > after this commit (on 2009-06-23): > spvw_mmap.d (mprotect) [HAVE_WIN32_VM]: guard the definition > with #ifdef HAVE_MPROTECT because mingw may already have it in > /lib/gcc/i686-pc-mingw32/3.4.4/libgcc.a(_trampoline.o):(.text+0x10) > > generational GC build on mingw stopped working. mprotect() always > fails due to invalid argument. > The problem is that mprotect() that comes with libgcc.a expects > different values for page protection. After consulting with libgcc.a > sources and redefining in win32.d (in case HAVE_MPROTECT is defined): > #define PROT_NONE 0 > #define PROT_READ 1 > #define PROT_READ_WRITE 3 > it's ok. > > Not sure whether we should revert back or redefine the above (the > values are above are hardcoded in libgcc.a). Thanks. I applied the patch you suggest. Sam. |