This is the mail archive of the
libstdc++@gcc.gnu.org
mailing list for the libstdc++ project.
Re: PATCH: Adhere to section 17.4.1.2 clause 5 of ISO 14882:1998
Loren James Rittle <rittle@latour.rsch.comm.mot.com> writes:
[...]
| For reference, here is section 17.4.1.2 clause 5 of ISO 14882:1998:
|
| ``Names which are defined as macros in C shall be defined as macros in
| the C++ Standard Library, even if C grants license for
| implementation as functions [Note: the names defined as macros in C
| include the following: assert, errno, offsetof, setjmp, va_arg,
| va_end, and va_start. - end note]''
|
| Are you honestly telling me that there is no agreement between
| committee members that the above quoted section has the obvious
| meaning?
Each section taken separately usually has the obvious meaning. No
dispute. It is the aggregation of the (conflicting) sections which
cause problem.
Steve's last sentnce was:
This issue was presented to the C++ committee, but fell into a crack
without being resolved or put onto an Issues List. I'm glad you posted
this question, because now we can see that the issue gets resolved.
[...]
| > We need to ensure that they are either macros or else identifiers with
| > external linkage.
|
| Not until someone takes an active interest in global name space
| cleanliness. Even then, I argue that my patch makes the problem no
| worse than it currently is. Do you disagree?
Yes.
[...]
| > Experience shows that we cannot build a C++ library on top of a C
| > implementation without intrusive knowledge of that library :-(
|
| Well, libstdc++-v3 should just close up shop and go home then. I
| guess we all have been wasting our time and effort in that goal.
|
| I don't buy it.
Then, I suspect you should have some data we don't, would you mind
finishing the c-shadow project? :-)
-- Gaby