[libstdc++] Add C++17clamp

Jonathan Wakely jwakely@redhat.com
Fri Jul 22 07:51:00 GMT 2016


On 21/07/16 19:38 -0400, NightStrike wrote:
>On Thu, Jul 14, 2016 at 7:50 PM, Ed Smith-Rowland <3dw4rd@verizon.net> wrote:
>> Here is an implementation of P0025
>> An algorithm to "clamp" a value between a pair of boundary values.
>>
>> Testing is almost finished - looks good so far.
>>
>> OK if testing passes?
>>
>> I didn't see a feature test in any of the SD-6 papers or P0025.
>>
>
>This is not an efficient implementation.  See here:
>
>https://gcc.gnu.org/ml/gcc-help/2014-10/msg00112.html
>
>Which I derived from this SO answer (which is sadly not the accepted
>answer at this time):
>
>http://stackoverflow.com/a/16659263
>
>I suggest using the very efficient method that requires a temporary.

That isn't a valid implementation of std::clamp, since it performs a
copy. The template argument might not even be copyable.



More information about the Gcc-patches mailing list