Преглед изворни кода

* call method pointers located in registers correctly

git-svn-id: trunk@22343 -
florian пре 13 година
родитељ
комит
4514a55ec6
1 измењених фајлова са 2 додато и 0 уклоњено
  1. 2 0
      compiler/ncgcal.pas

+ 2 - 0
compiler/ncgcal.pas

@@ -889,6 +889,8 @@ implementation
                 watch out with procedure of object) }
               if right.location.loc in [LOC_REFERENCE,LOC_CREFERENCE] then
                 cg.a_load_ref_reg(current_asmdata.CurrAsmList,OS_ADDR,OS_ADDR,right.location.reference,pvreg)
+              else if right.location.loc in [LOC_REGISTER,LOC_CREGISTER] then
+                hlcg.a_load_reg_reg(current_asmdata.CurrAsmList,voidpointertype,voidpointertype,right.location.register,pvreg)
               else
                 hlcg.a_load_loc_reg(current_asmdata.CurrAsmList,voidpointertype,voidpointertype,right.location,pvreg);
               location_freetemp(current_asmdata.CurrAsmList,right.location);