Subject: #define DELETE causes GNU cvs to break.
From: [email-masked]

14 Dec 1998 18:34:10 -0800
Message-ID: <[email-masked]>
Mime-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Transfer-Encoding: 8bit
To: [email-masked]

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.

[email-masked]

-
For help on using this list (especially unsubscribing), send a message to
"[email-masked]" with one line of text: "help".