瀏覽代碼

llvm:a fix opaque ptr IR for Objective-C protocol

Also for interfacecom functions and properties. Fixes test/tobjc9 and
test/tobjc9b with LLVM 15.0+
Jonas Maebe 2 年之前
父節點
當前提交
0b6942de8a
共有 1 個文件被更改,包括 4 次插入1 次删除
  1. 4 1
      compiler/llvm/llvmdef.pas

+ 4 - 1
compiler/llvm/llvmdef.pas

@@ -666,7 +666,10 @@ implementation
                 begin
                   { opaque for now }
                   if not(lef_removeouterpointer in flags) then
-                    encodedstr:=encodedstr+'i8*'
+                    if (llvmflag_opaque_ptr in llvmversion_properties[current_settings.llvmversion]) then
+                      encodedstr:=encodedstr+'ptr'
+                    else
+                      encodedstr:=encodedstr+'i8*'
                   else
                     encodedstr:=encodedstr+'i8'
                 end;