diff options
author | Damien George <damien.p.george@gmail.com> | 2019-08-23 11:20:50 +1000 |
---|---|---|
committer | Damien George <damien.p.george@gmail.com> | 2019-08-28 12:47:58 +1000 |
commit | af20c2ead3e9bb397fdf89e316aa78b56f165013 (patch) | |
tree | 99cc8c752d6347dc9f0d6dccb6e11384626bd278 /lib | |
parent | 8e3e05761e1143a2502c7eca07c1b22bac192c84 (diff) | |
download | micropython-af20c2ead3e9bb397fdf89e316aa78b56f165013.tar.gz micropython-af20c2ead3e9bb397fdf89e316aa78b56f165013.zip |
py: Add global default_emit_opt variable to make emit kind persistent.
mp_compile no longer takes an emit_opt argument, rather this setting is now
provided by the global default_emit_opt variable.
Now, when -X emit=native is passed as a command-line option, the emitter
will be set for all compiled modules (included imports), not just the
top-level script.
In the future there could be a way to also set this variable from a script.
Fixes issue #4267.
Diffstat (limited to 'lib')
-rw-r--r-- | lib/upytesthelper/upytesthelper.c | 2 | ||||
-rw-r--r-- | lib/utils/pyexec.c | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/lib/upytesthelper/upytesthelper.c b/lib/upytesthelper/upytesthelper.c index d28c5b9cc0..326172be65 100644 --- a/lib/upytesthelper/upytesthelper.c +++ b/lib/upytesthelper/upytesthelper.c @@ -101,7 +101,7 @@ void upytest_execute_test(const char *src) { mp_lexer_t *lex = mp_lexer_new_from_str_len(MP_QSTR__lt_stdin_gt_, src, strlen(src), 0); qstr source_name = lex->source_name; mp_parse_tree_t parse_tree = mp_parse(lex, MP_PARSE_FILE_INPUT); - mp_obj_t module_fun = mp_compile(&parse_tree, source_name, MP_EMIT_OPT_NONE, false); + mp_obj_t module_fun = mp_compile(&parse_tree, source_name, false); mp_call_function_0(module_fun); nlr_pop(); } else { diff --git a/lib/utils/pyexec.c b/lib/utils/pyexec.c index adb16937d0..851b026b6f 100644 --- a/lib/utils/pyexec.c +++ b/lib/utils/pyexec.c @@ -89,7 +89,7 @@ STATIC int parse_compile_execute(const void *source, mp_parse_input_kind_t input // source is a lexer, parse and compile the script qstr source_name = lex->source_name; mp_parse_tree_t parse_tree = mp_parse(lex, input_kind); - module_fun = mp_compile(&parse_tree, source_name, MP_EMIT_OPT_NONE, exec_flags & EXEC_FLAG_IS_REPL); + module_fun = mp_compile(&parse_tree, source_name, exec_flags & EXEC_FLAG_IS_REPL); #else mp_raise_msg(&mp_type_RuntimeError, "script compilation not supported"); #endif |