[fpc-pascal] Info about the -Mdelphi mode

Martin Frb lazarus at mfriebe.de
Fri Apr 24 10:12:59 CEST 2026


CC'ed to fpc-other at lists.freepascal.org => for follow ups

On 23/04/2026 15:23, Graeme Geldenhuys via fpc-pascal wrote:
> On Thursday, 23 April 2026 10:53:02 BST michael via fpc-pascal wrote:
>> Other than that I have no knowledge of missing delphi things except
>> inline variables.
> I just just reading a article from a few years ago, explaining the pros and
> cons of inline variables. It actually made a really good case for that. There
> is a open MR for inline variables already - just not review/merged.
>
> https://blogs.embarcadero.com/introducing-inline-variables-in-the-delphi-language/
Apart from the general yes/no question....
(and I haven't looked deep into language design..., still...)

If for arguments sake, it was a yes:

1) "begin/end" are compound statements, not scopes (even mentioned on 
the big forum thread)
2) If a "inline scope" existed, no mention of "inline var" only at the 
start thereof.
3) same keyword "var" but significant difference: block vs single 
statement (one var only)

Currently (not tested), but from description

    if foo then begin
       writeln;
       var bar: integer = 1; // mid (implied) scope
       readln;
     end;


So within the "for arguments sake", shouldn't it then be

    if foo then
       // optional introduction of new keyword to start scope
       var // "var" starts scope (and must be followed by "begin"
          bar: integer = 1;
          bar2: integer = 2;
      begin
         writeln;
         readln;
      end;


- Without a "scope keyword" => "var" starts the new scope. That scope 
covers the next statement  (which must be compound begin/end).
- var block ends at begin (which starts the statement for which the 
scope will last)

And the "for var i :=
is inconsistent. Its the only one that allows "var" mid-statement. (wel, 
its the only(?) LHS that can be mid statement...)


> Any word on multi-line text blocks? ;-)  Coming from Java, I so MISS that in
> Object Pascal! :-D

Aren't they in 3.3.1 already? And 2 forms? backtick and multi-single-quote?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freepascal.org/pipermail/fpc-pascal/attachments/20260424/09e3caa4/attachment.htm>


More information about the fpc-pascal mailing list