Du kannst ja dennoch bestimmen wo er rein soll.
someProc(IInterface(nil));
Und sowas geht auch.
Delphi-Quellcode:
program Project2;
{$APPTYPE CONSOLE}
{$R *.res}
procedure someProc(param: IInterface=nil); overload;
begin
//
end;
procedure someProc(param: TObject); overload;
begin
//
end;
begin
someProc;
readln;
end.
Aber ansonsten sollte man eigentlich wissen, daß Delphi (fast) immer die letzte "passende" Deklaration verwendet, also die Erste (von unten/hinten), welche es im aktuellen Skope findet.