![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
More on Closure SetsIn general, a program unit can be processed to a particular compilation state only if a set of other units also has been processed to that state. For example, a unit can be analyzed only if all of its withed units also have been analyzed. Therefore, a unit and a compilation state are sufficient to define a set of other units that is known as the compilation-state closure set. The closure sets are described below:
- Analyze Closure
Includes all the units necessary to perform semantic analysis on the given unit. For units, the analyze closure includes all the units that are visible to the given unit through with, spec/body, or parent/subunit relationships.
- Code Closure
Includes all the units necessary to generate code for the given unit. For units, the code closure includes the analyze closure and any bodies that must be processed because of macro-expansion of generics or inlining.
- Link Closure
Includes all the units necessary to link an executable. For units, the link closure includes all specs and bodies that are accessible through with and subunit relationships.
Rational Software Corporation http://www.rational.com support@rational.com techpubs@rational.com Copyright © 1993-2001, Rational Software Corporation. All rights reserved. |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |