[libcxx-commits] [PATCH] D133661: [libc++] Improve binary size when using __transaction

Nikolas Klauser via Phabricator via libcxx-commits libcxx-commits at lists.llvm.org
Wed Nov 2 04:19:23 PDT 2022


philnik added inline comments.


================
Comment at: libcxx/include/__memory/uninitialized_algorithms.h:541-542
   auto __destruct_first = __first2;
-  try {
-#endif
+  auto __guard =
+      std::__make_exception_guard(_AllocatorDestroyRangeReverse<_Alloc, _Iter2>(__alloc, __destruct_first, __first2));
   while (__first1 != __last1) {
----------------
ldionne wrote:
> philnik wrote:
> > Mordante wrote:
> > > This really makes it a lot easier to review and maintain.
> > This still doesn't work, since it uses CTAD.
> Shouldn't this work since we have `_LIBCPP_CTAD_SUPPORTED_FOR_TYPE`?
The problem is that this has to work pre-C++17, not that there aren't deduction guides.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D133661/new/

https://reviews.llvm.org/D133661



More information about the libcxx-commits mailing list