summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKevin Newton <[email protected]>2024-01-22 09:39:59 -0500
committerKevin Newton <[email protected]>2024-01-22 10:18:41 -0500
commit6bcbb9a02baa8585c2d65e29c0a65d791b077611 ()
tree0fad69ac156e97c382b180874ba23ddcef648817
parent2abf153016088605ea6dc77d9f6ba61f619cc273 (diff)
Make prism respect dump_without_opt
-rw-r--r--iseq.c8
-rw-r--r--iseq.h2
-rw-r--r--load.c2
-rw-r--r--ruby.c3
4 files changed, 8 insertions, 7 deletions
@@ -1399,7 +1399,7 @@ iseqw_s_compile(int argc, VALUE *argv, VALUE self)
}
static void
-iseqw_s_compile_prism_compile(pm_parser_t *parser, VALUE opt, rb_iseq_t *iseq, VALUE file, VALUE path, int first_lineno)
{
pm_node_t *node = pm_parse(parser);
@@ -1422,7 +1422,7 @@ iseqw_s_compile_prism_compile(pm_parser_t *parser, VALUE opt, rb_iseq_t *iseq, V
pm_code_location(&code_location, &parser->newline_list, &node->location);
rb_compile_option_t option;
- make_compile_option(&option, opt);
prepare_iseq_build(iseq, rb_fstring_lit("<compiled>"), file, path, first_lineno, &code_location, -1, NULL, 0, ISEQ_TYPE_TOP, Qnil, &option);
pm_scope_node_t scope_node;
@@ -1533,7 +1533,7 @@ iseqw_s_compile_file_prism(int argc, VALUE *argv, VALUE self)
}
rb_iseq_t *
-rb_iseq_new_main_prism(pm_string_t *input, pm_options_t *options, VALUE path)
{
pm_parser_t parser;
pm_parser_init(&parser, pm_string_source(input), pm_string_length(input), options);
@@ -1543,7 +1543,7 @@ rb_iseq_new_main_prism(pm_string_t *input, pm_options_t *options, VALUE path)
pm_options_line_set(options, start_line);
rb_iseq_t *iseq = iseq_alloc();
- iseqw_s_compile_prism_compile(&parser, Qnil, iseq, path, path, start_line);
pm_parser_free(&parser);
return iseq;
@@ -172,7 +172,7 @@ void rb_iseq_init_trace(rb_iseq_t *iseq);
int rb_iseq_add_local_tracepoint_recursively(const rb_iseq_t *iseq, rb_event_flag_t turnon_events, VALUE tpval, unsigned int target_line, bool target_bmethod);
int rb_iseq_remove_local_tracepoint_recursively(const rb_iseq_t *iseq, VALUE tpval);
const rb_iseq_t *rb_iseq_load_iseq(VALUE fname);
-rb_iseq_t * rb_iseq_new_main_prism(pm_string_t *input, pm_options_t *options, VALUE path);
#if VM_INSN_INFO_TABLE_IMPL == 2
unsigned int *rb_iseq_insns_info_decode_positions(const struct rb_iseq_constant_body *body);
@@ -747,7 +747,7 @@ load_iseq_eval(rb_execution_context_t *ec, VALUE fname)
pm_parser_t parser;
pm_parser_init(&parser, pm_string_source(&input), pm_string_length(&input), &options);
- iseq = rb_iseq_new_main_prism(&input, &options, fname);
pm_string_free(&input);
pm_options_free(&options);
@@ -2427,7 +2427,8 @@ process_options(int argc, char **argv, ruby_cmdline_options_t *opt)
pm_options_filepath_set(&options, RSTRING_PTR(opt->script_name));
}
- iseq = rb_iseq_new_main_prism(&input, &options, path);
ruby_opt_init(opt);
pm_string_free(&input);