https://issues.dlang.org/show_bug.cgi?id=23846
--- Comment #10 from mhh <[email protected]> --- Yes it does. Huge val (i.e. infinity) is returned on overflow when the number is too large but not when it underflows which is the case here. The result of an underflow is nonetheless still a valid finite float, but with less precision in the mantissa. So it needs to check the result too if ERANGE is returned. Microsoft don't define underflow in their docs so it's possible their behaviour is different. --
