diff options
author | ko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2015-07-24 21:01:09 +0000 |
---|---|---|
committer | ko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2015-07-24 21:01:09 +0000 |
commit | 14428f09b1c75071b7bcd86fb6c7a92790301d17 (patch) | |
tree | ccc166e8e895acaeedf0abff78e0ebe7c8dcbdf0 | |
parent | efa31acaad8663602357fb193db8dd4320fa66d5 (diff) | |
download | ruby-14428f09b1c75071b7bcd86fb6c7a92790301d17.tar.gz |
* vm_core.h: constify rb_iseq_constant_body::line_info_table.
* iseq.c: catch up this fix.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51368 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | iseq.c | 7 | ||||
-rw-r--r-- | vm_core.h | 2 |
3 files changed, 11 insertions, 4 deletions
@@ -1,3 +1,9 @@ +Sat Jul 25 06:00:09 2015 Koichi Sasada <ko1@atdot.net> + + * vm_core.h: constify rb_iseq_constant_body::line_info_table. + + * iseq.c: catch up this fix. + Sat Jul 25 05:56:43 2015 Koichi Sasada <ko1@atdot.net> * vm_core.h: constify rb_iseq_constant_body::param::opt_table and @@ -1060,11 +1060,11 @@ iseqw_to_a(VALUE self) /* TODO: search algorithm is brute force. this should be binary search or so. */ -static struct iseq_line_info_entry * +static const struct iseq_line_info_entry * get_line_info(const rb_iseq_t *iseq, size_t pos) { size_t i = 0, size = iseq->body->line_info_size; - struct iseq_line_info_entry *table = iseq->body->line_info_table; + const struct iseq_line_info_entry *table = iseq->body->line_info_table; const int debug = 0; if (debug) { @@ -1098,7 +1098,8 @@ get_line_info(const rb_iseq_t *iseq, size_t pos) static unsigned int find_line_no(const rb_iseq_t *iseq, size_t pos) { - struct iseq_line_info_entry *entry = get_line_info(iseq, pos); + const struct iseq_line_info_entry *entry = get_line_info(iseq, pos); + if (entry) { return entry->line_no; } @@ -330,7 +330,7 @@ struct rb_iseq_constant_body { rb_iseq_location_t location; /* insn info, must be freed */ - struct iseq_line_info_entry *line_info_table; + const struct iseq_line_info_entry *line_info_table; const ID *local_table; /* must free */ |