#define DELETE causes GNU cvs to break.

Andreas.Krueger@mlc.de Andreas.Krueger@mlc.de
Mon Dec 14 12:10:00 GMT 1998


Hello,

I´ve been using Beta 20.1 with the included gcc,
to get GNU's cvs 1.10 up and running on WinNT 4.0 + ServicePack.

That worked fairly out of the box, with one exception:
One source code (file rcs.c) has an

   enum {ADD, DELETE}

that does not compile.

Why not? In file
cygwin-b20/H-i586-cygwin32/i586-cygwin32/include/Windows32/defines.h,
there is a

   #define DELETE

that breaks the code.

(I could fix this by renaming the "DELETE" in the rcs.c - file to something
different).


My suggestions:

As far as I know, the C/C++ standards both suggest that names
belonging to the compiler environment
either start with a single, or contain two "_" character(s).

Application programmers know to avoid such names.

If you have a Microsoft-ish reason that forces you to pollute the global
namespace
with other names, I suggest you warn your users that you do so,
through a note in the FAQ.

You might even consider adding a switch, to use standard-conforming names
only
(for people like myself, that want to compile software that knows little or
nothing
about Microsoft).


Unfortunately, I do not have the time to follow the discussion in this
mailing list.
I still hope these remarks have been helpfull.

andreas.krueger@mlc.de


-
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