blakemor@software.ORG (Alex Blakemore) (04/23/89)
Re: 3.4.(15) and 7.4(4) >> This disallows things like >> type this is new integer; >> type that is new this; > The rationale behind this is due to the fact that a derived type receives > it's parents subprograms. I.E. ALRM 3.4(13): > The compiler will not know that all of these have been defined until > it has finished compiling the spec. This insures that everything that must > be derived for a new type is known. OK, the above restrictions make it easier for compilers to make a single pass over package specs. That alone may justify their inclusion in the reference manual. Is that the only reason for these restrictions ? Cascading the derivations across several packages is probably the best solution but it does introduce other problems, esp if the base type is private. See Bardin & Thompson's papers in Ada Letters, VIII, 1-2 for examples of these problems and partial solutions if you're interested. Alex Blakemore Software Productivity Consortium