Jelajahi Sumber

* initialise doconv after comparing procvars, and in particular set it to
tc_proc_to_procvar in case the comparison returns something different
from te_equal (so that not just the resulttype is changed of the
existing type conversion node, but a new typeconversion node is created
and processed)

git-svn-id: branches/blocks@28231 -

Jonas Maebe 11 tahun lalu
induk
melakukan
f29a7b827e
1 mengubah file dengan 4 tambahan dan 0 penghapusan
  1. 4 0
      compiler/defcmp.pas

+ 4 - 0
compiler/defcmp.pas

@@ -1533,6 +1533,10 @@ implementation
                    begin
                      { procvar -> procvar }
                      eq:=proc_to_procvar_equal(tprocvardef(def_from),tprocvardef(def_to),cdo_warn_incompatible_univ in cdoptions);
+                     if eq<te_equal then
+                       doconv:=tc_proc_2_procvar
+                     else
+                       doconv:=tc_equal;
                    end;
                  pointerdef :
                    begin