On Mon, 20 Apr 2020 at 21:09, Ville Voutilainen <ville.voutilai...@gmail.com> wrote: > > On Sat, 18 Apr 2020 at 03:35, kamlesh kumar via Libstdc++ > <libstd...@gcc.gnu.org> wrote: > > > > On Fri, Apr 17, 2020, 10:59 PM kamlesh kumar <kamleshbha...@gmail.com> > > wrote: > > > > > Fixes all this. > > > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92156 > > > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91630 > > > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90415 > > > > > > On Fri, Apr 17, 2020 at 10:45 PM kamlesh kumar <kamleshbha...@gmail.com> > > > wrote: > > > > > > > > This patch corrects the requirement of 4,5 and 6th constructor > > > > As per https://en.cppreference.com/w/cpp/utility/any/any. > > The patch looks correct to me. We have some old cruft there, like the > overload your patch removes, it was > there to support copy-only types, but LWG issues axed that bit. This > constructor indeed should not check is_constructible, > because it'll end up instantiating this constructor itself, and > compute its constraints, and instantiate itself. > The in_place constructor doesn't have that problem, because it won't > instantiate itself.
..except the change from _Decay to decay_t looks wrong. _Decay also checks the non-sameness with any. That change shouldn't be made.