diff options
author | Damien George <damien.p.george@gmail.com> | 2017-03-14 11:25:52 +1100 |
---|---|---|
committer | Damien George <damien.p.george@gmail.com> | 2017-03-14 11:52:05 +1100 |
commit | 25b6b62562e56fc2aaa78b72f5dfffc35bc2430c (patch) | |
tree | 53c96ac69466427aba0f7ca28e68e641e74c42ec /qemu-arm/test_main.c | |
parent | bcd5adc65e341180bd6411d7008ea36e225bddf9 (diff) | |
download | micropython-25b6b62562e56fc2aaa78b72f5dfffc35bc2430c.tar.gz micropython-25b6b62562e56fc2aaa78b72f5dfffc35bc2430c.zip |
qemu-arm: Move lexer constructors to within NLR handler block.
And raise an exception when mp_lexer_new_from_file is called.
Diffstat (limited to 'qemu-arm/test_main.c')
-rw-r--r-- | qemu-arm/test_main.c | 10 |
1 files changed, 3 insertions, 7 deletions
diff --git a/qemu-arm/test_main.c b/qemu-arm/test_main.c index 4d89930906..5c07d16076 100644 --- a/qemu-arm/test_main.c +++ b/qemu-arm/test_main.c @@ -11,7 +11,7 @@ #include "py/runtime.h" #include "py/stackctrl.h" #include "py/gc.h" -#include "py/repl.h" +#include "py/mperrno.h" #include "tinytest.h" #include "tinytest_macros.h" @@ -24,13 +24,9 @@ inline void do_str(const char *src) { gc_init(heap, (char*)heap + HEAP_SIZE); mp_init(); - mp_lexer_t *lex = mp_lexer_new_from_str_len(MP_QSTR__lt_stdin_gt_, src, strlen(src), 0); - if (lex == NULL) { - tt_abort_msg("Lexer initialization error"); - } - nlr_buf_t nlr; if (nlr_push(&nlr) == 0) { + 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); @@ -80,7 +76,7 @@ void gc_collect(void) { } mp_lexer_t *mp_lexer_new_from_file(const char *filename) { - return NULL; + mp_raise_OSError(MP_ENOENT); } mp_import_stat_t mp_import_stat(const char *path) { |