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.

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

Boost-users list run by williamkempf at, kalb at, bjorn.karlsson at, gregod at, wekempf at