I: gcc ... -U_WIN32 ... may cause problems

Larry Hall lhall@rfk.com
Sat Aug 29 12:36:00 GMT 1998

At 06:32 AM 8/29/98 -0700, Earnie Boyd wrote:
>---Michael Weiser <michael@weiser.saale-net.de> wrote:
>> Hello Michael, you wrote:
>> >Cygwin32 but unix-specific daemon code is compiled instead, for
>example.  To 
>> >avoid coding #if defined construct as shown I decided to undefine
>_WIN32 when 
>> >compiling in Cygwin32 environment by using a command line of a form
>"gcc ... 
>> >-U_WIN32 ...".  Before I did that the application worked fine
>however as soon 
>> Wouldn't it be cleaner and easier to code something like
>> #if defined __unix__ || defined __CYGWIN32__
>> ...
>> #endif
>> and
>> #if defined _WIN32 && !defined __CYGWIN32__
>> ...
>> #endif
>> around parts of your program that should behave like on unix under
>> cygwin? IMHO that wouldn't be more effort than solving your current
>> problem and all the others that will arise if something in the headers
>> or the cygwin tools gets changed.
>Since we are giving humble opinions here is mine:
>Leave the _WIN32 and WINNT for MS' use and get rid of them from the
>specs altogether.  I've had to be cautious about this before and
>_WIN32 being defined for CYGWIN32 and even MINGW32 definitely gets in
>the way on occasion.

I second this opinion.  According to MS docs, _WIN32 is an MS specific
variable.  If Cygnus is going to start using it, then it just complicates
the cases where someone wants to recognize the difference between the
MS and non-MS environments.

Larry Hall                              lhall@rfk.com
RFK Partners, Inc.                      (781) 239-1053
8 Grove Street                          (781) 239-1655 - FAX
Wellesley, MA  02482-7797               http://www.rfk.com
For help on using this list (especially unsubscribing), send a message to
"gnu-win32-request@cygnus.com" with one line of text: "help".

More information about the Cygwin mailing list