gcc/ada/
* repinfo.adb (List_Entities): The code was assuming that if we
encounter a package in the current scope, then it must be
a (physically) nested package. That was wrong, because it could
be a child package. Avoid recursing into child packages; they
have not been annotated with representation information, and
-gnatR2 queries that information.
end if;
end if;
- -- Recurse into nested package, but not if they are package
- -- renamings (in particular renamings of the enclosing package,
- -- as for some Java bindings and for generic instances).
+ -- Recurse into nested package, but not child packages, and not
+ -- nested package renamings (in particular renamings of the
+ -- enclosing package, as for some Java bindings and for generic
+ -- instances).
if Ekind (E) = E_Package then
- if No (Renamed_Entity (E)) then
+ if No (Renamed_Entity (E)) and then not Is_Child_Unit (E)
+ then
List_Entities (E, Bytes_Big_Endian);
end if;