On 4/23/2010 1:49 AM, Olaf Peter wrote:
Hi,
in the example attached, the 1st test case fails on runtime:
test_phoenix_fcn.cpp(105): test 'at_c<0>( rlc )&& at_c<1>( rlc )&& at_c<2>( rlc )' failed in function 'int main(int, char**)' test_phoenix_fcn: /home/olaf/Projects/programming/cpp/boost/trunk/boost/optional/optional.hpp:591: typename boost::optional_detail::optional_base<T>::reference_type boost::optional<T>::get() [with T = double]: Assertion `this->is_initialized()' failed. Aborted
the 2nd (with defined WANT_TO_HAVE) doesn't compile. This is the goal.
Where is my misunderstanding here? To to get it working correctly?
Your operator()s are wrong (C++ error, unrelated to phoenix).
Try this:
#if WANT_TO_HAVE
template