diff options
author | matz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2008-09-22 23:27:33 +0000 |
---|---|---|
committer | matz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2008-09-22 23:27:33 +0000 |
commit | 3227143dc69af1493d12f0f75382dc735bd1cdc3 (patch) | |
tree | 254c4bf0b241f4a0f575bee5353f7b457a78c617 | |
parent | 050811002aff42ab2546d97bd7e75d3d761496d4 (diff) | |
download | ruby-3227143dc69af1493d12f0f75382dc735bd1cdc3.tar.gz ruby-3227143dc69af1493d12f0f75382dc735bd1cdc3.tar.xz ruby-3227143dc69af1493d12f0f75382dc735bd1cdc3.zip |
* hash.c (env_aset): allow nil value to remove an entry.
[ruby-dev:36465]
git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@19463 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | hash.c | 3 |
2 files changed, 7 insertions, 1 deletions
@@ -1,3 +1,8 @@ +Tue Sep 23 08:25:56 2008 Yukihiro Matsumoto <matz@ruby-lang.org> + + * hash.c (env_aset): allow nil value to remove an entry. + [ruby-dev:36465] + Tue Sep 23 08:07:07 2008 Yukihiro Matsumoto <matz@ruby-lang.org> * misc/ruby-mode.el (ruby-keyword-end-re): emacs21 support. a @@ -2052,7 +2052,8 @@ env_aset(VALUE obj, VALUE nm, VALUE val) } if (NIL_P(val)) { - rb_raise(rb_eTypeError, "cannot assign nil; use Hash#delete instead"); + env_delete(obj, nm); + return Qnil; } StringValue(nm); StringValue(val); |