Ver Fonte

* fix previous typeof change

peter há 22 anos atrás
pai
commit
ce220c874d
1 ficheiros alterados com 5 adições e 5 exclusões
  1. 5 5
      compiler/ncginl.pas

+ 5 - 5
compiler/ncginl.pas

@@ -260,6 +260,7 @@ implementation
                    begin
                      { deref class }
                      cg.a_load_ref_reg(exprasmlist,OS_ADDR,left.location.reference,hregister);
+                     cg.g_maybe_testself(exprasmlist,hregister);
                      { load VMT pointer }
                      reference_reset_base(hrefvmt,hregister,tobjectdef(left.resulttype.def).vmt_offset);
                      cg.a_load_ref_reg(exprasmlist,OS_ADDR,hrefvmt,hregister);
@@ -275,10 +276,6 @@ implementation
               else
                 internalerror(200301301);
             end;
-
-            { load VMT pointer }
-            inc(left.location.reference.offset,tobjectdef(left.resulttype.def).vmt_offset);
-            cg.a_load_ref_reg(exprasmlist,OS_ADDR,left.location.reference,hregister);
           end;
         { in sizeof load size }
         if inlinenumber=in_sizeof_x then
@@ -652,7 +649,10 @@ end.
 
 {
   $Log$
-  Revision 1.19  2003-01-30 21:46:57  peter
+  Revision 1.20  2003-01-31 22:47:27  peter
+    * fix previous typeof change
+
+  Revision 1.19  2003/01/30 21:46:57  peter
     * self fixes for static methods (merged)
 
   Revision 1.18  2003/01/08 18:43:56  daniel