From 9a62d41a21ce4e9230d20f01aae71784bd08aa46 Mon Sep 17 00:00:00 2001 From: nobu Date: Tue, 9 Feb 2016 07:36:27 +0000 Subject: ruby.c: EACH_DEBUG_FEATURES * ruby.c (EACH_DEBUG_FEATURES): define the list of debug feature names. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53789 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ruby.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'ruby.c') diff --git a/ruby.c b/ruby.c index 23e44cf25a..a9bb60b88b 100644 --- a/ruby.c +++ b/ruby.c @@ -70,11 +70,15 @@ char *getenv(); X(rubyopt) \ X(frozen_string_literal) \ /* END OF FEATURES */ +#define EACH_DEBUG_FEATURES(X) \ + X(frozen_string_literal) \ + /* END OF DEBUG FEATURES */ #define AMBIGUOUS_FEATURE_NAMES 0 /* no ambiguous feature names now */ #define DEFINE_FEATURE(bit) feature_##bit, +#define DEFINE_DEBUG_FEATURE(bit) feature_debug_##bit, enum feature_flag_bits { EACH_FEATURES(DEFINE_FEATURE) - feature_debug_frozen_string_literal, + EACH_DEBUG_FEATURES(DEFINE_DEBUG_FEATURE) feature_flag_count }; @@ -807,8 +811,8 @@ disable_option(const char *str, int len, void *arg) static void debug_option(const char *str, int len, void *arg) { -#define SET_WHEN_DEBUG(t, bit) SET_WHEN(#bit, t##_BIT(bit), str, len) - SET_WHEN_DEBUG(DEBUG, frozen_string_literal); +#define SET_WHEN_DEBUG(bit) SET_WHEN(#bit, DEBUG_BIT(bit), str, len) + EACH_DEBUG_FEATURES(SET_WHEN_DEBUG); rb_warn("unknown argument for --debug: `%.*s'", len, str); } -- cgit v1.2.3