}
void
-asl_object_append(asl_object_private_t *obj, asl_object_private_t *newobj)
+asl_object_append(asl_object_private_t *obj, asl_object_private_t *newobj, void *addr)
{
- int type = ASL_TYPE_CLIENT;
+ uint32_t type = ASL_TYPE_CLIENT;
if (obj != NULL) type = obj->asl_type;
if (type >= ASL_TYPE_COUNT) return;
dispatch_once(&asl_object_once, ^{ _asl_object_init(); });
if (asl_jump[type]->append == NULL) return;
- return asl_jump[type]->append(obj, newobj);
+ return asl_jump[type]->append(obj, newobj, addr);
}
void
void
asl_append(asl_object_t a, asl_object_t b)
{
- asl_object_append((asl_object_private_t *)a, (asl_object_private_t *)b);
+ asl_object_append((asl_object_private_t *)a, (asl_object_private_t *)b, __builtin_return_address(0));
}
void
int
asl_send(asl_object_t a, asl_object_t b)
{
- asl_object_append((asl_object_private_t *)a, (asl_object_private_t *)b);
+ asl_object_append((asl_object_private_t *)a, (asl_object_private_t *)b, __builtin_return_address(0));
return 0;
}