summaryrefslogtreecommitdiff
path: root/object.c
diff options
context:
space:
mode:
authormatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>1998-04-08 08:12:39 +0000
committermatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>1998-04-08 08:12:39 +0000
commit8673eacafa039f056927e0f91ce195afae9b9019 (patch)
treead28cdccaa2ee114d3cf523de4d9f9d0167b2d50 /object.c
parent9c855a83f2c34ecf0e2f448d2213a6b091cdce95 (diff)
local_variables/defined?(TOPLEVEL_CONST) in modules
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/v1_1r@159 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'object.c')
-rw-r--r--object.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/object.c b/object.c
index fa7c3b05c5..fa55391260 100644
--- a/object.c
+++ b/object.c
@@ -289,6 +289,7 @@ nil_plus(x, y)
VALUE x, y;
{
switch (TYPE(y)) {
+ case T_NIL:
case T_FIXNUM:
case T_FLOAT:
case T_BIGNUM:
@@ -297,7 +298,8 @@ nil_plus(x, y)
return y;
default:
TypeError("tried to add %s(%s) to nil",
- RSTRING(obj_as_string(y))->ptr, rb_class2name(CLASS_OF(y)));
+ STR2CSTR(rb_inspect(y)),
+ rb_class2name(CLASS_OF(y)));
}
/* not reached */
}
@@ -722,6 +724,9 @@ f_integer(obj, arg)
case T_STRING:
return str2inum(RSTRING(arg)->ptr, 0);
+ case T_NIL:
+ return INT2FIX(0);
+
default:
i = NUM2INT(arg);
}