Differences From Artifact [e095ab78b7]:
- File src/macros.h — part of check-in [ce70e17b38] at 2012-01-05 00:56:18 on branch trunk — Update copyright. (user: js, size: 8607) [annotate] [blame] [check-ins using]
To Artifact [ef3c33f2fd]:
- File
src/macros.h
— part of check-in
[d989794cc2]
at
2012-03-21 17:33:21
on branch trunk
— objc_setProperty(): Use a signed char for copy.
No more abusing a poor BOOL... (user: js, size: 8729) [annotate] [blame] [check-ins using] [more...]
︙ | ︙ | |||
12 13 14 15 16 17 18 | * Public License, either version 2 or 3, which can be found in the file * LICENSE.GPLv2 or LICENSE.GPLv3 respectively included in the packaging of this * file. */ #import "OFObject.h" | < < < < < < < | 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | * Public License, either version 2 or 3, which can be found in the file * LICENSE.GPLv2 or LICENSE.GPLv3 respectively included in the packaging of this * file. */ #import "OFObject.h" #include <stddef.h> #include <stdint.h> #if defined(OF_APPLE_RUNTIME) || defined(OF_GNU_RUNTIME) # import <objc/runtime.h> #elif defined(OF_OLD_GNU_RUNTIME) # import <objc/objc-api.h> |
︙ | ︙ | |||
66 67 68 69 70 71 72 73 74 75 76 77 78 79 | #endif #ifdef OF_BIG_ENDIAN # define OF_ENDIANESS_NATIVE OF_ENDIANESS_BIG_ENDIAN #else # define OF_ENDIANESS_NATIVE OF_ENDIANESS_LITTLE_ENDIAN #endif #ifdef __GNUC__ # if defined(__amd64__) || defined(__x86_64__) # define OF_AMD64_ASM # elif defined(__i386__) # define OF_X86_ASM # elif defined(__ppc__) || defined(__PPC__) | > > > > > | 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 | #endif #ifdef OF_BIG_ENDIAN # define OF_ENDIANESS_NATIVE OF_ENDIANESS_BIG_ENDIAN #else # define OF_ENDIANESS_NATIVE OF_ENDIANESS_LITTLE_ENDIAN #endif /* Hopefully no arch needs more than 16 bytes padding */ #ifndef __BIGGEST_ALIGNMENT__ # define __BIGGEST_ALIGNMENT__ 16 #endif #ifdef __GNUC__ # if defined(__amd64__) || defined(__x86_64__) # define OF_AMD64_ASM # elif defined(__i386__) # define OF_X86_ASM # elif defined(__ppc__) || defined(__PPC__) |
︙ | ︙ | |||
97 98 99 100 101 102 103 104 105 106 107 108 109 110 | #ifndef _WIN32 # define OF_PATH_DELIMITER '/' #else # define OF_PATH_DELIMITER '\\' #endif #define OF_IVAR_OFFSET(ivar) ((intptr_t)&ivar - (intptr_t)self) #define OF_GETTER(ivar, atomic) \ return objc_getProperty(self, _cmd, OF_IVAR_OFFSET(ivar), atomic); #define OF_SETTER(ivar, value, atomic, copy) \ objc_setProperty(self, _cmd, OF_IVAR_OFFSET(ivar), value, atomic, copy); static OF_INLINE uint16_t OF_CONST_FUNC | > > > | 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 | #ifndef _WIN32 # define OF_PATH_DELIMITER '/' #else # define OF_PATH_DELIMITER '\\' #endif extern id objc_getProperty(id, SEL, ptrdiff_t, BOOL); extern void objc_setProperty(id, SEL, ptrdiff_t, id, BOOL, signed char); #define OF_IVAR_OFFSET(ivar) ((intptr_t)&ivar - (intptr_t)self) #define OF_GETTER(ivar, atomic) \ return objc_getProperty(self, _cmd, OF_IVAR_OFFSET(ivar), atomic); #define OF_SETTER(ivar, value, atomic, copy) \ objc_setProperty(self, _cmd, OF_IVAR_OFFSET(ivar), value, atomic, copy); static OF_INLINE uint16_t OF_CONST_FUNC |
︙ | ︙ |