Hey there,

I see from the manual that different rounding modes for floats exist. However, I was wondering whether there is a smart way to set or emulate a rounding mode that is similar to `RoundNearest`

, but without overflow nor underflow. The smallest representable number is never round to zero and the largest never to infinity. At the moment we have

```
julia> a = prevfloat(typemax(Float16))
Float16(6.55e4)
julia> a+a
Inf16
```

causing an overflow and

```
julia> b = nextfloat(zero(Float16))
Float16(6.0e-8)
julia> b/2
Float16(0.0)
```

causing underflow. Similarly for Float32, Float64 and negative numbers. So in the first example I would like `a+a`

to yield `a`

and in the second `b/2`

to yield `b`

. This is motivated as 2a is closer to a than to infinity … Do you know whether there is any way to set this behaviour?