Я бы выкинул (unit hiGlobalVar включается только элементом hiGVarContainer и не использует Find) его, и сделал так:
function ForceGVar(const sName:string):PData;
var i:integer;Name:string;
begin
Result := nil;
if sName='' then exit;
Name := LowerCase(sName);
i := NList.IndexOf(Name);
if i>=0 then
Result := PData(NList.Objects[i])
else begin
new(Result);
dtNull(Result^);
NList.AddObject(Name,cardinal(Result));
end;
end;