Como apunte, siempre que te salga este error, se trata del mismo problema algún objeto que utilizas sin crearlo previamente. Aqui tienes otra forma sencilla de manipular forms sin tener que utilizar una variable:
Código Delphi
[-]
procedure TForm1.Button1Click(Sender: TObject);
begin
With TForm2.Create(nil) Do Try
ShowModal; finally
free; end;
end;