mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
Use RUBY_FUNCTION_NAME_STRING
for old Visual C++
Probably `__func__` is supported since Visual C++ 2015 (= 14.0, `_MSC_VER` = 1900).
This commit is contained in:
parent
768ceb4ead
commit
0c15752556
2 changed files with 10 additions and 8 deletions
6
ractor.c
6
ractor.c
|
@ -413,7 +413,7 @@ ractor_queue_enq(rb_ractor_t *r, struct rb_ractor_queue *rq, struct rb_ractor_ba
|
|||
rq->size *= 2;
|
||||
}
|
||||
rq->baskets[(rq->start + rq->cnt++) % rq->size] = *basket;
|
||||
// fprintf(stderr, "%s %p->cnt:%d\n", __func__, (void *)rq, rq->cnt);
|
||||
// fprintf(stderr, "%s %p->cnt:%d\n", RUBY_FUNCTION_NAME_STRING, (void *)rq, rq->cnt);
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -502,7 +502,7 @@ ractor_wakeup(rb_ractor_t *r, enum ractor_wait_status wait_status, enum ractor_w
|
|||
{
|
||||
ASSERT_ractor_locking(r);
|
||||
|
||||
// fprintf(stderr, "%s r:%p status:%s/%s wakeup_status:%s/%s\n", __func__, (void *)r,
|
||||
// fprintf(stderr, "%s r:%p status:%s/%s wakeup_status:%s/%s\n", RUBY_FUNCTION_NAME_STRING, (void *)r,
|
||||
// wait_status_str(r->sync.wait.status), wait_status_str(wait_status),
|
||||
// wakeup_status_str(r->sync.wait.wakeup_status), wakeup_status_str(wakeup_status));
|
||||
|
||||
|
@ -582,7 +582,7 @@ ractor_sleep(rb_execution_context_t *ec, rb_ractor_t *cr)
|
|||
{
|
||||
VM_ASSERT(GET_RACTOR() == cr);
|
||||
VM_ASSERT(cr->sync.wait.status != wait_none);
|
||||
// fprintf(stderr, "%s r:%p status:%s, wakeup_status:%s\n", __func__, (void *)cr,
|
||||
// fprintf(stderr, "%s r:%p status:%s, wakeup_status:%s\n", RUBY_FUNCTION_NAME_STRING, (void *)cr,
|
||||
// wait_status_str(cr->sync.wait.status), wakeup_status_str(cr->sync.wait.wakeup_status));
|
||||
|
||||
RACTOR_UNLOCK(cr);
|
||||
|
|
12
vm_debug.h
12
vm_debug.h
|
@ -94,18 +94,20 @@ bool ruby_debug_log_filter(const char *func_name);
|
|||
|
||||
// convenient macro to log even if the USE_RUBY_DEBUG_LOG macro is not specified.
|
||||
// You can use this macro for temporary usage (you should not commit it).
|
||||
#define _RUBY_DEBUG_LOG(...) ruby_debug_log(__FILE__, __LINE__, __func__, "" __VA_ARGS__)
|
||||
#define _RUBY_DEBUG_LOG(...) ruby_debug_log(__FILE__, __LINE__, RUBY_FUNCTION_NAME_STRING, "" __VA_ARGS__)
|
||||
|
||||
#if USE_RUBY_DEBUG_LOG
|
||||
# define RUBY_DEBUG_LOG_ENABLED(func_name) \
|
||||
(ruby_debug_log_mode && ruby_debug_log_filter(func_name))
|
||||
|
||||
#define RUBY_DEBUG_LOG(...) do { \
|
||||
if (ruby_debug_log_mode && ruby_debug_log_filter(__func__)) \
|
||||
ruby_debug_log(__FILE__, __LINE__, __func__, "" __VA_ARGS__); \
|
||||
if (RUBY_DEBUG_LOG_ENABLED(RUBY_FUNCTION_NAME_STRING)) \
|
||||
ruby_debug_log(__FILE__, __LINE__, RUBY_FUNCTION_NAME_STRING, "" __VA_ARGS__); \
|
||||
} while (0)
|
||||
|
||||
#define RUBY_DEBUG_LOG2(file, line, ...) do { \
|
||||
if (ruby_debug_log_mode && ruby_debug_log_filter(__func__)) \
|
||||
ruby_debug_log(file, line, __func__, "" __VA_ARGS__); \
|
||||
if (RUBY_DEBUG_LOG_ENABLED(RUBY_FUNCTION_NAME_STRING)) \
|
||||
ruby_debug_log(file, line, RUBY_FUNCTION_NAME_STRING, "" __VA_ARGS__); \
|
||||
} while (0)
|
||||
|
||||
#else
|
||||
|
|
Loading…
Reference in a new issue