At least binary-long should be fixed in [r118], didn't checked the fix yet
- 2002 standard: use of "constant"
- 2002 standard: use of new data types that don't need (aren't allowed to have) a picture clause (full list of usage: binary-char, binary-short, binary-long, binary-double, float-short, float-long, float-extended, index, object reference, pointer, program-
pointer)
- as a common extension: data types that don't need (aren't allowed to have) a picture clause: BINARY-C-LONG, SIGNED-INT, UNSIGNED-INT, SIGNED-LONG, UNSIGNED-LONG, SIGNED-SHORT, UNSIGNED-SHORT
- COMP-X data type (a common extension [simply parse like other COMP types - needs picture clause])
Rechecked with [r140] - everything above is accepted, despite of "constant" (doesn't work the way it's implemented in the grammar). Not sure if everything is checked in the test suite (especially the part "usages that aren't allowed to have a picture clause").
Related
Commit: [r140]
Indeed, the "not allowed" checks are still missing.
Given the nature and goals of Koopa I'm not going to add "not allowed" checks. I really want to accept as much as possible syntactically, even if certain combinations may not be allowed semantically. I would rather see such things added as a semantic pass on the syntax tree.
You've added
CONSTANT AS
in the meanwhile, did you?Likely something for a new ticket is the
RETRY
phrase andDYNAMIC LENGTH
Simon
Yes,
CONSTANT AS
is covered by theconstantEntry_level01
rule.RETRY
andDYNAMIC LENGTH
are indeed missing. Feel free to create tickets for those. :-)