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

Jonathan Wakely <redi at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Last reconfirmed|                            |2022-11-04
             Status|UNCONFIRMED                 |NEW
          Component|c++                         |libstdc++
     Ever confirmed|0                           |1

--- Comment #4 from Jonathan Wakely <redi at gcc dot gnu.org> ---
That's not the standard. That text comes from a general requirement in
[rand.req.gen] that applies to all engines and adaptors. The more specific
requirements for subtract_with_carry_engine say it uses a specialization of
linear_congruential_engine that is ill-formed. More specific requirements
overrule more general ones.

I've created a new LWG issue so this will get fixed in the standard. The best
suggestion so far is that it should use
linear_congruential_engine<uint_least32_t,...> instead of using its own
result_type.

Reassigning to component:libstdc++.

Reply via email to