[fpc-pascal] More syntax questions (part 4)

Michael Van Canneyt michael at freepascal.org
Sat Dec 16 17:40:18 CET 2023



On Sat, 16 Dec 2023, Adriaan van Os via fpc-pascal wrote:

>
> More questions about the FreePascal Language Reference (version 3.2.0), part 
> 4
>
> 34. Are macpas LEAVE and CYCLE statements undocumented ?

Yes.

>
> 35. Are macpas ellipsis (...) parameters undocumented ?

Yes.

>
> 36. Is the macpas RETURN statement undocumented ?

Yes.

>
> 37. Shouldn't the macpas "mwpascal" modifier be added to ?
>
> 	call-modifiers = "register" | "cdecl" | "pascal" | "stdcall" | 
> "safecall" | "inline" | "mwpascal" .
> 	call-modifiers = "cdecl" | "inline" | "local" | "nostackframe" | 
> "overload" | "pascal" | "register" | "safecall" | "saveregisters" | 
> "softfloat" | "stdcall" | "varargs" | "mwpascal".

Yes. There are even more.

>
> 38. Is a <constref-parameter> rule missing ?
>
> 	constref-parameter = "CONSTREF" identifier-list [ ":" [ "ARRAY" "OF" 
> ] type-identifier ] .
>
> where
>
> 	parameter-declaration = value-parameter | variable-parameter | 
> out-parameter | constant-parameter | out-parameter  | constref-parameter .

Yes.

>
> 39. Section 16.7 defines a rule <library> and a rule <exports-clause>
>
> 	library = library-header ";" [ uses-clause ] block "." .
> 	exports-clause = "exports" exports-list ";" .
>
> The exports-clause rule however doesn't seem to be referenced anywhere in the 
> syntax, so it may have to be added to the <library> rule ?

To the library rule, but also to the unit rule, because it can also appear
in a unit...

>
> 40. < recordoperator-definition> = <record-operator-definition> ?

Yes.

>
> 41. Is it correct that <operator-definition> is referenced only in the record 
> <component-list> rule ? I would expect something like an 
> <operator-declaration-part> in various declaration rules.

To the best of my knowledge, only records support operator definitions.

The 'operator' chapter handles 'global' operators which are at the level of
global functions/procedures.

Michael.


More information about the fpc-pascal mailing list