* support procvar^, with procvar returning a procvardef in tp/mac modes

git-svn-id: trunk@1477 -
This commit is contained in:
peter 2005-10-18 12:33:27 +00:00
parent b55645790b
commit 38993ae7e8

View File

@ -1707,6 +1707,18 @@ implementation
_CARET: _CARET:
begin begin
consume(_CARET); consume(_CARET);
{ support tp/mac procvar^ if the procvar returns a
pointer type }
if ((m_tp_procvar in aktmodeswitches) or
(m_mac_procvar in aktmodeswitches)) and
(p1.resulttype.def.deftype=procvardef) and
(tprocvardef(p1.resulttype.def).rettype.def.deftype=pointerdef) then
begin
p1:=ccallnode.create_procvar(nil,p1);
resulttypepass(p1);
end;
if (p1.resulttype.def.deftype<>pointerdef) then if (p1.resulttype.def.deftype<>pointerdef) then
begin begin
{ ^ as binary operator is a problem!!!! (FK) } { ^ as binary operator is a problem!!!! (FK) }
@ -1717,9 +1729,7 @@ implementation
p1:=cerrornode.create; p1:=cerrornode.create;
end end
else else
begin p1:=cderefnode.create(p1);
p1:=cderefnode.create(p1);
end;
end; end;
_LECKKLAMMER: _LECKKLAMMER: