From f3cc1f9a703ab56f5601d6c7b6a964333b668c17 Mon Sep 17 00:00:00 2001 From: Nobuyoshi Nakada Date: Wed, 31 Jan 2024 15:11:59 +0900 Subject: [PATCH] Show actual imemo type when unexpected type --- vm_core.h | 4 ++-- vm_method.c | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/vm_core.h b/vm_core.h index c1508736bd..448e17ba52 100644 --- a/vm_core.h +++ b/vm_core.h @@ -56,12 +56,12 @@ #define RVALUE_SIZE (sizeof(struct RBasic) + sizeof(VALUE[RBIMPL_RVALUE_EMBED_LEN_MAX])) #if VM_CHECK_MODE > 0 -#define VM_ASSERT(expr) RUBY_ASSERT_MESG_WHEN(VM_CHECK_MODE > 0, expr, #expr) +#define VM_ASSERT(/*expr, */...) RUBY_ASSERT_WHEN(VM_CHECK_MODE > 0, __VA_ARGS__) #define VM_UNREACHABLE(func) rb_bug(#func ": unreachable") #define RUBY_ASSERT_CRITICAL_SECTION #define RUBY_DEBUG_THREAD_SCHEDULE() rb_thread_schedule() #else -#define VM_ASSERT(expr) ((void)0) +#define VM_ASSERT(/*expr, */...) ((void)0) #define VM_UNREACHABLE(func) UNREACHABLE #define RUBY_DEBUG_THREAD_SCHEDULE() #endif diff --git a/vm_method.c b/vm_method.c index 1f14d82bcd..a4d0a9f411 100644 --- a/vm_method.c +++ b/vm_method.c @@ -118,7 +118,7 @@ rb_vm_mtbl_dump(const char *msg, VALUE klass, ID target_mid) static inline void vm_cme_invalidate(rb_callable_method_entry_t *cme) { - VM_ASSERT(IMEMO_TYPE_P(cme, imemo_ment)); + VM_ASSERT(IMEMO_TYPE_P(cme, imemo_ment), "cme: %d", imemo_type((VALUE)cme)); VM_ASSERT(callable_method_entry_p(cme)); METHOD_ENTRY_INVALIDATED_SET(cme); RB_DEBUG_COUNTER_INC(cc_cme_invalidate);