[fpc-devel] TList slowness in classes
Mattias Gaertner
nc-gaertnma at netcologne.de
Fri Dec 24 12:04:22 CET 2004
On Fri, 24 Dec 2004 11:49:10 +0100 (W. Europe Standard Time)
Michael Van Canneyt <michael.vancanneyt at wisa.be> wrote:
>
>
> On Fri, 24 Dec 2004, Mattias Gaertner wrote:
>
> > On Fri, 24 Dec 2004 10:56:24 +0100 (W. Europe Standard Time)
> > Michael Van Canneyt <michael.vancanneyt at wisa.be> wrote:
> >
> > > > If the answer is yes, then maybe it's safe to compile parts of FPC
> > > > sources in lists.inc (like TList.Get) inside {$IMPLICITEXCEPTIONS OFF} ?
> >
> > Why not put it into a sub proc:
> >
> > function TList.Get(Index: Integer): Pointer;
> >
> > procedure RaiseIndexError;
> > begin
> > Error(SListIndexError,Index);
> > end;
> >
> > begin
> > If (Index<0) or (Index>=FCount) then
> > RaiseIndexError;
> > Result:=FList^[Index];
> > end;
> >
>
> The compiler detects that the sub can raise an exception.
And creates the implicit exception frame only in RaiseIndexError.
Mattias
More information about the fpc-devel
mailing list