diff --git a/complex.c b/complex.c index 78c4259105..761b70c042 100644 --- a/complex.c +++ b/complex.c @@ -431,6 +431,8 @@ f_complex_new2(VALUE klass, VALUE x, VALUE y) * * Complex(1, 2) #=> (1+2i) * Complex('1+2i') #=> (1+2i) + * Complex(nil) #=> TypeError + * Complex(1, nil) #=> TypeError * * Syntax of string form: * diff --git a/object.c b/object.c index e3e6a7de1a..7dc5407630 100644 --- a/object.c +++ b/object.c @@ -2746,13 +2746,15 @@ rb_Integer(VALUE val) * In any case, strings should be strictly conformed to numeric * representation. This behavior is different from that of * String#to_i. Non string values will be converted using - * to_int, and to_i. + * to_int, and to_i. Passing nil + * raises a TypeError. * * Integer(123.999) #=> 123 * Integer("0x1a") #=> 26 * Integer(Time.new) #=> 1204973019 * Integer("0930", 10) #=> 930 * Integer("111", 2) #=> 7 + * Integer(nil) #=> TypeError */ static VALUE diff --git a/rational.c b/rational.c index c035a1a89f..be1c9d109a 100644 --- a/rational.c +++ b/rational.c @@ -584,6 +584,8 @@ f_rational_new_no_reduce2(VALUE klass, VALUE x, VALUE y) * * Rational(1, 2) #=> (1/2) * Rational('1/2') #=> (1/2) + * Rational(nil) #=> TypeError + * Rational(1, nil) #=> TypeError * * Syntax of string form: *