Gibt dir denn der Compiler keinen Hinweis auf eine nicht-initialisierte Variable?
Doch in den meisten Fällen schon, aber z.B. in diesem Fall nicht:
Code:
procedure Test;
var
MyObject: TMyClass;
begin
try
finally
FreeAndNil(MyObject);
end;
end;
In dem Falle bekomme ich keine Warnung.