@@ -225,6 +225,8 @@ make_str_result(PARROT_INTERP, PMC *type, INTVAL ret_type, char *cstring) {
225
225
case DYNCALL_ARG_UTF16STR:
226
226
value = Parrot_str_new_init(interp, cstring, strlen(cstring), Parrot_utf16_encoding_ptr, 0);
227
227
break;
228
+ default:
229
+ Parrot_ex_throw_from_c_args(interp, NULL, EXCEPTION_INVALID_OPERATION, "Internal error: unhandled encoding");
228
230
}
229
231
result = REPR(type)->allocate(interp, STABLE(type));
230
232
REPR(result)->initialize(interp, STABLE(result), OBJECT_BODY(result));
@@ -610,6 +612,8 @@ inline op nqp_native_call(out PMC, in PMC, in PMC, in PMC) :base_core {
610
612
case DYNCALL_ARG_CALLBACK:
611
613
/* XXX Above are all still todo. */
612
614
dcArgPointer(vm, NULL);
615
+ default:
616
+ Parrot_ex_throw_from_c_args(interp, NULL, EXCEPTION_INVALID_OPERATION, "Internal error: unhandled dyncall argument type");
613
617
}
614
618
}
615
619
@@ -659,6 +663,8 @@ inline op nqp_native_call(out PMC, in PMC, in PMC, in PMC) :base_core {
659
663
/* XXX Above are all still todo. */
660
664
dcCallPointer(vm, body->entry_point);
661
665
result = $2;
666
+ default:
667
+ Parrot_ex_throw_from_c_args(interp, NULL, EXCEPTION_INVALID_OPERATION, "Internal error: unhandled dyncall return type");
662
668
}
663
669
664
670
for (i = 0; i < body->num_args; i++) {
0 commit comments