Status
The grammar accepts more than the compiler handles. The table lists the constructs where the two part ways: a supported construct compiles and verifies, a rejected one parses and the validator reports the named diagnostic at its source line, a planned one does not parse yet. The compiler's tests check every row, and this page is generated from the same table, so it describes the current build.
| Construct | Status |
|---|---|
Exclusive range a..<b | Supported |
Array literals [a, b, c] | Supported |
Indexing a[K] (constant) | Supported |
Indexing a[i] (runtime) | Supported |
Array [lb..ub] multiplicity | Supported |
| Class-typed arrays | Supported |
| Feature-typed arrays | Supported |
| Local arrays | Supported |
| Local arrays of class or feature type | Supported |
| Parameter arrays | Rejected by the validator (OXSTS.UNSUPPORTED_FEATURE) |
Unbounded variable multiplicity [], [lb..*] | Rejected by the validator (OXSTS.TYPE_MISMATCH) |
Call through a variable v.t() | Supported |
Member read through a variable v.x | Supported |
Write through a variable v.x := e | Rejected by the validator (OXSTS.UNSUPPORTED_FEATURE) |
Optional read through a variable v?.x | Rejected by the validator (OXSTS.UNSUPPORTED_FEATURE) |
Optional call through a variable v?.t() | Rejected by the validator (OXSTS.UNSUPPORTED_FEATURE) |
record X { ... } | Supported |
Record literal Point { x = 0 } | Supported |
| Arrays of records, array fields in records | Rejected by the validator (OXSTS.UNSUPPORTED_FEATURE) |
| Record-typed features | Rejected by the validator (OXSTS.UNSUPPORTED_FEATURE) |
Multiple inheritance class C : A, B | Rejected by the validator (OXSTS.MULTIPLE_INHERITANCE) |
fun declarations | Planned |
pattern declarations | Planned |
| AF, EG, AX, EX temporal operators | Planned |