diff options
Diffstat (limited to 'stm/main.c')
-rw-r--r-- | stm/main.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/stm/main.c b/stm/main.c index 4b6aaf76f9..c49fa42ff9 100644 --- a/stm/main.c +++ b/stm/main.c @@ -421,6 +421,7 @@ void do_repl(void) { qstr parse_exc_id; const char *parse_exc_msg; mp_parse_node_t pn = mp_parse(lex, MP_PARSE_SINGLE_INPUT, &parse_exc_id, &parse_exc_msg); + qstr source_name = mp_lexer_source_name(lex); if (pn == MP_PARSE_NODE_NULL) { // parse error @@ -430,7 +431,7 @@ void do_repl(void) { } else { // parse okay mp_lexer_free(lex); - mp_obj_t module_fun = mp_compile(pn, true); + mp_obj_t module_fun = mp_compile(pn, source_name, true); if (module_fun != mp_const_none) { nlr_buf_t nlr; uint32_t start = sys_tick_counter; @@ -465,6 +466,7 @@ bool do_file(const char *filename) { qstr parse_exc_id; const char *parse_exc_msg; mp_parse_node_t pn = mp_parse(lex, MP_PARSE_FILE_INPUT, &parse_exc_id, &parse_exc_msg); + qstr source_name = mp_lexer_source_name(lex); if (pn == MP_PARSE_NODE_NULL) { // parse error @@ -476,7 +478,7 @@ bool do_file(const char *filename) { mp_lexer_free(lex); - mp_obj_t module_fun = mp_compile(pn, false); + mp_obj_t module_fun = mp_compile(pn, source_name, false); if (module_fun == mp_const_none) { return false; } @@ -1095,7 +1097,7 @@ soft_reset: printf("pars;al=%u\n", m_get_total_bytes_allocated()); sys_tick_delay_ms(1000); //parse_node_show(pn, 0); - mp_obj_t module_fun = mp_compile(pn, false); + mp_obj_t module_fun = mp_compile(pn, 0, false); printf("comp;al=%u\n", m_get_total_bytes_allocated()); sys_tick_delay_ms(1000); |