Go to the first, previous, next, last section, table of contents.


4.9.1 Statically Matching Constraints and Subtypes

Static Semantics

  1. A constraint statically matches another constraint if both are null constraints, both are static and have equal corresponding bounds or discriminant values, or both are nonstatic and result from the same elaboration of a constraint of a subtype_indication or the same evaluation of a range of a discrete_subtype_definition.
  2. A subtype statically matches another subtype of the same type if they have statically matching constraints. Two anonymous access subtypes statically match if their designated subtypes statically match.
  3. Two ranges of the same type statically match if both result from the same evaluation of a range, or if both are static and have equal corresponding bounds.
  4. A constraint is statically compatible with a scalar subtype if it statically matches the constraint of the subtype, or if both are static and the constraint is compatible with the subtype. A constraint is statically compatible with an access or composite subtype if it statically matches the constraint of the subtype, or if the subtype is unconstrained. One subtype is statically compatible with a second subtype if the constraint of the first is statically compatible with the second subtype.


Go to the first, previous, next, last section, table of contents.