Skip to content

Commit 6efeb3c

Browse files
committed
Fix is_invokable op.
1 parent 1427edb commit 6efeb3c

File tree

1 file changed

+3
-1
lines changed

1 file changed

+3
-1
lines changed

src/ops/nqp.ops

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1433,7 +1433,9 @@ is not a 6model object must is otherwise marked invokable.
14331433
inline op is_invokable(out INT, in PMC) :base_core {
14341434
if ($2->vtable->base_type == smo_id) {
14351435
PMC **vt = STABLE($2)->parrot_vtable_mapping;
1436-
$1 = vt && !PMC_IS_NULL(vt[PARROT_VTABLE_SLOT_INVOKE]);
1436+
AttributeIdentifier *vth = STABLE($2)->parrot_vtable_handler_mapping;
1437+
$1 = (vt && !PMC_IS_NULL(vt[PARROT_VTABLE_SLOT_INVOKE])) ||
1438+
(vth && !PMC_IS_NULL(vth[PARROT_VTABLE_SLOT_INVOKE].class_handle));
14371439
}
14381440
else {
14391441
$1 = VTABLE_does(interp, $2, Parrot_str_new(interp, "invokable", 0));

0 commit comments

Comments
 (0)