Project

General

Profile

Actions

Bug #15525

closed

Complex(nil, exception: false) and Rational(nil, exception: false) raises an error

Added by ibylich (Ilya Bylich) about 5 years ago. Updated about 5 years ago.

Status:
Closed
Assignee:
-
Target version:
-
ruby -v:
ruby 2.6.0p0 (2018-12-25 revision 66547) [x86_64-darwin18]
[ruby-core:91021]

Description

Each line below raises an error

Complex(:sym, 0, exception: false) # TypeError (not a real)
Complex(nil, exception: false) # TypeError (can't convert nil into Complex)
Complex(0, nil, exception: false) # TypeError (can't convert nil into Complex)
Complex(nil, 0, exception: false) # TypeError (can't convert nil into Complex)

Rational(nil, exception: false) # TypeError (can't convert nil into Rational)
Rational(nil, nil, exception: false) # TypeError (can't convert nil into Rational)

Looks like a bug, Integer(nil, exception: false) and Float(nil, exception: false) are not affected, both return nil

Also Integer(arg, exception: false) raises an error for:

Integer(Float::NAN, exception: false) # FloatDomainError (NaN)
Integer(Float::INFINITY, exception: false) # FloatDomainError (Infinity)
Integer(-Float::INFINITY, exception: false) # FloatDomainError (-Infinity)
Actions

Also available in: Atom PDF

Like0
Like0Like0Like0Like0