Delphi Compiler Error
E2002 File type not allowed here
Reason for the Error & Solution
File types are not allowed as value parameters and as the base type of a file type itself. They are also not allowed as function return types, and you cannot assign them – those errors will however produce a different error message.
program Produce; procedure WriteInteger(T: Text; I: Integer); begin Writeln(T, I); end; begin end.
In this example, the problem is that T is value parameter of type Text, which is a file type. Recall that whatever gets written to a value parameter has no effect on the caller’s copy of the variable – declaring a file as a value parameter therefore makes little sense.
program Solve; procedure WriteInteger(var T: Text; I: Integer); begin Writeln(T, I); end; begin end.
Declaring the parameter as a var parameter solves the problem.