2424 * THE SOFTWARE.
2525 */
2626
27+ #include "py/mpstate.h"
2728#include "py/nlr.h"
2829#include "py/builtin.h"
2930#include "py/objlist.h"
@@ -42,13 +43,6 @@ extern mp_uint_t mp_sys_stdin_obj;
4243extern mp_uint_t mp_sys_stdout_obj ;
4344extern mp_uint_t mp_sys_stderr_obj ;
4445
45- // These two lists must be initialised per port (after the call to mp_init).
46- // TODO document these properly, they aren't constants or functions...
47- /// \constant path - a mutable list of directories to search for imported modules
48- mp_obj_list_t mp_sys_path_obj ;
49- /// \constant argv - a mutable list of arguments this program started with
50- mp_obj_list_t mp_sys_argv_obj ;
51-
5246/// \constant version - Python language version that this implementation conforms to, as a string
5347STATIC const MP_DEFINE_STR_OBJ (version_obj , "3.4 .0 ");
5448
@@ -99,8 +93,8 @@ MP_DEFINE_CONST_FUN_OBJ_VAR_BETWEEN(mp_sys_print_exception_obj, 1, 2, mp_sys_pri
9993STATIC const mp_map_elem_t mp_module_sys_globals_table [] = {
10094 { MP_OBJ_NEW_QSTR (MP_QSTR___name__ ), MP_OBJ_NEW_QSTR (MP_QSTR_sys ) },
10195
102- { MP_OBJ_NEW_QSTR (MP_QSTR_path ), (mp_obj_t )& mp_sys_path_obj },
103- { MP_OBJ_NEW_QSTR (MP_QSTR_argv ), (mp_obj_t )& mp_sys_argv_obj },
96+ { MP_OBJ_NEW_QSTR (MP_QSTR_path ), (mp_obj_t )& MP_STATE_VM ( mp_sys_path_obj ) },
97+ { MP_OBJ_NEW_QSTR (MP_QSTR_argv ), (mp_obj_t )& MP_STATE_VM ( mp_sys_argv_obj ) },
10498 { MP_OBJ_NEW_QSTR (MP_QSTR_version ), (mp_obj_t )& version_obj },
10599 { MP_OBJ_NEW_QSTR (MP_QSTR_version_info ), (mp_obj_t )& mp_sys_version_info_obj },
106100#ifdef MICROPY_PY_SYS_PLATFORM
0 commit comments