Commit 82e61bdc authored by xyb's avatar xyb
Browse files

support int(str, basbase)

parent c178ea47
......@@ -158,7 +158,7 @@ machine_int_t mp_obj_get_int_base(mp_obj_t arg, mp_obj_t base_arg) {
if (base_arg == 0) {
value = qstr_str(mp_obj_str_get(arg));
return (machine_int_t)strtonum(value, 0);
} else if (MP_OBJ_IS_TYPE(base_arg, &int_type)) {
} else if (MP_OBJ_IS_SMALL_INT(base_arg)) {
base = MP_OBJ_SMALL_INT_VALUE(base_arg);
value = qstr_str(mp_obj_str_get(arg));
return (machine_int_t)strtonum(value, base);
......
......@@ -24,7 +24,7 @@ static mp_obj_t int_make_new(mp_obj_t type_in, int n_args, const mp_obj_t *args)
case 2:
// TODO make args[0] and args[1] correct
return MP_OBJ_NEW_SMALL_INT(mp_obj_get_int_base(args[0], args[1]));
return MP_OBJ_NEW_SMALL_INT(mp_obj_get_int_base(args[1], args[0]));
default:
nlr_jump(mp_obj_new_exception_msg_1_arg(MP_QSTR_TypeError, "int takes at most 2 arguments, %d given", (void*)(machine_int_t)n_args));
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment