Commit e50cff69 authored by stijn's avatar stijn
Browse files

py: Use a dummy type for referring to extern structs

Fixes msvc linker warnings about mismatching sizes between the mp_obj_fdfile_t
struct defined in file.c and the mp_uint_t declarations found in modsys.c and modbuiltins.c
parent 36cc84a2
...@@ -42,7 +42,7 @@ ...@@ -42,7 +42,7 @@
#endif #endif
#if MICROPY_PY_IO #if MICROPY_PY_IO
extern mp_uint_t mp_sys_stdout_obj; // type is irrelevant, just need pointer extern struct _mp_dummy_t mp_sys_stdout_obj; // type is irrelevant, just need pointer
#endif #endif
// args[0] is function from class body // args[0] is function from class body
......
...@@ -39,9 +39,9 @@ ...@@ -39,9 +39,9 @@
/// \module sys - system specific functions /// \module sys - system specific functions
// defined per port; type of these is irrelevant, just need pointer // defined per port; type of these is irrelevant, just need pointer
extern mp_uint_t mp_sys_stdin_obj; extern struct _mp_dummy_t mp_sys_stdin_obj;
extern mp_uint_t mp_sys_stdout_obj; extern struct _mp_dummy_t mp_sys_stdout_obj;
extern mp_uint_t mp_sys_stderr_obj; extern struct _mp_dummy_t mp_sys_stderr_obj;
/// \constant version - Python language version that this implementation conforms to, as a string /// \constant version - Python language version that this implementation conforms to, as a string
STATIC const MP_DEFINE_STR_OBJ(version_obj, "3.4.0"); STATIC const MP_DEFINE_STR_OBJ(version_obj, "3.4.0");
......
...@@ -74,7 +74,7 @@ void mp_obj_print_helper(void (*print)(void *env, const char *fmt, ...), void *e ...@@ -74,7 +74,7 @@ void mp_obj_print_helper(void (*print)(void *env, const char *fmt, ...), void *e
void mp_obj_print(mp_obj_t o_in, mp_print_kind_t kind) { void mp_obj_print(mp_obj_t o_in, mp_print_kind_t kind) {
#if MICROPY_PY_IO #if MICROPY_PY_IO
// defined per port; type of these is irrelevant, just need pointer // defined per port; type of these is irrelevant, just need pointer
extern mp_uint_t mp_sys_stdout_obj; extern struct _mp_dummy_t mp_sys_stdout_obj;
pfenv_t pfenv; pfenv_t pfenv;
pfenv.data = &mp_sys_stdout_obj; pfenv.data = &mp_sys_stdout_obj;
pfenv.print_strn = (void (*)(void *, const char *, mp_uint_t))mp_stream_write; pfenv.print_strn = (void (*)(void *, const char *, mp_uint_t))mp_stream_write;
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment