$extendedSyntax
From Lazarus wiki
Revision as of 16:30, 20 February 2021 by Kai Burghardt (talk | contribs) (use categorization template)
│ Deutsch (de) │ English (en) │
The global compiler directive {$extendedSyntax on}
turns on additional syntax.
The FPC has this by default on.
The short notation is {$X+}
/{$X‑}
.
affected syntax
- Functions can be called as if they were procedures. The function result is discarded. This is potentially harmful if, for example, the function allocated new memory space and returned a pointer to it.
- Integer arithmetic operations are allowed on pointers. The directive
{$pointerMath}
had to be on for that during the respective pointer type’s definition. - Pointers become ordered and can be compared using
<
,>
,<=
and>=
. Typed pointers have to correspond to each other. The=
and<>
comparisons work regardless of the{$extendedSyntax}
state.
comparative remarks
- Standard Pascal does not define any of those “extensions”.
{$X+}
and{$X‑}
in GPC enables and disables full Extended Pascal compliance.