* use codeptruinttype/codeptrsinttype when emiting ordinal constants that

have the same size as voidcodepointertype

git-svn-id: trunk@32473 -
This commit is contained in:
Jonas Maebe 2015-11-22 11:49:43 +00:00
parent 7b89072d88
commit 94a6ef3103

View File

@ -376,7 +376,7 @@ implementation
until not assigned(hpropsym); until not assigned(hpropsym);
if not(assigned(propaccesslist) and assigned(propaccesslist.firstsym)) then if not(assigned(propaccesslist) and assigned(propaccesslist.firstsym)) then
begin begin
tcb.emit_tai(Tai_const.Create_int_codeptr(unsetvalue),voidcodepointertype); tcb.emit_tai(Tai_const.Create_int_codeptr(unsetvalue),codeptruinttype);
typvalue:=3; typvalue:=3;
end end
else if propaccesslist.firstsym^.sym.typ=fieldvarsym then else if propaccesslist.firstsym^.sym.typ=fieldvarsym then
@ -416,7 +416,7 @@ implementation
end; end;
hp:=hp^.next; hp:=hp^.next;
end; end;
tcb.emit_tai(Tai_const.Create_int_codeptr(address),voidcodepointertype); tcb.emit_tai(Tai_const.Create_int_codeptr(address),codeptruinttype);
typvalue:=0; typvalue:=0;
end end
else else
@ -436,7 +436,7 @@ implementation
extnumber:=tprocdef(propaccesslist.procdef).extnumber; extnumber:=tprocdef(propaccesslist.procdef).extnumber;
tcb.emit_tai(Tai_const.Create_int_codeptr( tcb.emit_tai(Tai_const.Create_int_codeptr(
tobjectdef(tprocdef(propaccesslist.procdef).struct).vmtmethodoffset(extnumber)), tobjectdef(tprocdef(propaccesslist.procdef).struct).vmtmethodoffset(extnumber)),
voidcodepointertype); codeptruinttype);
{ register for wpo } { register for wpo }
tobjectdef(tprocdef(propaccesslist.procdef).struct).register_vmt_call(extnumber); tobjectdef(tprocdef(propaccesslist.procdef).struct).register_vmt_call(extnumber);
{$ifdef vtentry} {$ifdef vtentry}
@ -478,7 +478,7 @@ implementation
if not(ppo_stored in tpropertysym(sym).propoptions) then if not(ppo_stored in tpropertysym(sym).propoptions) then
begin begin
{ no, so put a constant zero } { no, so put a constant zero }
tcb.emit_tai(Tai_const.Create_nil_codeptr,voidcodepointertype); tcb.emit_tai(Tai_const.Create_nil_codeptr,codeptruinttype);
proctypesinfo:=proctypesinfo or (3 shl 4); proctypesinfo:=proctypesinfo or (3 shl 4);
end end
else else