Interessanterweise kann das FreeAndNil auch an anderer Stelle stehen, ohne dass eine Warnung kommt (Delphi XE).
Delphi-Quellcode:
procedure TFormTest.Button2Click(Sender: TObject);
var
StringList : TStringList;
i : integer;
begin
FreeAndNil(StringList);
i := 1;
if i=0 then
StringList := TStringList.Create;
StringList.Add('Rumms');
end;