summaryrefslogtreecommitdiff
path: root/object.c
diff options
context:
space:
mode:
Diffstat (limited to 'object.c')
-rw-r--r--object.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/object.c b/object.c
index a4a87db4d6..c58a46b293 100644
--- a/object.c
+++ b/object.c
@@ -339,6 +339,10 @@ rb_obj_clone2(int argc, VALUE *argv, VALUE obj)
if (!NIL_P(opt)) {
rb_get_kwargs(opt, keyword_ids, 0, 1, kwargs);
kwfreeze = kwargs[0];
+ if (kwfreeze != Qundef && kwfreeze != Qtrue && kwfreeze != Qfalse) {
+ rb_raise(rb_eArgError, "unexpected value for freeze: %s",
+ rb_builtin_class_name(kwfreeze));
+ }
}
if (rb_special_const_p(obj)) {