* fixed enum for not GDB

This commit is contained in:
peter 1998-09-24 15:11:17 +00:00
parent 1b83196296
commit 3d947ea74d
2 changed files with 39 additions and 35 deletions

View File

@ -1461,6 +1461,7 @@
end; end;
{$endif GDB} {$endif GDB}
{**************************************************************************** {****************************************************************************
TENUMSYM TENUMSYM
****************************************************************************} ****************************************************************************}
@ -1475,60 +1476,55 @@
def^.setmin(v); def^.setmin(v);
if def^.max<v then if def^.max<v then
def^.setmax(v); def^.setmax(v);
{$ifdef GDB}
order; order;
{$endif GDB}
end; end;
constructor tenumsym.load;
constructor tenumsym.load;
begin begin
tsym.load; tsym.load;
typ:=enumsym; typ:=enumsym;
definition:=penumdef(readdefref); definition:=penumdef(readdefref);
value:=readlong; value:=readlong;
{$ifdef GDB}
next := Nil; next := Nil;
{$endif GDB}
end; end;
procedure tenumsym.deref; procedure tenumsym.deref;
begin begin
resolvedef(pdef(definition)); resolvedef(pdef(definition));
{$ifdef GDB}
order; order;
{$endif}
end; end;
{$ifdef GDB}
procedure tenumsym.order; procedure tenumsym.order;
var sym : penumsym; var
begin sym : penumsym;
begin
sym := definition^.first; sym := definition^.first;
if sym = nil then if sym = nil then
begin begin
definition^.first := @self; definition^.first := @self;
next := nil; next := nil;
exit; exit;
end; end;
{reorder the symbols in increasing value } { reorder the symbols in increasing value }
if value < sym^.value then if value < sym^.value then
begin begin
next := sym; next := sym;
definition^.first := @self; definition^.first := @self;
end else end
begin else
while (sym^.value <= value) and assigned(sym^.next) do begin
while (sym^.value <= value) and assigned(sym^.next) do
sym := sym^.next; sym := sym^.next;
next := sym^.next; next := sym^.next;
sym^.next := @self; sym^.next := @self;
end; end;
end; end;
{$endif GDB}
procedure tenumsym.write; procedure tenumsym.write;
begin begin
tsym.write; tsym.write;
writedefref(definition); writedefref(definition);
@ -1536,6 +1532,7 @@
current_ppu^.writeentry(ibenumsym); current_ppu^.writeentry(ibenumsym);
end; end;
{$ifdef GDB} {$ifdef GDB}
procedure tenumsym.concatstabto(asmlist : paasmoutput); procedure tenumsym.concatstabto(asmlist : paasmoutput);
begin begin
@ -1543,6 +1540,7 @@
end; end;
{$EndIf GDB} {$EndIf GDB}
{**************************************************************************** {****************************************************************************
TTYPESYM TTYPESYM
****************************************************************************} ****************************************************************************}
@ -1717,7 +1715,10 @@
{ {
$Log$ $Log$
Revision 1.46 1998-09-23 15:39:13 pierre Revision 1.47 1998-09-24 15:11:17 peter
* fixed enum for not GDB
Revision 1.46 1998/09/23 15:39:13 pierre
* browser bugfixes * browser bugfixes
was adding a reference when looking for the symbol was adding a reference when looking for the symbol
if -bSYM_NAME was used if -bSYM_NAME was used

View File

@ -291,8 +291,8 @@
constructor load; constructor load;
procedure write;virtual; procedure write;virtual;
procedure deref;virtual; procedure deref;virtual;
{$ifdef GDB}
procedure order; procedure order;
{$ifdef GDB}
procedure concatstabto(asmlist : paasmoutput);virtual; procedure concatstabto(asmlist : paasmoutput);virtual;
{$endif GDB} {$endif GDB}
end; end;
@ -314,7 +314,10 @@
{ {
$Log$ $Log$
Revision 1.1 1998-09-23 12:03:57 peter Revision 1.2 1998-09-24 15:11:18 peter
* fixed enum for not GDB
Revision 1.1 1998/09/23 12:03:57 peter
* overloading fix for array of const * overloading fix for array of const
} }