瀏覽代碼

Fix -CR after the recent VMT changes.
* tobjectvmt: parent needs to be ppointer for 3.1.1
* fpc_check_object_ext: correctly determine parent VMT

git-svn-id: trunk@34194 -

svenbarth 9 年之前
父節點
當前提交
59303c5113
共有 1 個文件被更改,包括 8 次插入1 次删除
  1. 8 1
      rtl/inc/generic.inc

+ 8 - 1
rtl/inc/generic.inc

@@ -747,7 +747,7 @@ type
   pobjectvmt=^tobjectvmt;
   tobjectvmt=record
     size,msize:sizeuint;
-    parent:pointer;
+    parent:{$ifdef VER3_0}pointer{$else}ppointer{$endif};
   end;
 
 {$ifndef FPC_SYSTEM_HAS_FPC_HELP_CONSTRUCTOR}
@@ -852,7 +852,14 @@ begin
      if vmt=expvmt then
        exit
      else
+       {$ifdef VER3_0}
        vmt:=pobjectvmt(vmt)^.parent;
+       {$else VER3_0}
+       if assigned(pobjectvmt(vmt)^.parent) then
+         vmt:=pobjectvmt(vmt)^.parent^
+       else
+         exit;
+       {$endif}
    RunError(219);
 end;
 {$endif not FPC_SYSTEM_HAS_FPC_CHECK_OBJECT_EXT}