On Fri, Jan 24, 2014 at 11:47:17AM -0500, Jason Merrill wrote: > On 01/15/2014 02:08 PM, Jason Merrill wrote: > >1) Because atomics do have user-provided constructors, we were going > >down the constructor path and not realizing that it just gave us > >zero-initialization. Fixed by calling maybe_constant_value and avoiding > >adding extra zero-initialization to the end of the CONSTRUCTOR. > > > >2) If we aren't dealing with zero-initialization, when we > >value-initialize a bunch of elements at the end of an array, we really > >ought to use a loop rather than initializing them individually. Fixed > >by using RANGE_EXPR and build_vec_init. > > We really aren't ready to use RANGE_EXPR, as it turns out; a lot of > places need to be changed to handle it, and this doesn't seem like > the time in the development cycle for that sort of change. So I'm > reverting #2 until the next stage 1, to fix c++/59886.
Wouldn't my patch then be useful short-term partial fix for 4.9 and we could revert it when RANGE_EXPR are committed again to 5.0? Jakub