Index: Doxyfile ================================================================== --- Doxyfile +++ Doxyfile @@ -9,13 +9,14 @@ PREDEFINED = OF_HAVE_PROPERTIES \ OF_HAVE_OPTIONAL_PROTOCOLS \ OF_HAVE_BLOCKS \ OF_HAVE_THREADS \ OF_SENTINEL \ + OF_REQUIRES_SUPER \ OF_RETURNS_RETAINED \ OF_RETURNS_NOT_RETAINED \ OF_RETURNS_INNER_POINTER \ OF_CONSUMED \ OF_WEAK_UNAVAILABLE MACRO_EXPANSION = YES EXPAND_ONLY_PREDEF = YES IGNORE_PREFIX = OF of_ Index: src/OFObject.h ================================================================== --- src/OFObject.h +++ src/OFObject.h @@ -45,10 +45,14 @@ #endif #ifndef __has_feature # define __has_feature(x) 0 #endif + +#ifndef __has_attribute +# define __has_attribute(x) 0 +#endif #ifdef __GNUC__ # define __GCC_VERSION__ (__GNUC__ * 100 + __GNUC_MINOR__) #else # define __GCC_VERSION__ 0 @@ -85,10 +89,16 @@ #if defined(__clang__) || __GCC_VERSION__ >= 406 # define OF_SENTINEL __attribute__((sentinel)) #else # define OF_SENTINEL #endif + +#if __has_attribute(objc_requires_super) +# define OF_REQUIRES_SUPER __attribute__((objc_requires_super)) +#else +# define OF_REQUIRES_SUPER +#endif #ifdef OF_APPLE_RUNTIME # if defined(__x86_64__) || defined(__i386__) || defined(__arm__) || \ defined(__ppc__) # define OF_HAVE_FORWARDING_TARGET_FOR_SELECTOR Index: src/OFThread.h ================================================================== --- src/OFThread.h +++ src/OFThread.h @@ -176,11 +176,11 @@ * @brief This routine is exectued when the thread's main method has finished * executing or terminate has been called. * * @note Be sure to call [super handleTermination]! */ -- (void)handleTermination; +- (void)handleTermination OF_REQUIRES_SUPER; /*! * @brief Starts the thread. */ - (void)start;