I canât say I follow you exactly...
Hello Bastiaan,
Is the sentence a(x).field1.field2 a syntactically valid outcome of the function-access production?
1) function-access = component- function access 2) component-function-access = record-function-access
substituting 2) in 1) 3) function-access = record-function-access
4) record-function-access = record-function '.' field-specifier substituting 4) in 3)
5) function-access = record-function '.' field-specifier
6) record-function = function-access substituting 6) in 5)
7) function-access = function-access '.' field-specifier
which makes function-access left recursive.
Is 7) lexically valid but semantically invalid because function-access '.' field-specifier can not be a function-access?
I do remember seeing ambiguities in variable access and function access, which I imagine can be resolved by keeping a symbol table of earlier definitions.
I am keeping a symbol table for that purpose.
I am staying away from compiler-compilers in order to make the parser more approachable and less abstract. It is recursive descent written in 10206 compliant pascal.
Regards,
Paul Isaacs