instead of a macro, this could call a static function like `msgpack_rpc_to_array(msgpack_object *obj, void *arg, size_t arg_length)`.