https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107466

--- Comment #2 from Jonathan Wakely <redi at gcc dot gnu.org> ---
I don't think this is a compiler bug. Converting that value to uint16_t is
narrowing.

The problem is that the standard requires subtract_with_carry_engine<T> to use
linear_congruential_engine<T, 40014u, 0u, 2147483563u> where each of those
values is converted to T.

This appears to mean subtract_with_carry_engine cannot be used with uint16_t.

Reply via email to