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