static JSValueRef objc_registerClassPair_(JSContextRef context, JSObjectRef object, JSObjectRef _this, size_t count, const JSValueRef arguments[], JSValueRef *exception) {
CYTry {
+ if (count != 1)
+ @throw [NSException exceptionWithName:NSInvalidArgumentException reason:@"incorrect number of arguments to objc_registerClassPair" userInfo:nil];
CYPool pool;
- Class _class(CYCastNSObject(pool, context, object));
+ Class _class(CYCastNSObject(pool, context, arguments[0]));
$objc_registerClassPair(_class);
return CYJSUndefined(context);
} CYCatch
type->data.data.type = NULL;
} else {
type->data.data.type = Parse_(pool, name, eos, named, callback);
- if (type->data.data.type->primitive == void_P)
- type->data.data.type = NULL;
+ sig::Type *&target(type->data.data.type);
+ if (target != NULL && target->primitive == void_P)
+ target = NULL;
}
break;