diff options
author | Damien George <damien.p.george@gmail.com> | 2014-03-21 11:45:46 +0000 |
---|---|---|
committer | Damien George <damien.p.george@gmail.com> | 2014-03-21 11:45:46 +0000 |
commit | 6e48f7fa856e4acaf085dfc8876c4e3772d979c2 (patch) | |
tree | 46c65f64490eae2818fbf9bf334a558453be9e88 /py/objfloat.c | |
parent | c06ea7abf249765bf93595fc42656eed585d7a47 (diff) | |
download | micropython-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.c | 4 |
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])); } |