diff options
author | Koichi Sasada <ko1@atdot.net> | 2019-07-15 11:27:38 +0900 |
---|---|---|
committer | Koichi Sasada <ko1@atdot.net> | 2019-07-15 11:30:34 +0900 |
commit | c23e5976744f1984b309f0af724fbd8ddea2c56a (patch) | |
tree | 48392ced4a8bc32e3422ce43a0a9ee39fb537a31 | |
parent | d02f2fc3e2b4d14793c3b25079787a8972ce49c8 (diff) |
respect RUBY_DEBUG.
see RUBY_DEBUG for each debug options.
-rw-r--r-- | hash.c | 4 | ||||
-rw-r--r-- | internal.h | 2 | ||||
-rw-r--r-- | vm_core.h | 7 |
3 files changed, 8 insertions, 5 deletions
@@ -394,9 +394,10 @@ ar_empty_entry(ar_table_entry *entry) #define RHASH_TYPE(hash) (RHASH_AR_TABLE_P(hash) ? &objhash : RHASH_ST_TABLE(hash)->type) #define RHASH_AR_TABLE_REF(hash, n) (&RHASH_AR_TABLE(hash)->entries[n]) +#define HASH_ASSERT(expr) RUBY_ASSERT_MESG_WHEN(1, expr, #expr) + #if HASH_DEBUG #define hash_verify(hash) hash_verify_(hash, __FILE__, __LINE__) -#define HASH_ASSERT(expr) RUBY_ASSERT_MESG_WHEN(1, expr, #expr) void rb_hash_dump(VALUE hash) @@ -471,7 +472,6 @@ hash_verify_(VALUE hash, const char *file, int line) #else #define hash_verify(h) ((void)0) -#define HASH_ASSERT(e) ((void)0) #endif static inline int diff --git a/internal.h b/internal.h index 0539d49f5b..fb184e290c 100644 --- a/internal.h +++ b/internal.h @@ -1302,7 +1302,7 @@ VALUE rb_gvar_defined(struct rb_global_entry *); /* array.c */ #ifndef ARRAY_DEBUG -#define ARRAY_DEBUG 0 +#define ARRAY_DEBUG (0+RUBY_DEBUG) #endif #ifdef ARRAY_DEBUG @@ -17,7 +17,11 @@ * 1: enable local assertions. */ #ifndef VM_CHECK_MODE -#define VM_CHECK_MODE 0 + +// respect RUBY_DUBUG: if given n is 0, then use RUBY_DEBUG +#define N_OR_RUBY_DEBUG(n) (((n) > 0) ? (n) : RUBY_DEBUG) + +#define VM_CHECK_MODE N_OR_RUBY_DEBUG(0) #endif /** @@ -46,7 +50,6 @@ #if VM_CHECK_MODE > 0 #define VM_ASSERT(expr) RUBY_ASSERT_MESG_WHEN(VM_CHECK_MODE > 0, expr, #expr) - #define VM_UNREACHABLE(func) rb_bug(#func ": unreachable") #else |