|
Boost-Commit : |
Subject: [Boost-commit] svn:boost r76496 - in branches/release: . boost boost/phoenix/object boost/phoenix/object/detail boost/phoenix/operator boost/phoenix/operator/preprocessed boost/phoenix/stl/container boost/serialization libs libs/phoenix/doc/starter_kit libs/phoenix/preprocess libs/phoenix/test libs/phoenix/test/operator libs/phoenix/test/regression
From: hartmut.kaiser_at_[hidden]
Date: 2012-01-14 15:18:38
Author: hkaiser
Date: 2012-01-14 15:18:36 EST (Sat, 14 Jan 2012)
New Revision: 76496
URL: http://svn.boost.org/trac/boost/changeset/76496
Log:
Phoenix: merging changes from trunk (as requested by heller)
Added:
branches/release/libs/phoenix/test/regression/bug6040.cpp
- copied unchanged from r75069, /trunk/libs/phoenix/test/regression/bug6040.cpp
Properties modified:
branches/release/ (props changed)
branches/release/boost/ (props changed)
branches/release/boost/serialization/ (props changed)
branches/release/libs/ (props changed)
Text files modified:
branches/release/boost/phoenix/object/const_cast.hpp | 2
branches/release/boost/phoenix/object/detail/new_eval.hpp | 4
branches/release/boost/phoenix/object/dynamic_cast.hpp | 2
branches/release/boost/phoenix/object/reinterpret_cast.hpp | 2
branches/release/boost/phoenix/object/static_cast.hpp | 2
branches/release/boost/phoenix/operator/member.hpp | 2
branches/release/boost/phoenix/operator/preprocessed/member_10.hpp | 2
branches/release/boost/phoenix/operator/preprocessed/member_20.hpp | 2
branches/release/boost/phoenix/operator/preprocessed/member_30.hpp | 2
branches/release/boost/phoenix/operator/preprocessed/member_40.hpp | 2
branches/release/boost/phoenix/operator/preprocessed/member_50.hpp | 2
branches/release/boost/phoenix/stl/container/container.hpp | 84 ++++++++++++++++++++-------------------
branches/release/boost/serialization/export.hpp | 2
branches/release/boost/serialization/extended_type_info.hpp | 14 ++++++
branches/release/libs/phoenix/doc/starter_kit/operator.qbk | 6 ++
branches/release/libs/phoenix/doc/starter_kit/values.qbk | 9 ++-
branches/release/libs/phoenix/preprocess/wave.cfg | 8 +++
branches/release/libs/phoenix/test/Jamfile | 1
branches/release/libs/phoenix/test/operator/member.cpp | 20 +++-----
19 files changed, 98 insertions(+), 70 deletions(-)
Modified: branches/release/boost/phoenix/object/const_cast.hpp
==============================================================================
--- branches/release/boost/phoenix/object/const_cast.hpp (original)
+++ branches/release/boost/phoenix/object/const_cast.hpp 2012-01-14 15:18:36 EST (Sat, 14 Jan 2012)
@@ -29,7 +29,7 @@
struct result;
template <typename This, typename Target, typename Source, typename Context>
- struct result<This(Target const &, Source const&, Context)>
+ struct result<This(Target, Source, Context)>
: detail::result_of::target<Target>
{};
Modified: branches/release/boost/phoenix/object/detail/new_eval.hpp
==============================================================================
--- branches/release/boost/phoenix/object/detail/new_eval.hpp (original)
+++ branches/release/boost/phoenix/object/detail/new_eval.hpp 2012-01-14 15:18:36 EST (Sat, 14 Jan 2012)
@@ -31,8 +31,8 @@
#pragma wave option(preserve: 1)
#endif
-#define BOOST_PHOENIX_ITERATION_PARAMS \
- (3, (2, BOOST_PHOENIX_COMPOSITE_LIMIT, \
+#define BOOST_PHOENIX_ITERATION_PARAMS \
+ (3, (2, BOOST_PHOENIX_COMPOSITE_LIMIT, \
<boost/phoenix/object/detail/new_eval.hpp>))
#include BOOST_PHOENIX_ITERATE()
Modified: branches/release/boost/phoenix/object/dynamic_cast.hpp
==============================================================================
--- branches/release/boost/phoenix/object/dynamic_cast.hpp (original)
+++ branches/release/boost/phoenix/object/dynamic_cast.hpp 2012-01-14 15:18:36 EST (Sat, 14 Jan 2012)
@@ -29,7 +29,7 @@
struct result;
template <typename This, typename Target, typename Source, typename Context>
- struct result<This(Target const &, Source const&, Context)>
+ struct result<This(Target, Source, Context)>
: detail::result_of::target<Target>
{};
Modified: branches/release/boost/phoenix/object/reinterpret_cast.hpp
==============================================================================
--- branches/release/boost/phoenix/object/reinterpret_cast.hpp (original)
+++ branches/release/boost/phoenix/object/reinterpret_cast.hpp 2012-01-14 15:18:36 EST (Sat, 14 Jan 2012)
@@ -29,7 +29,7 @@
struct result;
template <typename This, typename Target, typename Source, typename Context>
- struct result<This(Target const &, Source const&, Context)>
+ struct result<This(Target, Source, Context)>
: detail::result_of::target<Target>
{};
Modified: branches/release/boost/phoenix/object/static_cast.hpp
==============================================================================
--- branches/release/boost/phoenix/object/static_cast.hpp (original)
+++ branches/release/boost/phoenix/object/static_cast.hpp 2012-01-14 15:18:36 EST (Sat, 14 Jan 2012)
@@ -29,7 +29,7 @@
struct result;
template <typename This, typename Target, typename Source, typename Context>
- struct result<This(Target const &, Source const&, Context)>
+ struct result<This(Target, Source, Context)>
: detail::result_of::target<Target>
{};
Modified: branches/release/boost/phoenix/operator/member.hpp
==============================================================================
--- branches/release/boost/phoenix/operator/member.hpp (original)
+++ branches/release/boost/phoenix/operator/member.hpp 2012-01-14 15:18:36 EST (Sat, 14 Jan 2012)
@@ -44,7 +44,7 @@
template <typename Object, typename MemPtr>
inline
- typename enable_if<
+ typename boost::enable_if<
is_member_function_pointer<MemPtr>
, detail::mem_fun_ptr_gen<actor<Object>, MemPtr> const
>::type
Modified: branches/release/boost/phoenix/operator/preprocessed/member_10.hpp
==============================================================================
--- branches/release/boost/phoenix/operator/preprocessed/member_10.hpp (original)
+++ branches/release/boost/phoenix/operator/preprocessed/member_10.hpp 2012-01-14 15:18:36 EST (Sat, 14 Jan 2012)
@@ -10,7 +10,7 @@
namespace expression { template <typename Lhs, typename Rhs> struct mem_ptr : expr<proto::tag:: mem_ptr, Lhs, Rhs> {}; typedef proto::functional::make_expr<proto::tag:: mem_ptr> make_mem_ptr; } namespace rule { struct mem_ptr : expression:: mem_ptr<meta_grammar, meta_grammar> {}; } template <typename Dummy> struct meta_grammar::case_<proto::tag:: mem_ptr, Dummy> : enable_rule<rule:: mem_ptr, Dummy> {};
template <typename Object, typename MemPtr>
inline
- typename enable_if<
+ typename boost::enable_if<
is_member_function_pointer<MemPtr>
, detail::mem_fun_ptr_gen<actor<Object>, MemPtr> const
>::type
Modified: branches/release/boost/phoenix/operator/preprocessed/member_20.hpp
==============================================================================
--- branches/release/boost/phoenix/operator/preprocessed/member_20.hpp (original)
+++ branches/release/boost/phoenix/operator/preprocessed/member_20.hpp 2012-01-14 15:18:36 EST (Sat, 14 Jan 2012)
@@ -10,7 +10,7 @@
namespace expression { template <typename Lhs, typename Rhs> struct mem_ptr : expr<proto::tag:: mem_ptr, Lhs, Rhs> {}; typedef proto::functional::make_expr<proto::tag:: mem_ptr> make_mem_ptr; } namespace rule { struct mem_ptr : expression:: mem_ptr<meta_grammar, meta_grammar> {}; } template <typename Dummy> struct meta_grammar::case_<proto::tag:: mem_ptr, Dummy> : enable_rule<rule:: mem_ptr, Dummy> {};
template <typename Object, typename MemPtr>
inline
- typename enable_if<
+ typename boost::enable_if<
is_member_function_pointer<MemPtr>
, detail::mem_fun_ptr_gen<actor<Object>, MemPtr> const
>::type
Modified: branches/release/boost/phoenix/operator/preprocessed/member_30.hpp
==============================================================================
--- branches/release/boost/phoenix/operator/preprocessed/member_30.hpp (original)
+++ branches/release/boost/phoenix/operator/preprocessed/member_30.hpp 2012-01-14 15:18:36 EST (Sat, 14 Jan 2012)
@@ -10,7 +10,7 @@
namespace expression { template <typename Lhs, typename Rhs> struct mem_ptr : expr<proto::tag:: mem_ptr, Lhs, Rhs> {}; typedef proto::functional::make_expr<proto::tag:: mem_ptr> make_mem_ptr; } namespace rule { struct mem_ptr : expression:: mem_ptr<meta_grammar, meta_grammar> {}; } template <typename Dummy> struct meta_grammar::case_<proto::tag:: mem_ptr, Dummy> : enable_rule<rule:: mem_ptr, Dummy> {};
template <typename Object, typename MemPtr>
inline
- typename enable_if<
+ typename boost::enable_if<
is_member_function_pointer<MemPtr>
, detail::mem_fun_ptr_gen<actor<Object>, MemPtr> const
>::type
Modified: branches/release/boost/phoenix/operator/preprocessed/member_40.hpp
==============================================================================
--- branches/release/boost/phoenix/operator/preprocessed/member_40.hpp (original)
+++ branches/release/boost/phoenix/operator/preprocessed/member_40.hpp 2012-01-14 15:18:36 EST (Sat, 14 Jan 2012)
@@ -10,7 +10,7 @@
namespace expression { template <typename Lhs, typename Rhs> struct mem_ptr : expr<proto::tag:: mem_ptr, Lhs, Rhs> {}; typedef proto::functional::make_expr<proto::tag:: mem_ptr> make_mem_ptr; } namespace rule { struct mem_ptr : expression:: mem_ptr<meta_grammar, meta_grammar> {}; } template <typename Dummy> struct meta_grammar::case_<proto::tag:: mem_ptr, Dummy> : enable_rule<rule:: mem_ptr, Dummy> {};
template <typename Object, typename MemPtr>
inline
- typename enable_if<
+ typename boost::enable_if<
is_member_function_pointer<MemPtr>
, detail::mem_fun_ptr_gen<actor<Object>, MemPtr> const
>::type
Modified: branches/release/boost/phoenix/operator/preprocessed/member_50.hpp
==============================================================================
--- branches/release/boost/phoenix/operator/preprocessed/member_50.hpp (original)
+++ branches/release/boost/phoenix/operator/preprocessed/member_50.hpp 2012-01-14 15:18:36 EST (Sat, 14 Jan 2012)
@@ -10,7 +10,7 @@
namespace expression { template <typename Lhs, typename Rhs> struct mem_ptr : expr<proto::tag:: mem_ptr, Lhs, Rhs> {}; typedef proto::functional::make_expr<proto::tag:: mem_ptr> make_mem_ptr; } namespace rule { struct mem_ptr : expression:: mem_ptr<meta_grammar, meta_grammar> {}; } template <typename Dummy> struct meta_grammar::case_<proto::tag:: mem_ptr, Dummy> : enable_rule<rule:: mem_ptr, Dummy> {};
template <typename Object, typename MemPtr>
inline
- typename enable_if<
+ typename boost::enable_if<
is_member_function_pointer<MemPtr>
, detail::mem_fun_ptr_gen<actor<Object>, MemPtr> const
>::type
Modified: branches/release/boost/phoenix/stl/container/container.hpp
==============================================================================
--- branches/release/boost/phoenix/stl/container/container.hpp (original)
+++ branches/release/boost/phoenix/stl/container/container.hpp 2012-01-14 15:18:36 EST (Sat, 14 Jan 2012)
@@ -2,7 +2,7 @@
Copyright (c) 2004 Angus Leeming
Copyright (c) 2004 Joel de Guzman
- Distributed under the Boost Software License, Version 1.0. (See accompanying
+ Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
==============================================================================*/
#ifndef BOOST_PHOENIX_STL_CONTAINER_CONTAINER_HPP
@@ -98,7 +98,7 @@
{
typedef typename add_reference<C>::type type;
};
-
+
template <
typename This
, typename C
@@ -109,7 +109,7 @@
{
typedef typename add_reference<C>::type type;
};
-
+
template <
typename This
, typename C
@@ -189,7 +189,7 @@
template <typename This, typename C>
struct result<This(C&)>
{
- typedef
+ typedef
typename const_qualified_reference_of<C>::type
type;
};
@@ -482,7 +482,7 @@
struct result<This(C &, Arg1)>
: result_of::insert<C, Arg1>
{};
-
+
template <
typename This
, typename C
@@ -492,7 +492,7 @@
struct result<This(C &, Arg1, Arg2)>
: result_of::insert<C, Arg1, Arg2>
{};
-
+
template <
typename This
, typename C
@@ -786,41 +786,45 @@
// The lazy functions themselves.
//
///////////////////////////////////////////////////////////////////////////////
- BOOST_PHOENIX_ADAPT_CALLABLE(assign, boost::phoenix::stl::assign, 2)
- BOOST_PHOENIX_ADAPT_CALLABLE(assign, boost::phoenix::stl::assign, 3)
- BOOST_PHOENIX_ADAPT_CALLABLE(assign, boost::phoenix::stl::assign, 4)
- BOOST_PHOENIX_ADAPT_CALLABLE(at, ::boost::phoenix::stl::at_impl, 2)
- BOOST_PHOENIX_ADAPT_CALLABLE(back, stl::back, 1)
- BOOST_PHOENIX_ADAPT_CALLABLE(begin, stl::begin, 1)
- BOOST_PHOENIX_ADAPT_CALLABLE(capacity, stl::capacity, 1)
- BOOST_PHOENIX_ADAPT_CALLABLE(clear, stl::clear, 1)
- BOOST_PHOENIX_ADAPT_CALLABLE(empty, stl::empty, 1)
- BOOST_PHOENIX_ADAPT_CALLABLE(end, stl::end, 1)
- BOOST_PHOENIX_ADAPT_CALLABLE(erase, stl::erase, 2)
- BOOST_PHOENIX_ADAPT_CALLABLE(erase, stl::erase, 3)
- BOOST_PHOENIX_ADAPT_CALLABLE(front, stl::front, 1)
- BOOST_PHOENIX_ADAPT_CALLABLE(get_allocator, stl::get_allocator, 1)
- BOOST_PHOENIX_ADAPT_CALLABLE(insert, stl::insert, 2)
- BOOST_PHOENIX_ADAPT_CALLABLE(insert, stl::insert, 3)
- BOOST_PHOENIX_ADAPT_CALLABLE(insert, stl::insert, 4)
- BOOST_PHOENIX_ADAPT_CALLABLE(key_comp, stl::key_comp, 1)
- BOOST_PHOENIX_ADAPT_CALLABLE(max_size, stl::max_size, 1)
- BOOST_PHOENIX_ADAPT_CALLABLE(pop_back, stl::pop_back, 1)
- BOOST_PHOENIX_ADAPT_CALLABLE(pop_front, stl::pop_front, 1)
- BOOST_PHOENIX_ADAPT_CALLABLE(push_back, stl::push_back, 2)
- BOOST_PHOENIX_ADAPT_CALLABLE(push_front, stl::push_front, 2)
- BOOST_PHOENIX_ADAPT_CALLABLE(rbegin, stl::rbegin, 1)
- BOOST_PHOENIX_ADAPT_CALLABLE(rend, stl::rend, 1)
- BOOST_PHOENIX_ADAPT_CALLABLE(reserve, stl::reserve, 2)
- BOOST_PHOENIX_ADAPT_CALLABLE(resize, stl::resize, 2)
- BOOST_PHOENIX_ADAPT_CALLABLE(resize, stl::resize, 3)
- BOOST_PHOENIX_ADAPT_CALLABLE(size, stl::size, 1)
- BOOST_PHOENIX_ADAPT_CALLABLE(splice, stl::splice, 2)
- BOOST_PHOENIX_ADAPT_CALLABLE(splice, stl::splice, 3)
- BOOST_PHOENIX_ADAPT_CALLABLE(splice, stl::splice, 4)
- BOOST_PHOENIX_ADAPT_CALLABLE(splice, stl::splice, 5)
- BOOST_PHOENIX_ADAPT_CALLABLE(value_comp, stl::value_comp, 1)
+ namespace adl_barrier
+ {
+ BOOST_PHOENIX_ADAPT_CALLABLE(assign, boost::phoenix::stl::assign, 2)
+ BOOST_PHOENIX_ADAPT_CALLABLE(assign, boost::phoenix::stl::assign, 3)
+ BOOST_PHOENIX_ADAPT_CALLABLE(assign, boost::phoenix::stl::assign, 4)
+ BOOST_PHOENIX_ADAPT_CALLABLE(at, ::boost::phoenix::stl::at_impl, 2)
+ BOOST_PHOENIX_ADAPT_CALLABLE(back, stl::back, 1)
+ BOOST_PHOENIX_ADAPT_CALLABLE(begin, stl::begin, 1)
+ BOOST_PHOENIX_ADAPT_CALLABLE(capacity, stl::capacity, 1)
+ BOOST_PHOENIX_ADAPT_CALLABLE(clear, stl::clear, 1)
+ BOOST_PHOENIX_ADAPT_CALLABLE(empty, stl::empty, 1)
+ BOOST_PHOENIX_ADAPT_CALLABLE(end, stl::end, 1)
+ BOOST_PHOENIX_ADAPT_CALLABLE(erase, stl::erase, 2)
+ BOOST_PHOENIX_ADAPT_CALLABLE(erase, stl::erase, 3)
+ BOOST_PHOENIX_ADAPT_CALLABLE(front, stl::front, 1)
+ BOOST_PHOENIX_ADAPT_CALLABLE(get_allocator, stl::get_allocator, 1)
+ BOOST_PHOENIX_ADAPT_CALLABLE(insert, stl::insert, 2)
+ BOOST_PHOENIX_ADAPT_CALLABLE(insert, stl::insert, 3)
+ BOOST_PHOENIX_ADAPT_CALLABLE(insert, stl::insert, 4)
+ BOOST_PHOENIX_ADAPT_CALLABLE(key_comp, stl::key_comp, 1)
+ BOOST_PHOENIX_ADAPT_CALLABLE(max_size, stl::max_size, 1)
+ BOOST_PHOENIX_ADAPT_CALLABLE(pop_back, stl::pop_back, 1)
+ BOOST_PHOENIX_ADAPT_CALLABLE(pop_front, stl::pop_front, 1)
+ BOOST_PHOENIX_ADAPT_CALLABLE(push_back, stl::push_back, 2)
+ BOOST_PHOENIX_ADAPT_CALLABLE(push_front, stl::push_front, 2)
+ BOOST_PHOENIX_ADAPT_CALLABLE(rbegin, stl::rbegin, 1)
+ BOOST_PHOENIX_ADAPT_CALLABLE(rend, stl::rend, 1)
+ BOOST_PHOENIX_ADAPT_CALLABLE(reserve, stl::reserve, 2)
+ BOOST_PHOENIX_ADAPT_CALLABLE(resize, stl::resize, 2)
+ BOOST_PHOENIX_ADAPT_CALLABLE(resize, stl::resize, 3)
+ BOOST_PHOENIX_ADAPT_CALLABLE(size, stl::size, 1)
+ BOOST_PHOENIX_ADAPT_CALLABLE(splice, stl::splice, 2)
+ BOOST_PHOENIX_ADAPT_CALLABLE(splice, stl::splice, 3)
+ BOOST_PHOENIX_ADAPT_CALLABLE(splice, stl::splice, 4)
+ BOOST_PHOENIX_ADAPT_CALLABLE(splice, stl::splice, 5)
+ BOOST_PHOENIX_ADAPT_CALLABLE(value_comp, stl::value_comp, 1)
+ }
+ using namespace phoenix::adl_barrier;
}} // namespace boost::phoenix
#endif // BOOST_PHOENIX_STL_CONTAINERS_HPP
Modified: branches/release/boost/serialization/export.hpp
==============================================================================
--- branches/release/boost/serialization/export.hpp (original)
+++ branches/release/boost/serialization/export.hpp 2012-01-14 15:18:36 EST (Sat, 14 Jan 2012)
@@ -124,7 +124,7 @@
template<class T>
struct guid_initializer
-{
+{
void export_guid(mpl::false_) const {
// generates the statically-initialized objects whose constructors
// register the information allowing serialization of T objects
Modified: branches/release/boost/serialization/extended_type_info.hpp
==============================================================================
--- branches/release/boost/serialization/extended_type_info.hpp (original)
+++ branches/release/boost/serialization/extended_type_info.hpp 2012-01-14 15:18:36 EST (Sat, 14 Jan 2012)
@@ -91,9 +91,21 @@
template<class T>
struct guid_defined : boost::mpl::false_ {};
+
+namespace ext {
+ template <typename T>
+ struct guid_impl
+ {
+ static inline const char * call()
+ {
+ return NULL;
+ }
+ };
+}
+
template<class T>
inline const char * guid(){
- return NULL;
+ return ext::guid_impl<T>::call();
}
} // namespace serialization
Modified: branches/release/libs/phoenix/doc/starter_kit/operator.qbk
==============================================================================
--- branches/release/libs/phoenix/doc/starter_kit/operator.qbk (original)
+++ branches/release/libs/phoenix/doc/starter_kit/operator.qbk 2012-01-14 15:18:36 EST (Sat, 14 Jan 2012)
@@ -40,6 +40,12 @@
x[ref(i)] // illegal (x is not a phoenix primitive or expression)
ref(x[ref(i)]) // illegal (x is not a phoenix primitive or expression)
+Why are the last two expression illegal? Although `operator[]` looks as
+much like a binary operator as `operator=` above it; the difference is
+that the former must be a member (i.e. `x` must have an `operator[]`
+that takes a phoenix primitive or expression as its argument). This will
+most likely not be the case.
+
[blurb __tip__ Learn more about operators [link phoenix.modules.operator here.]]
[heading First Practical Example]
Modified: branches/release/libs/phoenix/doc/starter_kit/values.qbk
==============================================================================
--- branches/release/libs/phoenix/doc/starter_kit/values.qbk (original)
+++ branches/release/libs/phoenix/doc/starter_kit/values.qbk 2012-01-14 15:18:36 EST (Sat, 14 Jan 2012)
@@ -20,10 +20,11 @@
[heading Lazy Evaluation]
-Confused? `val(3)` is a unary function, you say? Yes it is. However, read
-carefully: /"evaluates to a nullary function"/. `val(3)` evaluates to (returns) a
-nullary function. Aha! `val(3)` returns a function! So, since `val(3)` returns a
-function, you can invoke it. Example:
+Confused? `val` is a unary function and `val(3)` invokes it, you say?
+Yes. However, read carefully: /"evaluates to a nullary function"/.
+`val(3)` evaluates to (returns) a nullary function. Aha! `val(3)`
+returns a function! So, since `val(3)` returns a function, you can
+invoke it. Example:
std::cout << val(3)() << std::endl;
Modified: branches/release/libs/phoenix/preprocess/wave.cfg
==============================================================================
--- branches/release/libs/phoenix/preprocess/wave.cfg (original)
+++ branches/release/libs/phoenix/preprocess/wave.cfg 2012-01-14 15:18:36 EST (Sat, 14 Jan 2012)
@@ -1,9 +1,17 @@
-DBOOST_PHOENIX_DONT_USE_PREPROCESSED_FILES
-DBOOST_PHOENIX_CREATE_PREPROCESSED_FILES
-S/home/thomas/programming/boost/trunk
+-S/home/heller/programming/boost/trunk
+-S/home/cip/ce/sithhell/programming/boost
-S/usr/lib/gcc/x86_64-unknown-linux-gnu/4.6.0/include
+-S/usr/lib/gcc/x86_64-unknown-linux-gnu/4.6.1/include
+-S/usr/lib/gcc/i486-linux-gnu/4.4.5/include
-S/usr/include/c++/4.6.0
+-S/usr/include/c++/4.6.1
+-S/usr/include/c++/4.4.5
-S/usr/include/c++/4.6.0/x86_64-unknown-linux-gnu
+-S/usr/include/c++/4.6.1/x86_64-unknown-linux-gnu
+-S/usr/include/c++/4.4.5/i486-linux-gnu
-S/usr/include
--variadics
-NBOOST_FUSION_ADAPT_TPL_STRUCT_NO_PARTIAL
Modified: branches/release/libs/phoenix/test/Jamfile
==============================================================================
--- branches/release/libs/phoenix/test/Jamfile (original)
+++ branches/release/libs/phoenix/test/Jamfile 2012-01-14 15:18:36 EST (Sat, 14 Jan 2012)
@@ -117,6 +117,7 @@
[ run regression/bug4853.cpp ]
[ run regression/bug5626.cpp ]
[ run regression/bug5968.cpp ]
+ [ run regression/bug6040.cpp ]
;
test-suite phoenix_include :
Modified: branches/release/libs/phoenix/test/operator/member.cpp
==============================================================================
--- branches/release/libs/phoenix/test/operator/member.cpp (original)
+++ branches/release/libs/phoenix/test/operator/member.cpp 2012-01-14 15:18:36 EST (Sat, 14 Jan 2012)
@@ -43,21 +43,17 @@
Test* ptr = &test;
BOOST_TEST((val(ptr)->*&Test::value)() == 1);
- /*
BOOST_TEST((val(cptr)->*&Test::value)() == 1);
BOOST_TEST((arg1->*&Test::value)(cptr) == 1);
- */
- /*
((val(ptr)->*&Test::value) = 2)();
BOOST_TEST(test.value == 2);
- */
- BOOST_TEST((val(ptr)->*&Test::func)(3)() == 3);
+ BOOST_TEST((val(ptr)->*&Test::func)(val(3))() == 3);
int i = 33;
BOOST_TEST((arg1->*&Test::func)(arg2)(cptr, i) == i);
- BOOST_TEST((val(cptr)->*&Test::func)(4)() == 4);
+ //BOOST_TEST((val(cptr)->*&Test::func)(4)() == 4);
BOOST_TEST((val(ptr)->*&Test::dunc)()() == 10);
BOOST_TEST((arg1->*&Test::func)(5)(ptr) == 5);
@@ -65,32 +61,32 @@
shared_ptr<Test> sptr(new Test(test));
- //BOOST_TEST((arg1->*&Test::value)(sptr) == 2);
+ BOOST_TEST((arg1->*&Test::value)(sptr) == 2);
BOOST_TEST((arg1->*&Test::func)(6)(sptr) == 6);
scoped_ptr<Test> scptr(new Test(test));
- //BOOST_TEST((arg1->*&Test::value)(scptr) == 2);
+ BOOST_TEST((arg1->*&Test::value)(scptr) == 2);
BOOST_TEST((arg1->*&Test::func)(7)(scptr) == 7);
shared_ptr<const Test> csptr(new Test(test));
- //BOOST_TEST((arg1->*&Test::value)(csptr) == 2);
+ BOOST_TEST((arg1->*&Test::value)(csptr) == 2);
BOOST_TEST((arg1->*&Test::func)(8)(csptr) == 8);
scoped_ptr<const Test> cscptr(new Test(test));
- //BOOST_TEST((arg1->*&Test::value)(cscptr) == 2);
+ BOOST_TEST((arg1->*&Test::value)(cscptr) == 2);
BOOST_TEST((arg1->*&Test::func)(9)(cscptr) == 9);
std::auto_ptr<Test> aptr(new Test(test));
- //BOOST_TEST((arg1->*&Test::value)(aptr) == 2);
+ BOOST_TEST((arg1->*&Test::value)(aptr) == 2);
BOOST_TEST((arg1->*&Test::func)(10)(aptr) == 10);
std::auto_ptr<const Test> captr(new Test(test));
- //BOOST_TEST((arg1->*&Test::value)(captr) == 2);
+ BOOST_TEST((arg1->*&Test::value)(captr) == 2);
BOOST_TEST((arg1->*&Test::func)(11)(captr) == 11);
return boost::report_errors();
Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk