[libcxx-commits] [PATCH] D92731: [libc++] [docs] Mark LWG3055 as complete. Use string_view instead of string in path::operator+=(char).

Marek Kurdej via Phabricator via libcxx-commits libcxx-commits at lists.llvm.org
Sun Dec 6 08:41:32 PST 2020


curdeius created this revision.
curdeius requested review of this revision.
Herald added a project: libc++.
Herald added a subscriber: libcxx-commits.
Herald added a reviewer: libc++.

The issue didn't change the behaviour which is tested in libcxx/test/std/input.output/filesystems/class.path/path.member/path.concat.pass.cpp.

The change to use string_view instead of string is not really necessary.

<filesystem> was added in commit 998a5c88312066fcc2b2de1358edc76587611354 (Implement <filesystem>).


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D92731

Files:
  libcxx/docs/Cxx2aStatusIssuesStatus.csv
  libcxx/include/filesystem


Index: libcxx/include/filesystem
===================================================================
--- libcxx/include/filesystem
+++ libcxx/include/filesystem
@@ -940,9 +940,8 @@
   template <class _ECharT>
   typename enable_if<__can_convert_char<_ECharT>::value, path&>::type
   operator+=(_ECharT __x) {
-    basic_string<_ECharT> __tmp;
-    __tmp += __x;
-    _PathCVT<_ECharT>::__append_source(__pn_, __tmp);
+    _PathCVT<_ECharT>::__append_source(__pn_,
+                                       basic_string_view<_ECharT>(&__x, 1));
     return *this;
   }
 
Index: libcxx/docs/Cxx2aStatusIssuesStatus.csv
===================================================================
--- libcxx/docs/Cxx2aStatusIssuesStatus.csv
+++ libcxx/docs/Cxx2aStatusIssuesStatus.csv
@@ -143,7 +143,7 @@
 "`3182 <https://wg21.link/LWG3182>`__","Specification of ``Same``\  could be clearer","Kona","",""
 "","","","",""
 "`2899 <https://wg21.link/LWG2899>`__","``is_(nothrow_)move_constructible``\  and ``tuple``\ , ``optional``\  and ``unique_ptr``\ ","Cologne","",""
-"`3055 <https://wg21.link/LWG3055>`__","``path::operator+=(*single-character*)``\  misspecified","Cologne","",""
+"`3055 <https://wg21.link/LWG3055>`__","``path::operator+=(*single-character*)``\  misspecified","Cologne","|Complete|","7.0"
 "`3158 <https://wg21.link/LWG3158>`__","``tuple(allocator_arg_t, const Alloc&)``\  should be conditionally explicit","Cologne","",""
 "`3169 <https://wg21.link/LWG3169>`__","``ranges``\  permutation generators discard useful information","Cologne","",""
 "`3183 <https://wg21.link/LWG3183>`__","Normative permission to specialize Ranges variable templates","Cologne","",""


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D92731.309773.patch
Type: text/x-patch
Size: 1671 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/libcxx-commits/attachments/20201206/164e664c/attachment.bin>


More information about the libcxx-commits mailing list