* Fix TW22160B1

This commit is contained in:
Michaël Van Canneyt 2024-03-06 17:08:52 +01:00
parent 821f3e326f
commit 76687a04e5
2 changed files with 6 additions and 4 deletions

View File

@ -215,7 +215,7 @@ begin
ms_registered : cancontinue:=true; ms_registered : cancontinue:=true;
ms_compile : cancontinue:=true; ms_compile : cancontinue:=true;
ms_compiling_waitimpl : cancontinue:=m.usedunitsloaded(false,firstwaiting); ms_compiling_waitimpl : cancontinue:=m.usedunitsloaded(false,firstwaiting);
ms_compiling_waitfinish : cancontinue:=m.nowaitingforunits; ms_compiling_waitfinish : cancontinue:=m.nowaitingforunits(firstwaiting);
ms_compiling_waitintf : cancontinue:=m.usedunitsloaded(true,firstwaiting); ms_compiling_waitintf : cancontinue:=m.usedunitsloaded(true,firstwaiting);
ms_compiling_wait : cancontinue:=m.usedunitsloaded(true,firstwaiting); ms_compiling_wait : cancontinue:=m.usedunitsloaded(true,firstwaiting);
ms_compiled : cancontinue:=true; ms_compiled : cancontinue:=true;

View File

@ -260,7 +260,7 @@ interface
function addusedunit(hp:tmodule;inuses:boolean;usym:tunitsym):tused_unit; function addusedunit(hp:tmodule;inuses:boolean;usym:tunitsym):tused_unit;
function usesmodule_in_interface(m : tmodule) : boolean; function usesmodule_in_interface(m : tmodule) : boolean;
function usedunitsloaded(interface_units: boolean; out firstwaiting : tmodule): boolean; function usedunitsloaded(interface_units: boolean; out firstwaiting : tmodule): boolean;
function nowaitingforunits : Boolean; function nowaitingforunits(out firstwaiting : tmodule) : Boolean;
procedure updatemaps; procedure updatemaps;
function derefidx_unit(id:longint):longint; function derefidx_unit(id:longint):longint;
function resolve_unit(id:longint):tmodule; function resolve_unit(id:longint):tmodule;
@ -1045,7 +1045,7 @@ implementation
const const
statesneeded : array[boolean] of tmodulestates = ([ms_processed, ms_compiled,ms_compiling_waitimpl, ms_compiling_waitfinish], statesneeded : array[boolean] of tmodulestates = ([ms_processed, ms_compiled,ms_compiling_waitimpl, ms_compiling_waitfinish],
[ms_processed, ms_compiled,ms_compiling_waitimpl]); [ms_processed, ms_compiled,ms_compiling_waitimpl, ms_compiling_waitfinish]);
var var
itm : TLinkedListItem; itm : TLinkedListItem;
@ -1069,10 +1069,12 @@ implementation
end; end;
end; end;
function tmodule.nowaitingforunits: Boolean; function tmodule.nowaitingforunits(out firstwaiting : tmodule): Boolean;
begin begin
Result:=waitingforunit.count=0; Result:=waitingforunit.count=0;
If not Result then
firstwaiting:=tmodule(waitingforunit[0]);
end; end;
function tmodule.usesmodule_in_interface(m: tmodule): boolean; function tmodule.usesmodule_in_interface(m: tmodule): boolean;