Robert;

Is this because Boros is a forward reference?  And is this not a bug?


Actually I'm quite surprised you got the second version to compile at all. You are defining a chicken as something that comes out of a egg, while a egg is something that comes out of a chicken.

On behalf of your cpu and ram I suggest you stop doing this; if every Ouro contains a Boros (which in turn contains a Ouro (which in turn contains a Boros (which in turn contains a Ouro (which in turn contains a Boros (which in turn contains a Ouro (which in turn contains a Boros (which in turn contains a Ouro (which in turn contains a Boros(which in turn contains a Ouro (which in turn contains a Boros (which in turn contains a Ouro (which in turn contains a Boros ( and so on )))))))))))) then there will be trouble.

Yours,
Kas.