This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: C Code mutilation by using gcc-3.3.x
On Wed, Feb 11, 2004 at 01:45:01AM +0100, Robert M. Stockmann wrote:
> gcc-3.3.x allows the above style of header files. My suggestion is,
> to not hand over compiler versions to software vendors which allow
> this. gcc-2.95.3 explicit does not allow the above header style.
You're utterly failing to make any kind of realistic point, here.
C99 exists. You can expect people to use it. You cannot unhand it from
vendors. You can try to explain to vendors not to use C99 features.
To do so, you must go to the vendors and tell them.
It's pointless to say it on the GCC development list.
> Giving 3rd party software vendors not only the possibility to offer binary
> only kernel driver modules, but also handing them over gcc compiler versions
> which allow the possibility of interfacing with unnamed and anonymous structs
> and unions inside header files, is asking for trouble, in a project which has
> Open Source
> as its main goal.
GCC >= 3.x has much better standard C and C++ conformance than the 2.95.x
series. I've been fixing quite a few preprocessor issues in various
sources that attest for that. As such, it's much better as a standard C
compiler replacement than previous versions.
It can also tell you what dialect of C you are using. You can use switches
such as --std=c9x, or similar stuff.
If anything, you should probably bitch that the 2.95.x series has been
completely discontinued. Yes, it could use C9x support. Yes, it could use
some switches from 3.x. I know. I routinely live with both compilers,
for various reasons.
Well, deal with it. If you want such useful features to be backported to
2.95.x, you will probably have to pay for it. No free development there,
not enough GCC developers already.
If anything, the diagnostic capabilities of GCC are much better now than
they ever were. Tell the Linux people to use them. If they want to
recommend stuff that's supported by gcc 2.95, tell them to ask for it,
to use correct --std switches with gcc 3.x.
Now, if only gcc 3.x were to get faster as well...