- (1)
- This clause defines attributes and rules associated with verifying the
consistency of a distributed program.
Static Semantics
- (2)
- For a prefix P that statically denotes a program unit, the following
attributes are defined:
- (3)
- P'Version
Yields a value of the predefined type String that identifies
the version of the compilation unit that contains the
declaration of the program unit.
- (4)
- P'Body_Version
Yields a value of the predefined type String that identifies
the version of the compilation unit that contains the body
(but not any subunits) of the program unit.
- (5)
- The version of a compilation unit changes whenever the version changes
for any compilation unit on which it depends semantically. The version also
changes whenever the compilation unit itself changes in a semantically
significant way. It is implementation defined whether there are other events
(such as recompilation) that result in the version of a compilation unit
changing.
Bounded (Run-Time) Errors
- (6)
- In a distributed program, a library unit is consistent if the same
version of its declaration is used throughout. It is a bounded error to
elaborate a partition of a distributed program that contains a compilation
unit that depends on a different version of the declaration of a shared
passive or RCI library unit than that included in the partition to which the
shared passive or RCI library unit was assigned. As a result of this error,
Program_Error can be raised in one or both partitions during elaboration; in
any case, the partitions become inaccessible to one another.
-- Email comments, additions, corrections, gripes, kudos, etc. to:
Magnus Kempe -- Magnus.Kempe@di.epfl.ch
Copyright statement
Page last generated: 95-03-12