|
9 | 9 | #include <insns_info.inc> |
10 | 10 | #include "ruby_debug.h" |
11 | 11 |
|
12 | | -#define DEBUG_VERSION "0.11.29" |
| 12 | +#define DEBUG_VERSION "0.11.30.pre" |
13 | 13 |
|
14 | 14 | #define FRAME_N(n) (&debug_context->frames[debug_context->stack_size-(n)-1]) |
15 | 15 | #define GET_FRAME (FRAME_N(check_frame_number(debug_context, frame))) |
|
21 | 21 | #define STACK_SIZE_INCREMENT 128 |
22 | 22 |
|
23 | 23 | RUBY_EXTERN int rb_vm_get_sourceline(const rb_control_frame_t *cfp); /* from vm.c */ |
24 | | -RUBY_EXTERN VALUE rb_iseq_compile_with_option(VALUE src, VALUE file, VALUE line, VALUE opt); /* from iseq.c */ |
| 24 | +/* from iseq.c */ |
| 25 | +#ifdef RB_ISEQ_COMPILE_6ARGS |
| 26 | +RUBY_EXTERN VALUE rb_iseq_compile_with_option(VALUE src, VALUE file, VALUE filepath, VALUE line, VALUE opt); |
| 27 | +#else |
| 28 | +RUBY_EXTERN VALUE rb_iseq_compile_with_option(VALUE src, VALUE file, VALUE line, VALUE opt); |
| 29 | +#endif |
25 | 30 |
|
26 | 31 | typedef struct { |
27 | 32 | st_table *tbl; |
@@ -680,8 +685,13 @@ create_catch_table(debug_context_t *debug_context, unsigned long cont) |
680 | 685 | GET_THREAD()->parse_in_eval++; |
681 | 686 | GET_THREAD()->mild_compile_error++; |
682 | 687 | /* compiling with option Qfalse (no options) prevents debug hook calls during this catch routine */ |
| 688 | +#ifdef RB_ISEQ_COMPILE_6ARGS |
| 689 | + catch_table->iseq = rb_iseq_compile_with_option( |
| 690 | + rb_str_new_cstr("begin\nend"), rb_str_new_cstr("(exception catcher)"), Qnil, INT2FIX(1), Qfalse); |
| 691 | +#else |
683 | 692 | catch_table->iseq = rb_iseq_compile_with_option( |
684 | 693 | rb_str_new_cstr("begin\nend"), rb_str_new_cstr("(exception catcher)"), INT2FIX(1), Qfalse); |
| 694 | +#endif |
685 | 695 | GET_THREAD()->mild_compile_error--; |
686 | 696 | GET_THREAD()->parse_in_eval--; |
687 | 697 |
|
|
0 commit comments