Author: marshall
Date: Thu Mar  8 07:01:50 2018
New Revision: 327005

URL: http://llvm.org/viewvc/llvm-project?rev=327005&view=rev
Log:
Implement LWG#2518 - Non-member swap for propagate_const should call member swap

Modified:
    libcxx/trunk/include/experimental/propagate_const
    libcxx/trunk/www/cxx1z_status.html

Modified: libcxx/trunk/include/experimental/propagate_const
URL: 
http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/experimental/propagate_const?rev=327005&r1=327004&r2=327005&view=diff
==============================================================================
--- libcxx/trunk/include/experimental/propagate_const (original)
+++ libcxx/trunk/include/experimental/propagate_const Thu Mar  8 07:01:50 2018
@@ -463,8 +463,7 @@ template <class _Tp>
 _LIBCPP_INLINE_VISIBILITY
 _LIBCPP_CONSTEXPR void swap(propagate_const<_Tp>& __pc1, propagate_const<_Tp>& 
__pc2) _NOEXCEPT_(__is_nothrow_swappable<_Tp>::value)
 {
-  using _VSTD::swap;
-  swap(_VSTD_LFTS_V2::get_underlying(__pc1), 
_VSTD_LFTS_V2::get_underlying(__pc2));
+  __pc1.swap(__pc2);
 }
 
 template <class _Tp>

Modified: libcxx/trunk/www/cxx1z_status.html
URL: 
http://llvm.org/viewvc/llvm-project/libcxx/trunk/www/cxx1z_status.html?rev=327005&r1=327004&r2=327005&view=diff
==============================================================================
--- libcxx/trunk/www/cxx1z_status.html (original)
+++ libcxx/trunk/www/cxx1z_status.html Thu Mar  8 07:01:50 2018
@@ -375,7 +375,7 @@
        <tr><td><a href="https://wg21.link/LWG2503";>2503</a></td><td>multiline 
option should be added to syntax_option_type</td><td>Issaquah</td><td></td></tr>
        <tr><td><a href="https://wg21.link/LWG2510";>2510</a></td><td>Tag types 
should not be DefaultConstructible</td><td>Issaquah</td><td></td></tr>
        <tr><td><a href="https://wg21.link/LWG2514";>2514</a></td><td>Type 
traits must not be final</td><td>Issaquah</td><td>Complete</td></tr>
-       <tr><td><a 
href="https://wg21.link/LWG2518";>2518</a></td><td>[fund.ts.v2] Non-member swap 
for propagate_const should call member swap</td><td>Issaquah</td><td></td></tr>
+       <tr><td><a 
href="https://wg21.link/LWG2518";>2518</a></td><td>[fund.ts.v2] Non-member swap 
for propagate_const should call member 
swap</td><td>Issaquah</td><td>Complete</td></tr>
        <tr><td><a href="https://wg21.link/LWG2519";>2519</a></td><td>Iterator 
operator-= has gratuitous undefined 
behaviour</td><td>Issaquah</td><td>Complete</td></tr>
        <tr><td><a 
href="https://wg21.link/LWG2521";>2521</a></td><td>[fund.ts.v2] weak_ptr's 
converting move constructor should be modified as well for array 
support</td><td>Issaquah</td><td></td></tr>
        <tr><td><a 
href="https://wg21.link/LWG2525";>2525</a></td><td>[fund.ts.v2] 
get_memory_resource should be const and 
noexcept</td><td>Issaquah</td><td></td></tr>
@@ -504,7 +504,7 @@
 <!--   <tr><td></td><td></td><td></td><td></td></tr> -->
   </table>
 
-  <p>Last Updated: 12-Feb-2018</p>
+  <p>Last Updated: 8-Mar-2018</p>
 </div>
 </body>
 </html>


_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to