[fpc-pascal] Internal error 200502052

Coco Pascal coco.pascal at xs4all.nl
Tue May 26 21:31:39 CEST 2009


Coco Pascal wrote:
> I get an internal error 200502052 when building a library on fc10 with 
> lazarus 0.9.26.2/fpc 2.2.2 and a recent nightly build with fpc 2.2.4.
> It is raised by the following procedure from aasmtai.pas:
>
>    procedure tai_cpu_abstract.loadref(opidx:longint;const r:treference);
>      begin
>        allocate_oper(opidx+1);
>        with oper[opidx]^ do
>          begin
>            if typ<>top_ref then
>              begin
>                clearop(opidx);
>                new(ref);
>              end;
>
>            ref^:=r;
> {$ifdef x86}
>            { We allow this exception for x86, since overloading this 
> would be
>              too much of a a speed penalty}
>            if (ref^.segment<>NR_NO) and (ref^.segment<>NR_DS) then
>              segprefix:=ref^.segment;
> {$endif}
>            if (cs_create_pic in current_settings.moduleswitches) and
>              assigned(r.symbol) and
>              not assigned(r.relsymbol) and
>              (r.refaddr=addr_no) then
>              internalerror(200502052);
>            typ:=top_ref;
>            if assigned(add_reg_instruction_hook) then
>              begin
>                add_reg_instruction_hook(self,ref^.base);
>                add_reg_instruction_hook(self,ref^.index);
>              end;
>            { mark symbol as used }
>            if assigned(ref^.symbol) then
>              ref^.symbol.increfs;
>            if assigned(ref^.relsymbol) then
>              ref^.relsymbol.increfs;
>          end;
>      end;
>
> Could somebody please explain what is happening here so I can make a 
> small test project for a bugreport?
Filed bug report: http://bugs.freepascal.org/view.php?id=13842



More information about the fpc-pascal mailing list