Path: utzoo!attcan!uunet!know!zaphod.mps.ohio-state.edu!lavaca.uh.edu!menudo.uh.edu!sugar!ficc!peter From: peter@ficc.ferranti.com (Peter da Silva) Newsgroups: comp.std.c Subject: Re: X3J11 Pleasanton meeting summary Keywords: X3J11 Pleasanton meeting C standard interpretations Message-ID: Date: 7 Oct 90 00:39:43 GMT References: <13996@smoke.BRL.MIL> <3206@mcrware.UUCP> <470@taumet.com> <1990Oct4.233557.28571@watdragon.waterloo.edu> Reply-To: peter@ficc.ferranti.com (Peter da Silva) Organization: Xenix Support, FICC Lines: 24 In article <1990Oct4.233557.28571@watdragon.waterloo.edu> ccplumb@spurge.uwaterloo.ca (Colin Plumb) writes: > I have to agree with Henry, though, in saying that "needed" is hoplessly > vague. Given an incomplete type Foo, here are the things I can imagine > doing with it: > extern Foo variable; ... Also: extern Foo *variable; Foo *variable; { Foo *variable; } Foo *function(...); Foo *function(...){...} extern Foo *variable[]; Foo *variable[]; sizeof(Foo *); All of which should probably be legal... unless pointers to structures can vary in size, or you dereference !variable! or the return value of !function!. The latter two can be checked out, but how about varying size pointers to structures (eg, !struct {char c};! having the same align restrictions as !char! and requiring a longer pointer than !int *!)? -- Peter da Silva. `-_-' +1 713 274 5180. 'U` peter@ferranti.com