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:
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
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
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110102
Richard Biener changed:
What|Removed |Added
Target Milestone|--- |13.2
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:
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&&)
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
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110102
Jonathan Wakely changed:
What|Removed |Added
Ever confirmed|0 |1
Keywords|