* remove unused typenode for procvars to prevent error

* typenode.allowed flag to allow a typenode
This commit is contained in:
peter 2001-05-19 21:19:57 +00:00
parent d997613a11
commit 50faa8433f

View File

@ -79,6 +79,7 @@ interface
end; end;
ttypenode = class(tnode) ttypenode = class(tnode)
allowed : boolean;
restype : ttype; restype : ttype;
constructor create(t : ttype);virtual; constructor create(t : ttype);virtual;
function pass_1 : tnode;override; function pass_1 : tnode;override;
@ -717,6 +718,7 @@ implementation
begin begin
inherited create(typen); inherited create(typen);
restype:=t; restype:=t;
allowed:=false;
end; end;
@ -731,8 +733,11 @@ implementation
begin begin
result:=nil; result:=nil;
{ a typenode can't generate code, so we give here { a typenode can't generate code, so we give here
an error. Else it'll be an abstract error in pass_2 } an error. Else it'll be an abstract error in pass_2.
Message(parser_e_no_type_not_allowed_here); Only when the allowed flag is set we don't generate
an error }
if not allowed then
Message(parser_e_no_type_not_allowed_here);
end; end;
@ -752,7 +757,11 @@ begin
end. end.
{ {
$Log$ $Log$
Revision 1.16 2001-05-09 19:57:51 peter Revision 1.17 2001-05-19 21:19:57 peter
* remove unused typenode for procvars to prevent error
* typenode.allowed flag to allow a typenode
Revision 1.16 2001/05/09 19:57:51 peter
* typenode doesn't generate code, give error in pass_1 instead of * typenode doesn't generate code, give error in pass_1 instead of
getting an abstract methode runtime error getting an abstract methode runtime error