diff options
Diffstat (limited to 'eval_error.c')
| -rw-r--r-- | eval_error.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/eval_error.c b/eval_error.c index bdce295f6e..f3d05a1043 100644 --- a/eval_error.c +++ b/eval_error.c @@ -47,7 +47,7 @@ error_pos_str(void) return rb_sprintf("%"PRIsVALUE": ", sourcefile); } else if ((caller_name = rb_frame_callee()) != 0) { - return rb_sprintf("%"PRIsVALUE":%d:in `%"PRIsVALUE"': ", + return rb_sprintf("%"PRIsVALUE":%d:in '%"PRIsVALUE"': ", sourcefile, sourceline, rb_id2str(caller_name)); } @@ -125,7 +125,7 @@ print_errinfo(const VALUE eclass, const VALUE errat, const VALUE emesg, const VA } VALUE -rb_decorate_message(const VALUE eclass, const VALUE emesg, int highlight) +rb_decorate_message(const VALUE eclass, VALUE emesg, int highlight) { const char *einfo = ""; long elen = 0; @@ -210,6 +210,8 @@ rb_decorate_message(const VALUE eclass, const VALUE emesg, int highlight) } } + RB_GC_GUARD(emesg); + return str; } @@ -390,7 +392,7 @@ rb_ec_error_print(rb_execution_context_t *volatile ec, volatile VALUE errinfo) rb_ec_error_print_detailed(ec, errinfo, Qnil, Qundef); } -#define undef_mesg_for(v, k) rb_fstring_lit("undefined"v" method `%1$s' for "k" `%2$s'") +#define undef_mesg_for(v, k) rb_fstring_lit("undefined"v" method '%1$s' for "k" '%2$s'") #define undef_mesg(v) ( \ is_mod ? \ undef_mesg_for(v, "module") : \ @@ -418,7 +420,7 @@ rb_print_undef_str(VALUE klass, VALUE name) rb_name_err_raise_str(undef_mesg(""), klass, name); } -#define inaccessible_mesg_for(v, k) rb_fstring_lit("method `%1$s' for "k" `%2$s' is "v) +#define inaccessible_mesg_for(v, k) rb_fstring_lit("method '%1$s' for "k" '%2$s' is "v) #define inaccessible_mesg(v) ( \ is_mod ? \ inaccessible_mesg_for(v, "module") : \ |
