Skip to content

Commit

Permalink
iseq.h: rename member
Browse files Browse the repository at this point in the history
* iseq.h (rb_compile_option_struct): rename the member
  frozen_string_literal_debug as debug_frozen_string_literal.
  [Feature #11725]

* ruby.c (proc_options): do not set $DEBUG and $VERBOSE only if no
  arguments is given.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52749 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
  • Loading branch information
nobu committed Nov 25, 2015
1 parent 9b7d4d4 commit 0123680
Show file tree
Hide file tree
Showing 5 changed files with 17 additions and 13 deletions.
2 changes: 1 addition & 1 deletion compile.c
Expand Up @@ -5309,7 +5309,7 @@ iseq_compile_each(rb_iseq_t *iseq, LINK_ANCHOR *ret, NODE * node, int poped)
else {
if (iseq->compile_data->option->frozen_string_literal) {
VALUE debug_info = Qnil;
if (iseq->compile_data->option->frozen_string_literal_debug || RTEST(ruby_debug)) {
if (iseq->compile_data->option->debug_frozen_string_literal || RTEST(ruby_debug)) {
debug_info = rb_ary_new_from_args(2, iseq->body->location.path, INT2FIX(line));
iseq_add_mark_object_compile_time(iseq, rb_obj_freeze(debug_info));
}
Expand Down
6 changes: 3 additions & 3 deletions iseq.c
Expand Up @@ -349,7 +349,7 @@ static rb_compile_option_t COMPILE_OPTION_DEFAULT = {
OPT_STACK_CACHING, /* int stack_caching; */
OPT_TRACE_INSTRUCTION, /* int trace_instruction */
OPT_FROZEN_STRING_LITERAL,
OPT_FROZEN_STRING_LITERAL_DEBUG
OPT_DEBUG_FROZEN_STRING_LITERAL,
};

static const rb_compile_option_t COMPILE_OPTION_FALSE = {0};
Expand All @@ -375,7 +375,7 @@ set_compile_option_from_hash(rb_compile_option_t *option, VALUE opt)
SET_COMPILE_OPTION(option, opt, stack_caching);
SET_COMPILE_OPTION(option, opt, trace_instruction);
SET_COMPILE_OPTION(option, opt, frozen_string_literal);
SET_COMPILE_OPTION(option, opt, frozen_string_literal_debug);
SET_COMPILE_OPTION(option, opt, debug_frozen_string_literal);
SET_COMPILE_OPTION_NUM(option, opt, debug_level);
#undef SET_COMPILE_OPTION
#undef SET_COMPILE_OPTION_NUM
Expand Down Expand Up @@ -429,7 +429,7 @@ make_compile_option_value(rb_compile_option_t *option)
SET_COMPILE_OPTION(option, opt, stack_caching);
SET_COMPILE_OPTION(option, opt, trace_instruction);
SET_COMPILE_OPTION(option, opt, frozen_string_literal);
SET_COMPILE_OPTION(option, opt, frozen_string_literal_debug);
SET_COMPILE_OPTION(option, opt, debug_frozen_string_literal);
SET_COMPILE_OPTION_NUM(option, opt, debug_level);
}
#undef SET_COMPILE_OPTION
Expand Down
2 changes: 1 addition & 1 deletion iseq.h
Expand Up @@ -67,7 +67,7 @@ struct rb_compile_option_struct {
int stack_caching;
int trace_instruction;
int frozen_string_literal;
int frozen_string_literal_debug;
int debug_frozen_string_literal;
int debug_level;
};

Expand Down
18 changes: 11 additions & 7 deletions ruby.c
Expand Up @@ -69,10 +69,12 @@ enum feature_flag_bits {
feature_did_you_mean,
feature_rubyopt,
feature_frozen_string_literal,
feature_frozen_string_literal_debug,
feature_debug_frozen_string_literal,
feature_flag_count
};

#define DEBUG_BIT(bit) (1U << feature_debug_##bit)

#define DUMP_BIT(bit) (1U << dump_##bit)
enum dump_flag_bits {
dump_version,
Expand Down Expand Up @@ -118,15 +120,15 @@ enum {
COMPILATION_FEATURES = (
0
| FEATURE_BIT(frozen_string_literal)
| FEATURE_BIT(frozen_string_literal_debug)
| FEATURE_BIT(debug_frozen_string_literal)
),
DEFAULT_FEATURES = (
~0U
#if DISABLE_RUBYGEMS
& ~FEATURE_BIT(gems)
#endif
& ~FEATURE_BIT(frozen_string_literal)
& ~FEATURE_BIT(frozen_string_literal_debug)
& ~FEATURE_BIT(debug_frozen_string_literal)
)
};

Expand Down Expand Up @@ -780,7 +782,7 @@ 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(FEATURE, frozen_string_literal_debug);
SET_WHEN_DEBUG(DEBUG, frozen_string_literal);
rb_warn("unknown argument for --debug: `%.*s'", len, str);
}

Expand Down Expand Up @@ -1113,8 +1115,10 @@ proc_options(long argc, char **argv, struct cmdline_options *opt, int envopt)
if (s && *s) {
ruby_each_words(s, debug_option, &opt->features);
}
ruby_debug = Qtrue;
ruby_verbose = Qtrue;
else {
ruby_debug = Qtrue;
ruby_verbose = Qtrue;
}
}
else if (is_option_with_arg("enable", Qtrue, Qtrue)) {
ruby_each_words(s, enable_option, &opt->features);
Expand Down Expand Up @@ -1501,7 +1505,7 @@ process_options(int argc, char **argv, struct cmdline_options *opt)
rb_hash_aset((h), ID2SYM(rb_intern_const(#name)), \
((o)->features & FEATURE_BIT(name) ? Qtrue : Qfalse));
SET_COMPILE_OPTION(option, opt, frozen_string_literal);
SET_COMPILE_OPTION(option, opt, frozen_string_literal_debug);
SET_COMPILE_OPTION(option, opt, debug_frozen_string_literal);
rb_funcallv(rb_cISeq, rb_intern_const("compile_option="), 1, &option);
#undef SET_COMPILE_OPTION
}
Expand Down
2 changes: 1 addition & 1 deletion vm_opts.h
Expand Up @@ -24,7 +24,7 @@
#define OPT_SPECIALISED_INSTRUCTION 1
#define OPT_INLINE_CONST_CACHE 1
#define OPT_FROZEN_STRING_LITERAL 0
#define OPT_FROZEN_STRING_LITERAL_DEBUG 0
#define OPT_DEBUG_FROZEN_STRING_LITERAL 0

/* Build Options.
* You can't change these options at runtime.
Expand Down

0 comments on commit 0123680

Please sign in to comment.