[libcxx-commits] [PATCH] D109066: [libc++] Implement P1951, default arguments for pair's forwarding constructor

Louis Dionne via Phabricator via libcxx-commits libcxx-commits at lists.llvm.org
Fri Sep 3 13:19:17 PDT 2021


ldionne added a comment.

In D109066#2982889 <https://reviews.llvm.org/D109066#2982889>, @Quuxplusone wrote:

> Looks like some GCC/Clang implementation divergence in re `explicit_vs_implicit_brace_init({{}, {}})`. I don't know who's correct.
> Anyway, LGTM.

Thanks. I'll look into the failure, I'll probably need to file a bug report and see who's right.

> (Mild surprise that we're backporting this still-only-tentatively-C++23 change all the way back to C++11, but I have no better suggestion.)

Yeah.. I thought about doing it strictly like I always fight for, however in this case this seems to be closer to a DR than anything else. I mean the code previously would work just as well, but it would make a copy instead by using the `pair(T1 const&, T2 const&)` ctor. So IMO this is in essence closer to a LWG issue being fixed than an actual feature. If someone disagrees, LMK and I'll look into enabling this only in C++23, like we do for features/papers.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D109066



More information about the libcxx-commits mailing list