From: Stefan Csomor Date: Wed, 13 Jun 2012 18:42:51 +0000 (+0000) Subject: supporting clang memory management annotations X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/cc510e136407469a053f3d01b83c1f8a2783e1e6 supporting clang memory management annotations git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71742 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/include/wx/osx/core/private.h b/include/wx/osx/core/private.h index e1b64182ed..9d819143dd 100644 --- a/include/wx/osx/core/private.h +++ b/include/wx/osx/core/private.h @@ -32,6 +32,29 @@ #define wxOSX_10_6_AND_LATER(x) #endif +// common defs for clang analyzer support + +#ifndef __has_feature // Optional. + #define __has_feature(x) 0 // Compatibility with non-clang compilers. +#endif + +#ifndef NS_RETURNS_RETAINED + #if __has_feature(attribute_ns_returns_retained) + #define NS_RETURNS_RETAINED __attribute__((ns_returns_retained)) + #else + #define NS_RETURNS_RETAINED + #endif +#endif + +#ifndef CF_RETURNS_RETAINED + #if __has_feature(attribute_cf_returns_retained) + #define CF_RETURNS_RETAINED __attribute__((cf_returns_retained)) + #else + #define CF_RETURNS_RETAINED + #endif +#endif + + #if ( !wxUSE_GUI && !wxOSX_USE_IPHONE ) || wxOSX_USE_COCOA_OR_CARBON // Carbon functions are currently still used in wxOSX/Cocoa too (including