[Bug libstdc++/58764] [4.9 Regression] [lwg/2193] error: converting to ‘const std?=::vector<std::basic string<char> >=?UTF-8?Q?’ from initializer list would use explicit constructor
redi at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Thu Jan 9 12:55:00 GMT 2014
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58764
Jonathan Wakely <redi at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|SUSPENDED |ASSIGNED
Assignee|unassigned at gcc dot gnu.org |redi at gcc dot gnu.org
--- Comment #8 from Jonathan Wakely <redi at gcc dot gnu.org> ---
(In reply to Marc Glisse from comment #5)
> (In reply to Paolo Carlini from comment #4)
> > Ok, let's wait a bit more, possibly until the next meeting,
>
> The next meeting will be too late for 4.9, so that means sticking to what we
> have now.
"What we have now" for most users is what we shipped in all previous releases
up to 4.8, which allows this:
std::vector<int> v = {};
Rejecting that is a pretty serious regression.
The explicitness of the container constructors had already been questioned by
LWG 2193 when we made the change, so I consider it a mistake to make an
breaking change to conform to wording that is potentially defective.
I'm going to restore the previous constructors (so 4.9 will stick with what we
have now) until the DR is resolved one way or another.
More information about the Gcc-bugs
mailing list