salve a tutti spero possiate aiutarmi
Ho problemi con la compilazione del package multilog (found in http://wiki.lazarus.freepascal.org/MultiLog)
l'errore è:
/usr/lib/lazarus/0.9.28.2/components/multilog-05/multilog.pas(807,29) Error: Illegal type conversion: "LongInt" to "TObject"
procedure TLogger.AddCheckPoint(Classes: TDebugClasses; const CheckName: String);
var
i,j: Integer;
begin
if Classes * ActiveClasses = [] then Exit;
i:=FCheckList.IndexOf(CheckName);
if i <> -1 then
begin
//Add a custom CheckList
j:=PtrInt(FCheckList.Objects[i])+1;
FCheckList.Objects[i]:= TObject(j); <---- error line -------------
end
else
begin
FCheckList.AddObject(CheckName,TObject(0));
j:=0;
end;
SendStream(ltCheckpoint,CheckName+' #'+IntToStr(j),nil);
end;
non capisco, sembra un semplice cast
qualche idea?
grazie
PS:
postato anche in
http://forum.lazarus.freepascal.org/index.php?action=post;msg=90099;topic=16552.0
mi hanno risposto sul forum ufficiale
dipende dal fatto che compilo per 64 bit
la linea di codice va sostiuita con la seguente
FCheckList.Objects[i]:= TObject(PtrUint(j));