Xref: utzoo comp.lang.c:13673 comp.std.c:468 Path: utzoo!yunexus!geac!syntron!jtsv16!uunet!mcvax!guido From: guido@cwi.nl (Guido van Rossum) Newsgroups: comp.lang.c,comp.std.c Subject: Re: union *func() Message-ID: <7686@boring.cwi.nl> Date: 28 Oct 88 12:32:53 GMT Article-I.D.: boring.7686 References: <2205@arcturus> <14172@mimsy.UUCP> <1585@solo8.cs.vu.nl> <14201@mimsy.UUCP> Sender: news@cwi.nl Reply-To: guido@cwi.nl (Guido van Rossum) Organization: The Royal Society for Prevention of Cruelty to Amoebae Lines: 12 In article <14201@mimsy.UUCP> chris@mimsy.UUCP (Chris Torek) writes: >In article <1585@solo8.cs.vu.nl> maart@cs.vu.nl (Maarten Litmaath) asks >why the restriction exists. Chris's original posting said that "v = func().a" is legal, unless a is an array. The reason was that C has no array assignment, not that there's anything special with array members of structs returned by functions. A less confusing way to state the ruls is that "func().a" is legal, but as an rvalue only. -- Guido van Rossum, Centre for Mathematics and Computer Science (CWI), Amsterdam guido@piring.cwi.nl or mcvax!piring!guido or guido%piring.cwi.nl@uunet.uu.net