This is the mail archive of the mailing list for the GCC project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: add #define to revert C99 inlining behaviour

Joseph S. Myers wrote:
On Fri, 3 Nov 2006, Andrew Pinski wrote:

On Fri, 2006-11-03 at 18:59 -0800, Geoffrey Keating wrote:
Apparently it is 'controversial' that -std=c99 should implement C99.

So, here is a #define.  You can switch it off, on again, off again, on
again, and so on, to your heart's delight.
Didn't we agree on an option instead of a define inside GCC?

I think an option would be a bad idea if it means code cannot determine the inline semantics from the combination of __GNUC__, __GNUC_MINOR__ and __STDC_VERSION__.

It looks to me like we've got a variety of opinions:

* Steven B. and Joseph think the patch should stay in, but Joseph thinks we should back it out at the end of Stage 1 if we haven't added the attribute Ian proposed, or if GLIBC has yet to be changed to use the attribute. Joseph's a C maintainer, so I give his opinion a lot of weight.

* Daniel has pointed out that you can't build GLIBC with this patch in, so right now people can't test mainline GCC with GLIBC. Since we don't have the attribute yet, the GLIBC people can't fix GLIBC either, except by making more intrusive changes. (That seems unfortunate to me, and it doesn't seem to foster the spirit of GCC/GLIBC cooperation that Joseph quite rightly indicates that we need.) Ian points out that Geoff's original mail says that "only" GLIBC seems to be obviously affected by this change, but since GLIBC is in fact the C library for the GNU system, it's certainly important.

* Mike suggested an option (and provided a patch for same), but Joseph argues that an option isn't good, for reasons above.

* Ian and I have suggested reverting the patch entirely, and then working on Ian's transition plan. Ian has volunteered to implement the transition plan, if the patch is reverted.

I'm not sure how we make progress. I requested the patch be reverted, but it takes two maintainers to start the 48-hour reversion clock, and I never got a second. Geoff's checked in an #ifdef, but the default is still the new behavior, and as Ian indicates, this isn't how we normally do things.

I do not intend to comment further on this issue. Instead, I shall hope it goes away well before I have to start thinking about making the 4.3 branch. Certainly, if nothing were to change, I would revert this patch on my authority as RM on the 4.3 release branch, since not being able to build the GNU C Library would be a serious problem wht the GNU C Compiler. I shall hope it doesn't come to that.

Mark Mitchell
(650) 331-3385 x713

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]