[libcxx] r203443 - Fix bug I introduced (enabling implicit conversions from compare function to map) in r202994. Thanks to Sebastian Redl for the catch.

Marshall Clow mclow.lists at gmail.com
Wed Apr 16 16:21:05 PDT 2014


On Apr 15, 2014, at 1:03 PM, Richard Smith <richard at metafoo.co.uk> wrote:
> On Sun, Mar 9, 2014 at 9:50 PM, Marshall Clow <mclow.lists at gmail.com> wrote:
> Author: marshall
> Date: Sun Mar  9 23:50:10 2014
> New Revision: 203443
> 
> URL: http://llvm.org/viewvc/llvm-project?rev=203443&view=rev
> Log:
> Fix bug I introduced (enabling implicit conversions from compare function to map) in r202994. Thanks to Sebastian Redl for the catch.
> 
> Modified:
>     libcxx/trunk/include/map
>     libcxx/trunk/include/set
> 
> Modified: libcxx/trunk/include/map
> URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/map?rev=203443&r1=203442&r2=203443&view=diff
> ==============================================================================
> --- libcxx/trunk/include/map (original)
> +++ libcxx/trunk/include/map Sun Mar  9 23:50:10 2014
> @@ -835,7 +835,15 @@ public:
>      typedef _VSTD::reverse_iterator<const_iterator>         const_reverse_iterator;
> 
>      _LIBCPP_INLINE_VISIBILITY
> -    map(const key_compare& __comp = key_compare())
> +    map()
> +        _NOEXCEPT_(
> +            is_nothrow_default_constructible<allocator_type>::value &&
> +            is_nothrow_default_constructible<key_compare>::value &&
> +            is_nothrow_copy_constructible<key_compare>::value)
> +        : __tree_(__vc(key_compare())) {}
> +
> +    _LIBCPP_INLINE_VISIBILITY
> +    explicit map(const key_compare& __comp)
>          _NOEXCEPT_(
>              is_nothrow_default_constructible<allocator_type>::value &&
>              is_nothrow_default_constructible<key_compare>::value &&
> 
> The is_nothrow_default_constructible<key_compare>::value here looks unnecessary; we don't default construct a key_compare here any more.

[ Other cases snipped]

Committed revision 206424 to fix this.
Thanks!

— Marshall
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20140416/f59ecfd3/attachment.html>


More information about the cfe-commits mailing list