I need to convert from `boost::multiprecision::int128_t` to `double`.

For smaller ints, I use:

```
template<typename flt_t>
  flt_t as_flt() const { return std::ldexp (static_cast<flt_t>(val), -frac_bits); }

```

with `val=int128_t, flt_t = double`

But `static_cast<double>(int128_t)`

seems to fail

error: invalid static\_cast from type ....