mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-21 13:09:32 +02:00
* apparently, Darwin/x86-64 also uses an opaque ISA pointer on OS X 10.11
-> assume it is always the case for non-fragile ABI platforms (mantis #29667) git-svn-id: trunk@33112 -
This commit is contained in:
parent
94c0938edd
commit
356a5aff05
@ -252,10 +252,11 @@ implementation
|
||||
if (is_objc_class_or_protocol(left.resultdef) or
|
||||
is_objcclassref(left.resultdef)) then
|
||||
begin
|
||||
if target_info.system=system_aarch64_darwin then
|
||||
{ on non-fragile ABI platforms, the ISA pointer may be opaque
|
||||
and we must call Object_getClass to obtain the real ISA
|
||||
pointer }
|
||||
if target_info.system in systems_objc_nfabi then
|
||||
begin
|
||||
{ on Darwin/AArch64, the isa field is opaque and we must
|
||||
call Object_getClass to obtain the actual ISA pointer }
|
||||
result:=ccallnode.createinternfromunit('OBJC','OBJECT_GETCLASS',ccallparanode.create(left,nil));
|
||||
inserttypeconv_explicit(result,resultdef);
|
||||
end
|
||||
|
Loading…
Reference in New Issue
Block a user