1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

compile.c: use %+PRIsVALUE instead of rb_inspect

* compile.c (get_exception_sym2type, iseq_build_from_ary_body):
  rely on %+PRIsVALUE instead of calling rb_inspect directly

This yields a minor size reduction on 32-bit x86:

   text	   data	    bss	    dec	    hex	filename
  96807	    772	     48	  97627	  17d5b	compile.o
  96851	    772	     48	  97671	  17d87	compile.orig

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50940 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
normal 2015-06-17 21:07:02 +00:00
parent 04d13d0662
commit fa5d0d2479
2 changed files with 7 additions and 6 deletions

View file

@ -1,3 +1,8 @@
Thu Jun 18 06:02:42 2015 Eric Wong <e@80x24.org>
* compile.c (get_exception_sym2type, iseq_build_from_ary_body):
rely on %+PRIsVALUE instead of calling rb_inspect directly
Wed Jun 17 20:59:25 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* common.mk (ENC_MK): needs fake.rb if cross compilation.

View file

@ -5792,7 +5792,6 @@ get_exception_sym2type(VALUE sym)
{
#undef rb_intern
#define rb_intern(str) rb_intern_const(str)
VALUE sym_inspect;
static VALUE symRescue, symEnsure, symRetry;
static VALUE symBreak, symRedo, symNext;
@ -5811,9 +5810,7 @@ get_exception_sym2type(VALUE sym)
if (sym == symBreak) return CATCH_TYPE_BREAK;
if (sym == symRedo) return CATCH_TYPE_REDO;
if (sym == symNext) return CATCH_TYPE_NEXT;
sym_inspect = rb_inspect(sym);
rb_raise(rb_eSyntaxError, "invalid exception symbol: %s",
StringValuePtr(sym_inspect));
rb_raise(rb_eSyntaxError, "invalid exception symbol: %+"PRIsVALUE, sym);
return 0;
}
@ -5965,8 +5962,7 @@ iseq_build_from_ary_body(rb_iseq_t *iseq, LINK_ANCHOR *anchor,
if (st_lookup(insn_table, (st_data_t)insn, &insn_id) == 0) {
/* TODO: exception */
rb_compile_error(RSTRING_PTR(iseq->location.path), line_no,
"unknown instruction: %"PRIsVALUE,
rb_inspect(insn));
"unknown instruction: %+"PRIsVALUE, insn);
}
if (argc != insn_len((VALUE)insn_id)-1) {