summaryrefslogtreecommitdiff
path: root/py/obj.h
diff options
context:
space:
mode:
authorDamien George <damien.p.george@gmail.com>2019-03-08 15:48:20 +1100
committerDamien George <damien.p.george@gmail.com>2019-03-08 15:53:04 +1100
commit02cc288edbc47a3b21b88b83f15990cc5a36ed23 (patch)
treecd32215cbd5e90d1b0e7cde6f0513b8ad53e9be0 /py/obj.h
parentf2ebee9cf12d26bf365d3e328a8a915a44802d04 (diff)
py: Add independent config for debugging sentinel object values.
The new compile-time option is MICROPY_DEBUG_MP_OBJ_SENTINELS, disabled by default. This is to allow finer control of whether this debugging feature is enabled or not (because, for example, this setting must be the same for mpy-cross and the MicroPython main code when using native code generation).
Diffstat (limited to 'py/obj.h')
-rw-r--r--py/obj.h10
1 files changed, 5 insertions, 5 deletions
diff --git a/py/obj.h b/py/obj.h
index e8575dbd1..4d42c43de 100644
--- a/py/obj.h
+++ b/py/obj.h
@@ -65,14 +65,14 @@ typedef struct _mp_obj_base_t mp_obj_base_t;
// For debugging purposes they are all different. For non-debug mode, we alias
// as many as we can to MP_OBJ_NULL because it's cheaper to load/compare 0.
-#ifdef NDEBUG
-#define MP_OBJ_NULL (MP_OBJ_FROM_PTR((void*)0))
-#define MP_OBJ_STOP_ITERATION (MP_OBJ_FROM_PTR((void*)0))
-#define MP_OBJ_SENTINEL (MP_OBJ_FROM_PTR((void*)4))
-#else
+#if MICROPY_DEBUG_MP_OBJ_SENTINELS
#define MP_OBJ_NULL (MP_OBJ_FROM_PTR((void*)0))
#define MP_OBJ_STOP_ITERATION (MP_OBJ_FROM_PTR((void*)4))
#define MP_OBJ_SENTINEL (MP_OBJ_FROM_PTR((void*)8))
+#else
+#define MP_OBJ_NULL (MP_OBJ_FROM_PTR((void*)0))
+#define MP_OBJ_STOP_ITERATION (MP_OBJ_FROM_PTR((void*)0))
+#define MP_OBJ_SENTINEL (MP_OBJ_FROM_PTR((void*)4))
#endif
// These macros/inline functions operate on objects and depend on the