diff options
author | ko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2013-06-21 11:53:33 +0000 |
---|---|---|
committer | ko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2013-06-21 11:53:33 +0000 |
commit | 508b255b9a11b03fd08efbe9855bc985f702076f (patch) | |
tree | 128f5f5fbf6b27d9c8978889102043bf95272eac /include | |
parent | c2269d9aadce0fbb6b4d02f1d4737c17586062b2 (diff) | |
download | ruby-508b255b9a11b03fd08efbe9855bc985f702076f.tar.gz |
* include/ruby/ruby.h: constify RArray::as::ary and RArray::heap::ptr.
Use RARRAY_ASET() or RARRAY_PTR_USE() to modify Array objects.
* array.c, gc.c: catch up above changes.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41537 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'include')
-rw-r--r-- | include/ruby/ruby.h | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/include/ruby/ruby.h b/include/ruby/ruby.h index f812e3146b..79bb110563 100644 --- a/include/ruby/ruby.h +++ b/include/ruby/ruby.h @@ -933,9 +933,9 @@ struct RArray { long capa; VALUE shared; } aux; - VALUE *ptr; + const VALUE *ptr; } heap; - VALUE ary[RARRAY_EMBED_LEN_MAX]; + const VALUE ary[RARRAY_EMBED_LEN_MAX]; } as; }; #define RARRAY_EMBED_FLAG FL_USER1 @@ -961,7 +961,7 @@ struct RArray { #define RARRAY_PTR_USE(ary, ptr_name, expr) do { \ const VALUE _ary = (ary); \ - VALUE *ptr_name = RARRAY_PTR_USE_START(_ary); \ + VALUE *ptr_name = (VALUE *)RARRAY_PTR_USE_START(_ary); \ expr; \ RARRAY_PTR_USE_END(_ary); \ } while (0) @@ -969,10 +969,10 @@ struct RArray { #define RARRAY_AREF(a, i) (RARRAY_RAWPTR(a)[i]) #define RARRAY_ASET(a, i, v) do { \ const VALUE _ary_ = (a); \ - OBJ_WRITE(_ary_, &RARRAY_RAWPTR(_ary_)[i], (v)); \ + OBJ_WRITE(_ary_, (VALUE *)&RARRAY_RAWPTR(_ary_)[i], (v)); \ } while (0) -#define RARRAY_PTR(a) RARRAY_RAWPTR(RGENGC_WB_PROTECTED_ARRAY ? OBJ_WB_GIVEUP((VALUE)a) : ((VALUE)a)) +#define RARRAY_PTR(a) ((VALUE *)RARRAY_RAWPTR(RGENGC_WB_PROTECTED_ARRAY ? OBJ_WB_GIVEUP((VALUE)a) : ((VALUE)a))) struct RRegexp { struct RBasic basic; |