This is the mail archive of the gcc@gcc.gnu.org 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: gcc 3.2.1 draft release notes, 3rd draft


Then how about adding a rule something like the following to the bison
grammar (yes, I know these are the wrong terminal names, but the idea
should be clear):

       TYPEDEF ID '=' error ';'
	       { error("Please use __typeof() instead");}
Along these lines, one could perhaps even do the transformation at that
point.

 TYPEDEF ID = expression ;

   { /* Do whatever you do for the typeof case. */ }


However, I don't understand why the extension was removed.  If its
presence makes it harder to parse valid C/C++ the removal might be
justified.
The extension was removed because it's been broken forever and nobody
complained.  It thus seemed an opportune time to get rid of a language
extension -- they all create problems in one way or another -- and
this one was both apparently unused and had as an equivalent form.

If people think that's a bad decision, we can go back and try to do
the above transformation.  My sentiment is that -- given that there's
considerable evidence that nobody uses this extension -- our time is
best spent elsewhere.

On the other hand, as the approver of the patch, I'm responsible; I'll
attempt the transformation patch if people want that.

--
Mark Mitchell                mark@codesourcery.com
CodeSourcery, LLC            http://www.codesourcery.com


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