[Bug c++/110102] [13/14 regression] initializer_list ctors of containers skip Allocator_traits::construct, copies move-only type

2023-06-09 Thread cvs-commit at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110102 --- Comment #7 from CVS Commits --- The trunk branch has been updated by Jason Merrill : https://gcc.gnu.org/g:35d2c40e4ac9ba57ae82e4722e557a2028d0cf13 commit r14-1658-g35d2c40e4ac9ba57ae82e4722e557a2028d0cf13 Author: Jason Merrill Date:

[Bug c++/110102] [13/14 regression] initializer_list ctors of containers skip Allocator_traits::construct, copies move-only type

2023-06-05 Thread arthur.j.odwyer at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110102 --- Comment #6 from Arthur O'Dwyer --- (In reply to Jason Merrill from comment #5) > (In reply to Arthur O'Dwyer from comment #4) > > My first, reduced, example, where `std::list v = {1,2,3}` is accepted for > > move-only type `A`, is 100% a

[Bug c++/110102] [13/14 regression] initializer_list ctors of containers skip Allocator_traits::construct, copies move-only type

2023-06-05 Thread jason at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110102 Jason Merrill changed: What|Removed |Added Target Milestone|13.2|--- --- Comment #5 from Jason Merrill

[Bug c++/110102] [13/14 regression] initializer_list ctors of containers skip Allocator_traits::construct, copies move-only type

2023-06-05 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110102 Richard Biener changed: What|Removed |Added Target Milestone|--- |13.2

[Bug c++/110102] [13/14 regression] initializer_list ctors of containers skip Allocator_traits::construct, copies move-only type

2023-06-04 Thread arthur.j.odwyer at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110102 --- Comment #4 from Arthur O'Dwyer --- I came across the `Widget` bug in the course of writing (and it's now mentioned in) this blog post on value semantics and PMR:

[Bug c++/110102] [13/14 regression] initializer_list ctors of containers skip Allocator_traits::construct, copies move-only type

2023-06-04 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110102 --- Comment #3 from Jonathan Wakely --- In both examples we do still use allocator_traits::construct to initialize the elements, which is what matters for correct behaviour of sensible programs. For the first one we call construct(A*, int&&)

[Bug c++/110102] [13/14 regression] initializer_list ctors of containers skip Allocator_traits::construct, copies move-only type

2023-06-03 Thread jason at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110102 --- Comment #2 from Jason Merrill --- (In reply to Jonathan Wakely from comment #1) > We shouldn't be doing this transformation here, because A is a > program-defined type and we don't know its properties. True, though I wouldn't expect that

[Bug c++/110102] [13/14 regression] initializer_list ctors of containers skip Allocator_traits::construct, copies move-only type

2023-06-03 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110102 Jonathan Wakely changed: What|Removed |Added Ever confirmed|0 |1 Keywords|