diff --git a/py/binary.c b/py/binary.c
index b28eb6426c6ee41a382862fb58829fa93e2ed518..f8daa3e6fda6337a96349e3443021a7c4bd439cb 100644
--- a/py/binary.c
+++ b/py/binary.c
@@ -63,7 +63,7 @@ mp_obj_t mp_binary_get_val(char typecode, void *p, int index) {
         case 'I':
         case 'L':
             return mp_obj_new_int_from_uint(((uint32_t*)p)[index]);
-#if MICROPY_LONGINT_IMPL != MICROPY_LONGINT_IMPL_NONE
+#if MICROPY_LONGINT_IMPL == MICROPY_LONGINT_IMPL_LONGLONG
         case 'q':
         case 'Q':
             // TODO: Explode API more to cover signedness
diff --git a/py/objint.h b/py/objint.h
index df3b81b79f9cef913d5758fa047af4f23716dec4..29d8cf9501bbe1b456f834e01e87df2f2d5068ba 100644
--- a/py/objint.h
+++ b/py/objint.h
@@ -1,6 +1,6 @@
 typedef struct _mp_obj_int_t {
     mp_obj_base_t base;
-#if MICROPY_LONGINT_IMPL != MICROPY_LONGINT_IMPL_NONE
+#if MICROPY_LONGINT_IMPL == MICROPY_LONGINT_IMPL_LONGLONG
     mp_longint_impl_t val;
 #endif
 } mp_obj_int_t;
@@ -9,6 +9,6 @@ void int_print(void (*print)(void *env, const char *fmt, ...), void *env, mp_obj
 mp_obj_t int_unary_op(int op, mp_obj_t o_in);
 mp_obj_t int_binary_op(int op, mp_obj_t lhs_in, mp_obj_t rhs_in);
 
-#if MICROPY_LONGINT_IMPL != MICROPY_LONGINT_IMPL_NONE
+#if MICROPY_LONGINT_IMPL == MICROPY_LONGINT_IMPL_LONGLONG
 mp_obj_t mp_obj_new_int_from_ll(long long val);
 #endif