https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107958
--- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> --- Note MSVC (with /std:c++latest) also rejects the source that is in comment #0 for the same reason as GCC: <source>(39): error C2593: 'operator =' is ambiguous <source>(25): note: could be 'PairPtr &PairPtr::operator =(const std::pair<int *,int *> &)' <source>(19): note: or 'PairPtr &PairPtr::operator =(const PairPtr &)' <source>(39): note: while trying to match the argument list '(PairPtr, initializer list)'