On 2005-02-02, Eljay Love-Jensen <eljay@xxxxxxxxx> wrote: > > The types used are: > + int > + struct foo > + struct bar* > > All those types are complete and defined. > I understand where you 're getting to, but for the shake of discussion, I'll bite :-) In what sense is the "struct bar" type defined? Because if "struct bar" is not defined, then how can "struct bar *" be defined? Is it ok to to have pointer-type whose base type is not (or incompletely) defined? /npat