This is the mail archive of the gcc-patches@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]

Re: Bug in local spilling code


In article <19981029222231.B12359@dot.cygnus.com>,
Richard Henderson <rth@cygnus.com> writes:
> On Thu, Oct 29, 1998 at 08:26:43PM -0700, Jeffrey A Law wrote:
>> > BTW, anyone ever notice that nonlocal goto and alloca can not coexist?
>> > This isn't new to your patch, and I don't know that we care so very
>> > deeply.  Certainly I can't think of a nice way around it.
>> I don't care enough about it either.  Just another one of those stupid corner
>> cases nobody thought about when adding support for nonlocal gotos.

> Actually, looking into it further, it looks like it is supposed
> to work, it just doesn't.

>> Leave language design to people that actually know something about it!  Damn
>> RMS and his silly extensions.  Sorry, I had to get that off my chest....

> There are a couple o nice ones.  Statement expressions, typeof
> and extended asms.  The others I'm just not so fond of...

This reminds me. I was recently browsing the C9x standards site and found
a '95 interesting language extension proposal from Ken Thompson:

http://osiris.dkuug.dk/JTC1/SC22/WG14/docs/c9x/misc/unnamed-struct-members.txt.gz

It allows to refer to unnamed structures/union's members inside a
struct from the parent's namespace.

e.g.
	struct bla { 
		struct { 
			int x;
			int y; 
		}; 
	} w;

Now w.x and w.y are valid. IMHO a very useful feature, similar to the anonymous
unions in C++, which eliminates the ugly macro cascades usually used to
make nested structures/unions accesses more readable. Unfortunately it seems 
the proposal didn't make it into the draft standard.

The document explicitely references GNU C as prior art, but I wasn't able
to find any traces of this feature in egcs 1.1. Does it exists/was it removed?

-Andi 



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