"Thrown when a mathematical operation caused a number to overflow from its bounds, or when a numeric narrowing conversion fails because the number cannot be represented within the bounds of the narrower type. Note that: - arithmetic operations on [[Integer]]s result in _silent_ overflow (JVM) or loss of precision (JavaScript), and thus never result in an `OverflowException`, and, - likewise, arithmetic operations on [[Float]] produce the value [[infinity]] instead of overflowing." shared class OverflowException(String message="Numeric overflow") extends Exception(message) {}