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.
_______________________________________________
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal

Reply via email to