From 0ae8dd168e4529828018996f0af288320f4de0ad Mon Sep 17 00:00:00 2001 From: normal Date: Mon, 25 Aug 2014 02:24:10 +0000 Subject: [PATCH] rb_iseq_location_t: change first_lineno type to VALUE Nearly all current uses of iseq->location.first_lineno are as a VALUE, not a size_t. The only exception was the experimental (and currently unused) rb_iseq_build_for_ruby2cext function. * vm_core.h (rb_iseq_location_t): change first_lineno type to VALUE * iseq.c (rb_iseq_build_for_ruby2cext): update based on argument git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47269 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 5 +++++ iseq.c | 4 ++-- vm_core.h | 2 +- 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index e57b740526..d16b8313c8 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Mon Aug 25 11:02:07 2014 Eric Wong + + * vm_core.h (rb_iseq_location_t): change first_lineno type to VALUE + * iseq.c (rb_iseq_build_for_ruby2cext): update based on argument + Sun Aug 24 16:14:46 2014 SHIBATA Hiroshi * lib/e2mmap.rb: remove needless instance variables. diff --git a/iseq.c b/iseq.c index 1eed85ba33..dfc90cc3de 100644 --- a/iseq.c +++ b/iseq.c @@ -183,7 +183,7 @@ iseq_alloc(VALUE klass) } static rb_iseq_location_t * -iseq_location_setup(rb_iseq_t *iseq, VALUE path, VALUE absolute_path, VALUE name, size_t first_lineno) +iseq_location_setup(rb_iseq_t *iseq, VALUE path, VALUE absolute_path, VALUE name, VALUE first_lineno) { rb_iseq_location_t *loc = &iseq->location; RB_OBJ_WRITE(iseq->self, &loc->path, path); @@ -2096,7 +2096,7 @@ rb_iseq_build_for_ruby2cext( MEMCPY(iseq, iseq_template, rb_iseq_t, 1); /* TODO: write barrier, *iseq = *iseq_template; */ RB_OBJ_WRITE(iseq->self, &iseq->location.label, rb_str_new2(name)); RB_OBJ_WRITE(iseq->self, &iseq->location.path, rb_str_new2(path)); - iseq->location.first_lineno = first_lineno; + iseq->location.first_lineno = UINT2NUM(first_lineno); RB_OBJ_WRITE(iseq->self, &iseq->mark_ary, 0); iseq->self = iseqval; diff --git a/vm_core.h b/vm_core.h index ff8bf0ef20..7bf971b9a5 100644 --- a/vm_core.h +++ b/vm_core.h @@ -184,7 +184,7 @@ typedef struct rb_iseq_location_struct { const VALUE absolute_path; const VALUE base_label; const VALUE label; - size_t first_lineno; + VALUE first_lineno; /* TODO: may be unsigned short */ } rb_iseq_location_t; struct rb_iseq_struct;