Name space clash: gdi.h and ncurses both use DC...
Jukka A. Ukkonen
jau at iki.fi
Sun Sep 29 14:36:28 CDT 2002
Here are a couple of name space problems, which I would
give at least a P4 priority. - They are straight forward
to fix, but absolutely painful, if left as they are.
1) There is a very nasty name space clash in wine (CVS, today,
2002-09-29).
Both gdi.h and ncurses use the name DC, but obviously for two
different purposes.
This might not happen with all versions of ncurses, but at
least on one of my FreeBSD boxes it happens. OTOH there is no
guarantee that on some systems the files named ncurses.* are
not simply symlinks to some other implementation of curses.
So, using any of the short names used by (n)curses for any
other purposes is a very bad habit in general, and one which
should be avoided at all cost in programs which also use any
version of curses.
The curses' unlucky naming policy has been the curse upon us
all for ages already. It would be all too hard to change any
of that now. It is far better to simply try to do better in
one's own selection of names.
I propose changing the DC (Display Context ?) to something
more verbose. If it is strictly windows related, might WinDC
or Win_DC do just fine?
2) Apparently wine also defines the name IN to empty somewhere
in the header files. This raises a syntax error in curses.h,
because a symbol in a list gets deleted leaving only a comma.
So, the compiler finds something like
extern char AM, BS, CA, DA, EO, HC, , MI, MS, NC, NS, OS,
PC, UL, XB, XN, XT, XS, XX;
Obvious enough, the compiler complains. The same logic as
above still applies. Hands off the short names, which could
collide with curses.
I hope this helps.
Cheers,
// jau
.--- ..- -.- -.- .- .- .-.-.- ..- -.- -.- --- -. . -.
/ Jukka A. Ukkonen, Mawit Ltd, Finland
/__ M.Sc. (sw-eng & cs) (Phone) +358-500-606-671
/ Internet: Jukka.Ukkonen(a)Mawit.Com (Home) +358-9-6215-280
/ Internet: ukkonen(a)nic.funet.fi
v Internet: jau(a)iki.fi
+ + + + My opinions are mine and mine alone, not my employers. + + + +
More information about the wine-bugs
mailing list