pp4d

[id:lethevert:20051011:p3]
[id:lethevert:20050915:p4]
関数内関数とかにも対応済み。
こんなコードを、

function TForm2.getName: string
    resourcestring
        errMsg = 'Form2 - error name format'
    function getName1: string
        var
            fname array of string
        begin
            Result := fname[0];
        end;
    begin
        Result := getName1;
    end;

こう変換する。・・・って、ほとんど変換されていないじゃんね。

function TForm2.getName: string;
    resourcestring
        errMsg = 'Form2 - error name format';
    function getName1: string; forward;
    function getName1: string;
        var
            fname: array of string;
        begin
            Result := fname [ 0 ];
        end;
    begin
        Result := getName1;
    end;

でもま、中身の構文を理解して、こう変換しているというわけなので、その意を汲み取ってやってください。