For a use_clause
immediately within a declarative region, the scope is the portion of
the declarative region starting just after the use_clause
and extending to the end of the declarative region. However, the scope
of a use_clause
in the private part of a library unit does not include the visible part
of any public descendant of that library unit.

For
each package named in a use_package_clause
whose scope encloses a place, each declaration that occurs immediately
within the declarative region of the package is potentially use-visible
at this place if the declaration is visible at this place. For each type
T or T'Class named in a use_type_clause
whose scope encloses a place, the declaration of each primitive operator
of type T is potentially use-visible at this place if its declaration
is visible at this place. If a use_type_clause
whose scope encloses a place includes the reserved word all, then
the following entities are also potentially use-visible at this place
if the declaration of the entity is visible at this place: