mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-30 12:20:19 +02:00
* ptrint -> ptruint
git-svn-id: trunk@7892 -
This commit is contained in:
parent
fb00c0e253
commit
ea47fcfc97
@ -488,10 +488,10 @@
|
||||
while assigned(vmt) do
|
||||
begin
|
||||
p:=(pointer(vmt)+vmtMsgStrPtr);
|
||||
If (P<>Nil) and (PPtrInt(P)^<>0) then
|
||||
If (P<>Nil) and (PPtruInt(P)^<>0) then
|
||||
begin
|
||||
count:=PPtrInt(PSizeUInt(p)^)^;
|
||||
msgstrtable:=pmsgstrtable(PSizeUInt(P)^+sizeof(ptrint));
|
||||
count:=Pptruint(PSizeUInt(p)^)^;
|
||||
msgstrtable:=pmsgstrtable(PSizeUInt(P)^+sizeof(ptruint));
|
||||
end
|
||||
else
|
||||
Count:=0;
|
||||
@ -610,18 +610,18 @@
|
||||
etStandard:
|
||||
begin
|
||||
//writeln('Doing etStandard cast of ', TObject(Instance).classname(), ' with self = ', ptruint(Instance), ' and offset = ', IEntry^.IOffset);
|
||||
Pointer(Obj) := Pointer(PtrInt(Instance) + IEntry^.IOffset);
|
||||
Pbyte(Obj):=Pbyte(instance)+IEntry^.IOffset;
|
||||
end;
|
||||
etFieldValue:
|
||||
begin
|
||||
//writeln('Doing etFieldValue cast of ', TObject(Instance).classname(), ' with offset = ', IEntry^.IOffset);
|
||||
Pointer(obj) := ppointer(Pointer(Instance)+IEntry^.IOffset)^;
|
||||
Pointer(obj) := ppointer(Pbyte(Instance)+IEntry^.IOffset)^;
|
||||
end;
|
||||
etVirtualMethodResult:
|
||||
begin
|
||||
//writeln('Doing etVirtualMethodResult cast of ', TObject(Instance).classname());
|
||||
TMethod(Getter).data := Instance;
|
||||
TMethod(Getter).code := ppointer(ptrint(Instance) + IEntry^.IOffset)^;
|
||||
TMethod(Getter).code := ppointer(Pbyte(Instance) + IEntry^.IOffset)^;
|
||||
Pointer(obj) := Pointer(Getter());
|
||||
end;
|
||||
etStaticMethodResult:
|
||||
|
@ -31,7 +31,7 @@
|
||||
|
||||
const
|
||||
vmtInstanceSize = 0;
|
||||
vmtParent = sizeof(ptrint)*2;
|
||||
vmtParent = sizeof(ptruint)*2;
|
||||
{ These were negative value's, but are now positive, else classes
|
||||
couldn't be used with shared linking which copies only all data from
|
||||
the .global directive and not the data before the directive (PFV) }
|
||||
@ -84,7 +84,7 @@
|
||||
PMsgStrTable = ^TMsgStrTable;
|
||||
|
||||
TStringMessageTable = record
|
||||
count : PtrInt;
|
||||
count : ptruint;
|
||||
msgstrtable : array[0..0] of tmsgstrtable;
|
||||
end;
|
||||
|
||||
@ -122,7 +122,7 @@
|
||||
tinterfaceentry = record
|
||||
IID : pguid; { if assigned(IID) then Com else Corba}
|
||||
VTable : Pointer;
|
||||
IOffset : PtrInt;
|
||||
IOffset : ptruint;
|
||||
IIDStr : pshortstring; { never nil. Com: upper(GuidToString(IID^)) }
|
||||
case boolean of
|
||||
true : (IType : tinterfaceentrytype);
|
||||
@ -131,7 +131,7 @@
|
||||
|
||||
pinterfacetable = ^tinterfacetable;
|
||||
tinterfacetable = record
|
||||
EntryCount : PtrInt;
|
||||
EntryCount : ptruint;
|
||||
Entries : array[0..0] of tinterfaceentry;
|
||||
end;
|
||||
|
||||
@ -317,7 +317,7 @@
|
||||
type
|
||||
PVarRec = ^TVarRec;
|
||||
TVarRec = record
|
||||
case VType : Ptrint of
|
||||
case VType : sizeuint of
|
||||
{$ifdef ENDIAN_BIG}
|
||||
vtInteger : ({$IFDEF CPU64}integerdummy1 : Longint;{$ENDIF CPU64}VInteger: Longint);
|
||||
vtBoolean : ({$IFDEF CPU64}booldummy : Longint;{$ENDIF CPU64}booldummy1,booldummy2,booldummy3: byte; VBoolean: Boolean);
|
||||
|
@ -256,7 +256,7 @@ Type
|
||||
PCardinal = ^Cardinal;
|
||||
PQWord = ^QWord;
|
||||
PInt64 = ^Int64;
|
||||
PPtrInt = ^PtrInt;
|
||||
PPtrUInt = ^PtrUInt;
|
||||
PSizeInt = ^SizeInt;
|
||||
|
||||
PPointer = ^Pointer;
|
||||
|
Loading…
Reference in New Issue
Block a user