This is the mail archive of the
libstdc++@gcc.gnu.org
mailing list for the libstdc++ project.
Re: [Patch, libstdc++/64584, libstdc++/64585] Clear basic_regex after imbue and make assign exception tolerant
- From: Daniel Krügler <daniel dot kruegler at gmail dot com>
- To: Tim Shen <timshen at google dot com>
- Cc: Marc Glisse <marc dot glisse at inria dot fr>, Jonathan Wakely <jwakely at redhat dot com>, "libstdc++" <libstdc++ at gcc dot gnu dot org>
- Date: Sat, 11 Apr 2015 23:10:06 +0200
- Subject: Re: [Patch, libstdc++/64584, libstdc++/64585] Clear basic_regex after imbue and make assign exception tolerant
- Authentication-results: sourceware.org; auth=none
- References: <CAG4ZjNmMbv4c-bix8VZV8CrudrZZOgMas3cKPhLwoiTnPOMUCA at mail dot gmail dot com> <20150116121217 dot GA3360 at redhat dot com> <CAG4ZjNndkWfK_zOkO5BK66jEQ+BQS+rGQ9nDGTzrQBZfLeZNJw at mail dot gmail dot com> <CAG4ZjNnkipPA1HaAJADdVHe_C2wFaAksxu5W5KF94oEXgwQPFg at mail dot gmail dot com> <20150118002426 dot GW3360 at redhat dot com> <CAG4ZjNmMVGiSphQyg-jgjLu+uHdAABj0t8Rs+tafETM3-WBrdw at mail dot gmail dot com> <20150118012244 dot GX3360 at redhat dot com> <CAG4ZjN=y=TdPBk1FgeBYmzvj_Hqpdei9+28NfCp5Bh0tMb4d9Q at mail dot gmail dot com> <alpine dot DEB dot 2 dot 11 dot 1504112217030 dot 1616 at laptop-mg dot saclay dot inria dot fr> <CAG4ZjN=XzmZ_tT7U=1fNOS06rDSyL7VsmP=D-NUQ4FYdF5jS=A at mail dot gmail dot com>
2015-04-11 23:03 GMT+02:00 Tim Shen <timshen@google.com>:
> On Sat, Apr 11, 2015 at 8:18 PM, Marc Glisse wrote:
>> On Sat, 11 Apr 2015, Tim Shen wrote:
>>
>>> I realized that std::move() on an user defined iterator may cause
>>> compilation error, if user explicitly deletes its move ctor/assign.
>>
>>
>> That would violate the most basic iterator requirements.
>
> I'm not sure about that; [24.2.2.2] seems not to require
> MoveConstructible/MoveAssignable?
24.2.2 [iterator.iterators] requires them to be CopyConstructible and
CopyAssignable, these imply the two more reduced requirements.
- Daniel