Each compilation actually generates two output files. The first of these
is the actual object file that has a .o extension. The second is a
text file containing full dependency information. It has the same
name as the source file, but an .ali extension.
This file is known as the Ada Library Information (ALI) file.
The following information is contained in that file:
Pure).
Elaborate or Elaborate_All pragmas.
Linker_Options pragmas used in the unit
Body_Version or Version
attributes in the unit.
For a full detailed description of the format of the ALI file,
see the source of the spec of unit Lib.Writ, contained in file
lib-writ.ads in the GNAT compiler sources.