This is a library problem, not a language problem. In this case std.math uses real everywhere when perhaps it shouldn't.
If x/y leads to a division by zero trap when it should not, then it isn't a library problem.
You mean, MiniD? Someone has already done that, years ago....
No, I meant forking D.