diff --git a/object.c b/object.c index 8fc85b9..bd5c743 100644 --- a/object.c +++ b/object.c @@ -1946,6 +1946,18 @@ rb_check_attr_id(ID id) return id; } +static void +mod_attr(int argc, VALUE *argv, VALUE klass, int read, int write, int ex) +{ + int i; + ID id; + + for (i=0; i nil @@ -1963,20 +1975,35 @@ static VALUE rb_mod_attr_reader(int argc, VALUE *argv, VALUE klass) { int i; + ID id; + VALUE ret; + mod_attr(argc, argv, klass, TRUE, FALSE, TRUE); + + ret = rb_ary_new_capa(argc); for (i=0; i