================ @@ -231,8 +231,15 @@ #endif #if __has_attribute(retain) ---------------- MaskRay wrote: perhaps `defined(__clang__) && __has_attribute(retain)` and just don't check `__GNUC__` https://github.com/llvm/llvm-project/pull/133793