* ensure insert_self_and_vmt_para can deal with a preexisting self symbol as long as it has the expected type

This commit is contained in:
Sven/Sarah Barth 2022-05-23 23:03:10 +02:00
parent 39f5534969
commit 90eabdd6b4

View File

@ -286,8 +286,12 @@ implementation
vsp:=vs_var;
hdef:=selfdef;
end;
vs:=cparavarsym.create('$self',paranr_self,vsp,hdef,[vo_is_self,vo_is_hidden_para]);
pd.parast.insertsym(vs);
vs:=tparavarsym(pd.parast.find('self'));
if not assigned(vs) or (vs.typ<>paravarsym) or (vs.vardef<>hdef) then
begin
vs:=cparavarsym.create('$self',paranr_self,vsp,hdef,[vo_is_self,vo_is_hidden_para]);
pd.parast.insertsym(vs);
end;
current_tokenpos:=storepos;
end;