現在、次のような Delphi の手順があります。
Procedure Time.TimeDB(algorithm: string; Encode, Decode: InputFunction; N, R: Int);
VAR
i : LongInt;
Errors : Array[N] of LongInt;
BEGIN
for i := 0 to N-1 do
Errors[i] := 0;
END;
Errors の定義に渡される N は、プロシージャ定義で宣言されているにもかかわらず、宣言されていない識別子であるというエラーが表示されます。ただし、BEGIN-END セクションでは N が認識されます。これの原因と、VAR セクションで可変長配列を宣言する方法を教えてください。