From ea57d84654c5bece74189af3aad7a5799d4bbe45 Mon Sep 17 00:00:00 2001 From: nobu Date: Wed, 21 Jun 2017 12:51:26 +0000 Subject: gc.c: FL_CHECK2 * gc.c (FL_TEST2, FL_SET2, FL_UNSET2): make error messages consitent. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59135 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- gc.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'gc.c') diff --git a/gc.c b/gc.c index da2bc2a059..55d3bed81e 100644 --- a/gc.c +++ b/gc.c @@ -1016,9 +1016,12 @@ tick(void) #define MEASURE_LINE(expr) expr #endif /* USE_TICK_T */ -#define FL_TEST2(x,f) ((RGENGC_CHECK_MODE && SPECIAL_CONST_P(x)) ? (rb_bug("FL_TEST2: SPECIAL_CONST (%p)", (void *)(x)), 0) : FL_TEST_RAW((x),(f)) != 0) -#define FL_SET2(x,f) do {if (RGENGC_CHECK_MODE && SPECIAL_CONST_P(x)) rb_bug("FL_SET2: SPECIAL_CONST"); RBASIC(x)->flags |= (f);} while (0) -#define FL_UNSET2(x,f) do {if (RGENGC_CHECK_MODE && SPECIAL_CONST_P(x)) rb_bug("FL_UNSET2: SPECIAL_CONST"); RBASIC(x)->flags &= ~(f);} while (0) +#define FL_CHECK2(name, x, pred) \ + ((RGENGC_CHECK_MODE && SPECIAL_CONST_P(x)) ? \ + (rb_bug(name": SPECIAL_CONST (%p)", (void *)(x)), 0) : (pred)) +#define FL_TEST2(x,f) FL_CHECK2("FL_TEST2", x, FL_TEST_RAW((x),(f)) != 0) +#define FL_SET2(x,f) FL_CHECK2("FL_SET2", x, RBASIC(x)->flags |= (f)) +#define FL_UNSET2(x,f) FL_CHECK2("FL_UNSET2", x, RBASIC(x)->flags &= ~(f)) #define RVALUE_MARK_BITMAP(obj) MARKED_IN_BITMAP(GET_HEAP_MARK_BITS(obj), (obj)) #define RVALUE_PAGE_MARKED(page, obj) MARKED_IN_BITMAP((page)->mark_bits, (obj)) -- cgit v1.2.3