mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-06-09 14:18:49 +02:00
* proper handling for boolean results (especially Boolean64 and QWordBool) in System.Rtti.Invoke
This commit is contained in:
parent
f8c09568d8
commit
12db8a59b5
@ -315,6 +315,24 @@ begin
|
|||||||
end;
|
end;
|
||||||
tkQWord, tkInt64:
|
tkQWord, tkInt64:
|
||||||
PUInt64(aResultValue)^ := PUInt64(@ResultBuf)^;
|
PUInt64(aResultValue)^ := PUInt64(@ResultBuf)^;
|
||||||
|
tkBool:
|
||||||
|
begin
|
||||||
|
td := GetTypeData(aResultType);
|
||||||
|
case td^.OrdType of
|
||||||
|
otUByte,
|
||||||
|
otSByte:
|
||||||
|
PUInt8(aResultValue)^ := PUInt8(@ResultBuf)^;
|
||||||
|
otUWord,
|
||||||
|
otSWord:
|
||||||
|
PUInt16(aResultValue)^ := PUInt16(@ResultBuf)^;
|
||||||
|
otULong,
|
||||||
|
otSLong:
|
||||||
|
PUInt32(aResultValue)^ := PUInt32(@ResultBuf)^;
|
||||||
|
otUQWord,
|
||||||
|
otSQWord:
|
||||||
|
PUInt64(aResultValue)^ := PUInt64(@ResultBuf)^;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
else
|
else
|
||||||
PUInt32(aResultValue)^ := PUInt32(@ResultBuf)^;
|
PUInt32(aResultValue)^ := PUInt32(@ResultBuf)^;
|
||||||
end;
|
end;
|
||||||
|
Loading…
Reference in New Issue
Block a user