Sincerely I am tired to maintain my library with every change made by D compiler. Mostly regressions. Bug reports are ignored or challenged, I don't have time to argue.
Therefore, if someone finds interesting my decimal lib , please continue or maintain it from here, I stopped completely to adjust it. It is still working, but unit tests are not running anymore because of regressions in compiler.
The last issues are generated by unpublished changes in the parser:
float z = 85886696878585969769557975866955695.E0; //integer overflow, I don't see any int real x = 0x1p-16383; //number `0x1p-16383` is not representable. It is, trust me.
Please don't ask me what is the last version when everything worked like a charm. I don't know and now I don't care.