Hello, On Wed, Jul 19, 2006 at 11:09:13PM +0200, Richard B. Kreckel wrote:
I wasn't aware of you having such a patch. Have you ever sent it to me? I've posted something very similar to CLN list (in reply to MinGW user who could not compile CLN).
[snipped]
But before commiting this, let me ask: is the handling of preprocessor macros really correct? The original code treats system with
(defined (_WIN32) && defined (__GNUC__)) as an ordinary *NIX. But this assumption is wrong (e.g. MinGW defines both _WIN32 and __GNUC__, but has no <unistd.h> and getpid()), and checking for __CYGWIN__ would be more appropirate.
In particular I'm wondering about your removal of one #if defined(__CYGWIN__) in another place. The original version does not contain check for defined(__CYGWIN__) at all: $ grep src/base/random/cl_random_from.cc.bak -e '__CYGWIN__' [nothing]
I'm going to check this in to CVS ASAP if you can confirm that this won't break anything. I've tested the patch under GNU/Linux and ReactOS. It should work on *NIXes (the patch does not change *NIX-specific code) and Cygwin (because CYGWIN is treated as *NIX, as in the original version). That said, I have *not* tested my patch on Cygwin. And I won't be able to do this in near future...
Best regards, Alexei. -- All science is either physics or stamp collecting.