〈 Type 〉 | ---> |
〈 QualIdent 〉 |
〈 ArrayType 〉 |
〈 RecordType 〉 |
|
| |
〈 PointerType 〉 |
〈 ProcedureType 〉 |
〈 ArrayType 〉 | ---> |
``ARRAY'' 〈 Length 〉
{ ``,'' 〈 Length 〉 }
|
| |
``OF'' 〈 Type 〉 |
〈 Length 〉 | ---> |
〈 ConstExpression 〉 |
〈 RecordType 〉 | ---> |
``RECORD'' [ ``(''
〈 BaseType 〉 ``)'' ]
|
| |
〈 FieldListSequence 〉 ``END'' |
〈 BaseType 〉 | ---> |
〈 QualIdent 〉 |
〈 FieldListSequence 〉 | ---> |
〈 FieldList 〉
{ ``;''
〈 FieldList 〉 } |
〈 FieldList 〉 | ---> |
[ 〈 IdentList 〉
``:'' 〈 Type 〉 ] |
〈 PointerType 〉 | ---> |
``POINTER'' ``TO''
〈 Type 〉 |
〈 ProcedureType 〉 | ---> |
``PROCEDURE''
[ 〈 FormalParameters 〉 ] |