summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--iseq.c4
-rw-r--r--vm_core.h2
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 <e@80x24.org>
+
+ * 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 <shibata.hiroshi@gmail.com>
* 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;