* destructor can have args in TP mode only (bug825 and 839)

This commit is contained in:
pierre 2000-03-14 16:37:25 +00:00
parent d54b55a11b
commit cadf4cc024
2 changed files with 31 additions and 15 deletions

View File

@ -918,6 +918,14 @@ unit pstatmnt;
p2^.resulttype:=ppointerdef(pd)^.pointertype.def; p2^.resulttype:=ppointerdef(pd)^.pointertype.def;
do_member_read(false,sym,p2,pd,again); do_member_read(false,sym,p2,pd,again);
end end
else
begin
if (m_tp in aktmodeswitches) then
begin
{ Constructors can take parameters.}
p2^.resulttype:=ppointerdef(pd)^.pointertype.def;
do_member_read(false,sym,p2,pd,again);
end
else else
begin begin
p2:=genmethodcallnode(pprocsym(sym),srsymtable,p2); p2:=genmethodcallnode(pprocsym(sym),srsymtable,p2);
@ -932,6 +940,7 @@ unit pstatmnt;
end; end;
end; end;
end; end;
end;
{ we need the real called method } { we need the real called method }
cleartempgen; cleartempgen;
@ -1349,7 +1358,10 @@ unit pstatmnt;
end. end.
{ {
$Log$ $Log$
Revision 1.123 2000-02-29 23:59:47 pierre Revision 1.124 2000-03-14 16:37:25 pierre
* destructor can have args in TP mode only (bug825 and 839)
Revision 1.123 2000/02/29 23:59:47 pierre
Use $GOTO ON Use $GOTO ON
Revision 1.122 2000/02/09 13:22:59 peter Revision 1.122 2000/02/09 13:22:59 peter

View File

@ -707,6 +707,7 @@ uses
{$endif} {$endif}
consume(_SEMICOLON); consume(_SEMICOLON);
if not(aktprocsym^.definition^.para^.empty) then if not(aktprocsym^.definition^.para^.empty) then
if not (m_tp in aktmodeswitches) then
Message(parser_e_no_paras_for_destructor); Message(parser_e_no_paras_for_destructor);
{ no return value } { no return value }
aktprocsym^.definition^.rettype.def:=voiddef; aktprocsym^.definition^.rettype.def:=voiddef;
@ -1548,7 +1549,10 @@ uses
end. end.
{ {
$Log$ $Log$
Revision 1.21 2000-03-11 21:11:24 daniel Revision 1.22 2000-03-14 16:37:26 pierre
* destructor can have args in TP mode only (bug825 and 839)
Revision 1.21 2000/03/11 21:11:24 daniel
* Ported hcgdata to new symtable. * Ported hcgdata to new symtable.
* Alignment code changed as suggested by Peter * Alignment code changed as suggested by Peter
+ Usage of my is operator replacement, is_object + Usage of my is operator replacement, is_object