t
scala> new Iterator[Int] { var i: Long = 0; def hasNext = i < (Int.MaxValue.toLong + 1); def next = {i += 1; 0} }
res13: Iterator[Int]{def i: Long; def i_=(x$1: Long): Unit} = <iterator>
scala> res13.length
res14: Int = -2147483648
scala> new Iterator[Int] {
| var i: Long = 0
| def hasNext = i < (Int.MaxValue)
| def next = { i += 1; 0 }
| }
res2: Iterator[Int]{def i: Long; def i_=(x$1: Long): Unit} = <iterator>
scala> res2.length
res3: Int = 2147483647