https://issues.dlang.org/show_bug.cgi?id=23846
--- Comment #9 from kinke <[email protected]> --- (In reply to mhh from comment #5) > The weird thing is that it *does* return the value still, which I think the > standard doesn't really want it to due. Does it? DMD doesn't use the value at all, it uses the `strtold` result. It just uses strtof/d to check for over/underflows of non-real literals. > It isn't enough to check ERANGE - underflow can (I think it's implementation > defined) trigger ERANGE but if the result is nonzero it's still supposed to > be correctly rounded. https://en.cppreference.com/w/c/string/byte/strtof says it returns HUGE_VAL when setting ERANGE. > I've repeated the test with a slightly modified example program [You'd need to reset `errno` before each call for a proper test.] --
