summaryrefslogtreecommitdiffstatshomepage
path: root/py/objfloat.c
diff options
context:
space:
mode:
authorDamien George <damien.p.george@gmail.com>2014-03-21 11:45:46 +0000
committerDamien George <damien.p.george@gmail.com>2014-03-21 11:45:46 +0000
commit6e48f7fa856e4acaf085dfc8876c4e3772d979c2 (patch)
tree46c65f64490eae2818fbf9bf334a558453be9e88 /py/objfloat.c
parentc06ea7abf249765bf93595fc42656eed585d7a47 (diff)
downloadmicropython-6e48f7fa856e4acaf085dfc8876c4e3772d979c2.tar.gz
micropython-6e48f7fa856e4acaf085dfc8876c4e3772d979c2.zip
py: Allow 'complex()' to take a string as first argument.
Diffstat (limited to 'py/objfloat.c')
-rw-r--r--py/objfloat.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/py/objfloat.c b/py/objfloat.c
index 65dafa607e..c51e13e7a1 100644
--- a/py/objfloat.c
+++ b/py/objfloat.c
@@ -38,10 +38,12 @@ STATIC mp_obj_t float_make_new(mp_obj_t type_in, uint n_args, uint n_kw, const m
// a string, parse it
uint l;
const char *s = mp_obj_str_get_data(args[0], &l);
- return mp_parse_num_decimal(s, l, false);
+ return mp_parse_num_decimal(s, l, false, false);
} else if (MP_OBJ_IS_TYPE(args[0], &mp_type_float)) {
+ // a float, just return it
return args[0];
} else {
+ // something else, try to cast it to a float
return mp_obj_new_float(mp_obj_get_float(args[0]));
}