[comp.lang.ada] Library Unit Elaboration

fred@cs.utexas.edu (Fred Hosch) (10/26/88)

I'm having trouble interpreting LRM 10.5.  What should I expect
from the following (and why) when MAIN is executed?

	package A is
		X: INTEGER := 0;
	end A;

	with A;
	procedure P is
	begin
		A.X := 1;
	end P;

	with A, P, INT_IO;
	procedure MAIN is
	begin
		P;
		INT_IO.PUT (A.X);
	end MAIN;


10.1.2 leads me to believe that package A is elaborated twice;
my compiler says once; 10.5 is obscure.

	---Fred Hosch
	   fred@cs.utexas.edu