summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--object.c15
-rw-r--r--vm_method.c11
2 files changed, 2 insertions, 24 deletions
diff --git a/object.c b/object.c
index a41839bb9f..685757987f 100644
--- a/object.c
+++ b/object.c
@@ -1924,12 +1924,6 @@ check_setter_id(VALUE name, int (*valid_sym_p)(VALUE), int (*valid_name_p)(VALUE
}
static int
-rb_is_attr_id(ID id)
-{
- return rb_is_local_id(id) || rb_is_const_id(id);
-}
-
-static int
rb_is_attr_name(VALUE name)
{
return rb_is_local_name(name) || rb_is_const_name(name);
@@ -1949,15 +1943,6 @@ id_for_attr(VALUE name)
return id_for_setter(name, attr, invalid_attribute_name);
}
-ID
-rb_check_attr_id(ID id)
-{
- if (!rb_is_attr_id(id)) {
- rb_name_error_str(id, invalid_attribute_name, QUOTE_ID(id));
- }
- return id;
-}
-
/*
* call-seq:
* attr_reader(symbol, ...) -> nil
diff --git a/vm_method.c b/vm_method.c
index d559cd8d0d..0cbebea909 100644
--- a/vm_method.c
+++ b/vm_method.c
@@ -912,8 +912,6 @@ rb_method_boundp(VALUE klass, ID id, int ex)
return 0;
}
-extern ID rb_check_attr_id(ID id);
-
static int
rb_scope_visibility_test(rb_method_visibility_t visi)
{
@@ -953,8 +951,7 @@ rb_scope_module_func_set(void)
void
rb_attr(VALUE klass, ID id, int read, int write, int ex)
{
- VALUE attriv;
- VALUE aname;
+ ID attriv;
rb_method_visibility_t visi;
if (!ex) {
@@ -975,11 +972,7 @@ rb_attr(VALUE klass, ID id, int read, int write, int ex)
}
}
- aname = rb_id2str(rb_check_attr_id(id));
- if (NIL_P(aname)) {
- rb_raise(rb_eArgError, "argument needs to be symbol or string");
- }
- attriv = (VALUE)rb_intern_str(rb_sprintf("@%"PRIsVALUE, aname));
+ attriv = rb_intern_str(rb_sprintf("@%"PRIsVALUE, rb_id2str(id)));
if (read) {
rb_add_method(klass, id, VM_METHOD_TYPE_IVAR, (void *)attriv, visi);
}