ObjFW  Check-in [8525f9600e]

Overview
Comment: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.

Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | runtime
Files: files | file ages | folders
SHA3-256: 8525f9600e748a5daa70a607c80a04b679a46f98ce7711b071193aa962017189
User & Date: js on 2012-04-22 15:56:13
Other Links: branch diff | manifest | tags
Context
2012-04-22
16:02
Add --enable-runtime. check-in: 5ca3d6302a user: js tags: runtime
15:56
Add class_registerAlias_np(). check-in: 8525f9600e user: js tags: runtime
12:15
A few casts to make Clang happy. check-in: e1586f4dce user: js tags: runtime
Changes

Modified src/runtime/class.m from [a7f5437671] to [886ace82f1].

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;