std.random.uniform!T() and std.random.uniform!T(urng) when T is dchar with any qualifiers can exceed dchar.max Demonstration: --- void main() { import std.random : uniform, Xorshift32; auto rng = Xorshift32(123456789); const result = uniform!(const dchar)(rng); assert(result <= dchar.max); // Fails. } ---
@n8sh created dlang/phobos pull request #7695 "Fix problems with std.random.uniform!dchar(urng)" fixing this issue: - Fix Issue 21384 - std.random.uniform!T() and std.random.uniform!T(urng) when T is dchar with any qualifiers can exceed dchar.max https://github.com/dlang/phobos/pull/7695
dlang/phobos pull request #7695 "Fix problems with std.random.uniform!dchar(urng)" was merged into stable: - fdf20e718a73a4eb68c890d7cfcc7453009b17b2 by Nathan Sashihara: Fix Issue 21384 - std.random.uniform!T() and std.random.uniform!T(urng) when T is dchar with any qualifiers can exceed dchar.max https://github.com/dlang/phobos/pull/7695