Differences From Artifact [a7f5437671]:
- File src/runtime/class.m — part of check-in [d5236bb40e] at 2012-04-21 13:47:49 on branch runtime — Ensure all selectors are registered before load. (user: js, size: 10935) [annotate] [blame] [check-ins using]
To Artifact [886ace82f1]:
- File
src/runtime/class.m
— part of check-in
[8525f9600e]
at
2012-04-22 15:56:13
on branch runtime
— Add class_registerAlias_np().
It's required by Clang for @compatibility_alias, even with the fragile
ABI. This might be a bug in Clang, as _np means non-portable and Clang
should not just emit references to such symbols. (user: js, size: 11088) [annotate] [blame] [check-ins using]
︙ | ︙ | |||
33 34 35 36 37 38 39 40 41 42 43 44 45 46 | register_class(struct objc_abi_class *cls) { if (classes == NULL) classes = objc_hashtable_alloc(2); objc_hashtable_set(classes, cls->name, cls); } static void register_selectors(struct objc_abi_class *cls) { struct objc_abi_method_list *ml; unsigned int i; | > > > > > > > > > > > | 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 | register_class(struct objc_abi_class *cls) { if (classes == NULL) classes = objc_hashtable_alloc(2); objc_hashtable_set(classes, cls->name, cls); } BOOL class_registerAlias_np(Class cls, const char *name) { if (classes == NULL) return NO; objc_hashtable_set(classes, name, cls); return YES; } static void register_selectors(struct objc_abi_class *cls) { struct objc_abi_method_list *ml; unsigned int i; |
︙ | ︙ |