I'm sorry, but this is unacceptable (union members and ctors)
Lawrence Crowl
crowl@google.com
Wed Jun 20 03:47:00 GMT 2007
On 6/16/07, Ross Ridge <rridge@csclub.uwaterloo.ca> wrote:
> Robert Dewar writes:
> >The only time that it is reasonable to extend is when there are clear
> >signals from the standards committee that it is likely that a feature
> >will be added, in which case there may be an argument for adding the
> >feature "prematurely".
>
> I completely disagree. Standards should primarily standardize existing
> practice, not inventing new features.
That is one view. The other view is that standards can push the state
of the art in programming. The Ada standard is a pure example of
the latter approach. In practice, both C and C++ have been a mix of
existing practice and invention. I think purity in approach is actually
suboptimal.
> New features should be created by people who actually want and
> will use the features, not by some disinterested committee.
The C++ standards committee consists of volunteers that actually
want and will use the features. There is too much sheer work and
negotiation involved in the standards process to not be interested.
> GCC has always been a place for experimenting with new features.
> Many of the new features in C99 had already been implemented in
> GCC. Even in the cases where C99 standardized features differently,
> I think both GCC and Standard C benefited from the work done in
> GCC.
All true. What the standards process buys you is more review by a
wider variety of stakeholders. The result is generally something that
more folks can use.
On the specific topic of unions, there is a proposal before the
committee to extend unions in this direction. Let me caution you
that this proposal has not been reviewed by a significant fraction
of the committee, and hence has a small chance of being accepted
and an even smaller chance of surviving unchanged. See
http://www.open-std.org/JTC1/SC22/WG21/docs/papers/2007/n2248.html
--
Lawrence Crowl
More information about the Gcc
mailing list