From 3b6f7b95eb487fc927a3bc4644b1941cfbe2612b Mon Sep 17 00:00:00 2001 From: Paul Sokolovsky Date: Fri, 20 Jun 2014 01:48:35 +0300 Subject: py: Separate MICROPY_PY_BUILTINS_COMPLEX from MICROPY_PY_BUILTINS_FLOAT. One thing is wanting to do 1 / 2 and get something else but 0, and quite another - doing rocket science ;-). --- py/parsenum.c | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'py/parsenum.c') diff --git a/py/parsenum.c b/py/parsenum.c index 1c1868ae0..36b069050 100644 --- a/py/parsenum.c +++ b/py/parsenum.c @@ -35,6 +35,7 @@ #include "parsenumbase.h" #include "parsenum.h" #include "smallint.h" +#include "runtime.h" #if MICROPY_PY_BUILTINS_FLOAT #include @@ -252,10 +253,15 @@ mp_obj_t mp_parse_num_decimal(const char *str, uint len, bool allow_imag, bool f } // return the object +#if MICROPY_PY_BUILTINS_COMPLEX if (imag) { return mp_obj_new_complex(0, dec_val); } else if (force_complex) { return mp_obj_new_complex(dec_val, 0); +#else + if (imag || force_complex) { + mp_not_implemented("complex values not supported"); +#endif } else { return mp_obj_new_float(dec_val); } -- cgit v1.2.3