lichray marked an inline comment as done. lichray added a comment. In D44865#1535823 <https://reviews.llvm.org/D44865#1535823>, @zoecarver wrote:
> - the spacing is different from the rest of libc++ (a lot of it was that way > before). That's not something I can "fix" in this patch :( > - since this is a paper it should probably be guarded with `#if > _LIBCPP_STD_VER > 17` Marshall and me agreed that we are going to apply the paper as a "bugfix." We don't want to make the constructor behave differently under different language versions. > - update the status in `www`. Done. ================ Comment at: include/variant:1110 +template <class _Base, class _Tp> +struct __overload_bool : _Base { + using _Base::operator(); ---------------- zoecarver wrote: > Is this structure 100% necessary? Couldn't `__overload` add an overload to > take care of `bool`s? Maybe something like this: > > ``` > template<class _Up> > auto operator()(_Tp, _Up&&) const > -> enable_if_t< > is_same_v<__uncvref_t<_Up>, bool>, > __identity<_Tp> > >; > ``` I'm trying to reduce the compile time cost of SFINAE by putting the bool handling logic in specializations. Repository: rCXX libc++ CHANGES SINCE LAST ACTION https://reviews.llvm.org/D44865/new/ https://reviews.llvm.org/D44865 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits