فهرست منبع

* experimental ie fix for dispinterfaces with rtti

git-svn-id: trunk@6770 -
florian 18 سال پیش
والد
کامیت
60c5179366
1فایلهای تغییر یافته به همراه3 افزوده شده و 2 حذف شده
  1. 3 2
      compiler/ncgrtti.pas

+ 3 - 2
compiler/ncgrtti.pas

@@ -692,10 +692,10 @@ implementation
               longint([
 {$endif USE_PACKSET1}
                 TCompilerIntfFlag(ord(ifHasGuid)*ord(assigned(def.iidguid))),
-                TCompilerIntfFlag(ord(ifHasStrGUID)*ord(assigned(def.iidstr)))
+                TCompilerIntfFlag(ord(ifHasStrGUID)*ord(assigned(def.iidstr))),
+                TCompilerIntfFlag(ord(ifDispInterface)*ord(def.objecttype=odt_dispinterface))
               ])
               {
-              ifDispInterface,
               ifDispatch, }
               ));
             if (tf_requires_proper_alignment in target_info.flags) then
@@ -735,6 +735,7 @@ implementation
                current_asmdata.asmlists[al_rtti].concat(Tai_const.Create_8bit(tkclass));
              odt_object:
                current_asmdata.asmlists[al_rtti].concat(Tai_const.Create_8bit(tkobject));
+             odt_dispinterface,
              odt_interfacecom:
                current_asmdata.asmlists[al_rtti].concat(Tai_const.Create_8bit(tkinterface));
              odt_interfacecorba: