diff --git a/py/mpconfig.h b/py/mpconfig.h index 58aa2ce0c0..6de184a9c4 100644 --- a/py/mpconfig.h +++ b/py/mpconfig.h @@ -909,9 +909,8 @@ typedef double mp_float_t; #define UINT_FMT "%lu" #define INT_FMT "%ld" #elif defined(_WIN64) -#include -#define UINT_FMT "%"PRIu64 -#define INT_FMT "%"PRId64 +#define UINT_FMT "%llu" +#define INT_FMT "%lld" #else // Archs where mp_int_t == int #define UINT_FMT "%u" diff --git a/py/mpprint.c b/py/mpprint.c index 30bbe3c6d9..19575f8a8a 100644 --- a/py/mpprint.c +++ b/py/mpprint.c @@ -529,7 +529,7 @@ int mp_vprintf(const mp_print_t *print, const char *fmt, va_list args) { // Because 'l' is eaten above, another 'l' means %ll. We need to support // this length specifier for OBJ_REPR_D (64-bit NaN boxing). // TODO Either enable this unconditionally, or provide a specific config var. - #if MICROPY_OBJ_REPR == MICROPY_OBJ_REPR_D + #if (MICROPY_OBJ_REPR == MICROPY_OBJ_REPR_D) || defined(_WIN64) case 'l': { unsigned long long int arg_value = va_arg(args, unsigned long long int); ++fmt;