diff options
author | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2016-02-09 08:24:37 +0000 |
---|---|---|
committer | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2016-02-09 08:24:37 +0000 |
commit | 80e9ca6013fcb111668d95953d13be8b20689a62 (patch) | |
tree | 1e4df3cdb0506eefe5462b4441648edacc9ac675 | |
parent | b6dcc3963aeeb46963957a96bb56646683d27e01 (diff) | |
download | ruby-80e9ca6013fcb111668d95953d13be8b20689a62.tar.gz |
ruby.c: EACH_DUMPS
* ruby.c (EACH_DUMPS): define the list of dumping feature names.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53792 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | ruby.c | 32 |
1 files changed, 14 insertions, 18 deletions
@@ -87,17 +87,21 @@ enum feature_flag_bits { #define DEBUG_BIT(bit) (1U << feature_debug_##bit) #define DUMP_BIT(bit) (1U << dump_##bit) +#define DEFINE_DUMP(bit) dump_##bit, +#define EACH_DUMPS(X) \ + X(version) \ + X(copyright) \ + X(usage) \ + X(help) \ + X(yydebug) \ + X(syntax) \ + X(parsetree) \ + X(parsetree_with_comment) \ + X(insns) \ + /* END OF DUMPS */ enum dump_flag_bits { - dump_version, dump_version_v, - dump_copyright, - dump_usage, - dump_help, - dump_yydebug, - dump_syntax, - dump_parsetree, - dump_parsetree_with_comment, - dump_insns, + EACH_DUMPS(DEFINE_DUMP) dump_flag_count }; @@ -822,15 +826,7 @@ static void dump_option(const char *str, int len, void *arg) { #define SET_WHEN_DUMP(bit) SET_WHEN(#bit, DUMP_BIT(bit), str, len) - SET_WHEN_DUMP(version); - SET_WHEN_DUMP(copyright); - SET_WHEN_DUMP(usage); - SET_WHEN_DUMP(help); - SET_WHEN_DUMP(yydebug); - SET_WHEN_DUMP(syntax); - SET_WHEN_DUMP(parsetree); - SET_WHEN_DUMP(parsetree_with_comment); - SET_WHEN_DUMP(insns); + EACH_DUMPS(SET_WHEN_DUMP); rb_warn("don't know how to dump `%.*s',", len, str); rb_warn("but only [version, copyright, usage, yydebug, syntax, parsetree, parsetree_with_comment, insns]."); } |