* proc. var declarations in a class doesn't eat a public anymore

This commit is contained in:
florian 2004-08-08 12:35:09 +00:00
parent fe54af8f82
commit 95e40f0f69

View File

@ -1631,8 +1631,10 @@ const
for i:=1 to num_proc_directives do
if proc_direcdata[i].idtok=idtoken then
begin
if (not isprocvar) or
(pd_procvar in proc_direcdata[i].pd_flags) then
if ((not isprocvar) or
(pd_procvar in proc_direcdata[i].pd_flags)) and
{ don't eat a public directive in classes }
not((proc_direcdata[i].idtok=_PUBLIC) and (symtablestack.symtabletype=objectsymtable)) then
is_proc_directive:=true;
exit;
end;
@ -1738,7 +1740,11 @@ const
if (pd_notobjintf in proc_direcdata[p].pd_flags) and
is_interface(tprocdef(pd)._class) then
exit;
end;
end
{ don't eat public in object/class declarions }
else if (pd.deftype=procvardef) and (proc_direcdata[p].idtok=_PUBLIC) and
(symtablestack.symtabletype=objectsymtable) then
exit;
{ consume directive, and turn flag on }
consume(token);
@ -2260,7 +2266,10 @@ const
end.
{
$Log$
Revision 1.184 2004-07-17 13:51:57 florian
Revision 1.185 2004-08-08 12:35:09 florian
* proc. var declarations in a class doesn't eat a public anymore
Revision 1.184 2004/07/17 13:51:57 florian
* function result location for syscalls on MOS hopefully correctly set now
Revision 1.183 2004/07/14 23:19:21 olle