Merge pull request #8 from ksherlock/patch0004

records within records can generate a bad displacement in the debugger symbol table.
This commit is contained in:
MikeW50
2018-03-25 15:15:22 -06:00
committed by GitHub
+2 -2
View File
@@ -802,7 +802,7 @@ var
tp1^.next := tpList;
tpList := tp1;
tp1^.tp := tp;
tp1^.disp := symLength;
tp1^.disp := symLength - 12;
end; {else}
end; {GetTypeDisp}
@@ -1062,6 +1062,7 @@ var
if sym^.idtype <> nil then
if sym^.idtype^.form in
[scalar,subrange,pointerStruct,arrays,records,objects] then begin
symLength := symLength+12; {update length of symbol table}
WriteName(sym); {write the name field}
WriteAddress(sym); {write the address field}
case sym^.idtype^.form of
@@ -1089,7 +1090,6 @@ var
end; {else}
end;
end; {case}
symLength := symLength+12; {update length of symbol table}
end; {if}
if sym^.rlink <> nil then