From: Ralf W. Grosse-Kunstleve (rwgk_at_[hidden])
Date: 2006-03-14 12:42:10
--- Howard Hinnant <howard.hinnant_at_[hidden]> wrote:
> This is one of the areas where the emulated version is a little
> different from the real deal. You can work around this in one of two
> foo(unsigned size)
> unique_ptr<int> result(new int[size]);
> // do something to result
> // if an exception is thrown result will be cleaned up
> return move(result);
The additional move() does the trick for gcc 3.4 and EDG 245. Thanks!
Unfortunately EDG 238 chokes (enable_if_does_not_work_on_this_compiler<T>) and
gcc 2.96 gives an ICE. I'd be ready to finally give up on gcc 2.96, but EDG 238
is still important (sigh). I'll have to stick to my quick-and-dirty,
old-fashioned auto_array emulation for the time being.
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk