* proc_to_procvar_equal fixed for procvar-procvar

This commit is contained in:
peter 2002-01-06 21:50:44 +00:00
parent 3175676917
commit 142b4fb7f8

View File

@ -432,13 +432,15 @@ implementation
if not(assigned(def1)) or not(assigned(def2)) then if not(assigned(def1)) or not(assigned(def2)) then
exit; exit;
{ check for method pointer } { check for method pointer }
ismethod:=assigned(def1.owner) and if def1.deftype=procvardef then
(def1.owner.symtabletype=objectsymtable); begin
{ I think methods of objects are also not compatible } ismethod:=(po_methodpointer in def1.procoptions);
{ with procedure variables! (FK) end
and else
assigned(def1.owner.defowner) and begin
(tobjectdef(def1.owner.defowner)^.is_class); } ismethod:=assigned(def1.owner) and
(def1.owner.symtabletype=objectsymtable);
end;
if (ismethod and not (po_methodpointer in def2.procoptions)) or if (ismethod and not (po_methodpointer in def2.procoptions)) or
(not(ismethod) and (po_methodpointer in def2.procoptions)) then (not(ismethod) and (po_methodpointer in def2.procoptions)) then
begin begin
@ -1921,7 +1923,10 @@ implementation
end. end.
{ {
$Log$ $Log$
Revision 1.61 2002-01-06 12:08:16 peter Revision 1.62 2002-01-06 21:50:44 peter
* proc_to_procvar_equal fixed for procvar-procvar
Revision 1.61 2002/01/06 12:08:16 peter
* removed uauto from orddef, use new range_to_basetype generating * removed uauto from orddef, use new range_to_basetype generating
the correct ordinal type for a range the correct ordinal type for a range