fails:Errno::EINVAL.new accepts an optional custom message and location
