Boost logo

Boost Users :

Subject: Re: [Boost-users] [accumulator] extract_result during initialization
From: Eric Niebler (eric_at_[hidden])
Date: 2009-03-05 12:44:41


er wrote:
> er wrote:
> I would have
>> thought that this is feasible because accumulator_set initializes (a)
>> before (b), but apparently b.x_ is initialized with a garbage value.
<snip>

It's not going to work without major surgery. The accumulator_set has
one data member, which is a Fusion list of all the accumulators in the
set. It is not initialized in-place; rather, a separate routine creates
and initializes a Fusion list, which is then copied into the
accumulator_set in the last step. That means you'll get garbage if you
try to extract results from an accumulator_set while it's being constructed.

It would be nice if the list were initialized in-place, but I'm not sure
how to do that, and I don't have the time to look into it. Please file a
feature request. In the mean time, is there any way you can change your
design so that it doesn't depend on the ability to extract results from
a partially constructed accumulator set? It seems dodgy at best to rely
on this behavior.

-- 
Eric Niebler
BoostPro Computing
http://www.boostpro.com

Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net