|
Boost-Commit : |
From: eric_at_[hidden]
Date: 2008-01-29 02:03:09
Author: eric_niebler
Date: 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
New Revision: 43009
URL: http://svn.boost.org/trac/boost/changeset/43009
Log:
add tests for deep_copy, make_expr, unpack_expr; fix bugs; update more copyrights
Added:
trunk/libs/xpressive/proto/test/deep_copy.cpp (contents, props changed)
trunk/libs/xpressive/proto/test/make_expr.cpp (contents, props changed)
Text files modified:
trunk/boost/xpressive/proto/deep_copy.hpp | 19 +++-
trunk/boost/xpressive/proto/literal.hpp | 23 +++++-
trunk/boost/xpressive/proto/make_expr.hpp | 151 ++++++++++++++++++++++++++-------------
trunk/boost/xpressive/proto/proto_fwd.hpp | 2
trunk/libs/xpressive/proto/test/Jamfile.v2 | 10 +-
trunk/libs/xpressive/proto/test/calculator.cpp | 2
trunk/libs/xpressive/proto/test/examples.cpp | 2
trunk/libs/xpressive/proto/test/lambda.cpp | 2
trunk/libs/xpressive/proto/test/matches.cpp | 2
trunk/libs/xpressive/proto/test/proto_fusion.cpp | 2
trunk/libs/xpressive/proto/test/proto_fusion_s.cpp | 2
trunk/libs/xpressive/proto/test/toy_spirit.cpp | 2
trunk/libs/xpressive/proto/test/toy_spirit2.cpp | 2
trunk/libs/xpressive/test/misc1.cpp | 2
trunk/libs/xpressive/test/misc2.cpp | 2
trunk/libs/xpressive/test/multiple_defs1.cpp | 2
trunk/libs/xpressive/test/multiple_defs2.cpp | 2
trunk/libs/xpressive/test/test.hpp | 2
trunk/libs/xpressive/test/test1.cpp | 2
trunk/libs/xpressive/test/test1.hpp | 2
trunk/libs/xpressive/test/test10.cpp | 2
trunk/libs/xpressive/test/test10.hpp | 2
trunk/libs/xpressive/test/test10u.cpp | 2
trunk/libs/xpressive/test/test11.cpp | 2
trunk/libs/xpressive/test/test11.hpp | 2
trunk/libs/xpressive/test/test11u.cpp | 2
trunk/libs/xpressive/test/test1u.cpp | 2
trunk/libs/xpressive/test/test2.cpp | 2
trunk/libs/xpressive/test/test2.hpp | 2
trunk/libs/xpressive/test/test2u.cpp | 2
trunk/libs/xpressive/test/test3.cpp | 2
trunk/libs/xpressive/test/test3.hpp | 2
trunk/libs/xpressive/test/test3u.cpp | 2
trunk/libs/xpressive/test/test4.cpp | 2
trunk/libs/xpressive/test/test4.hpp | 2
trunk/libs/xpressive/test/test4u.cpp | 2
trunk/libs/xpressive/test/test5.cpp | 2
trunk/libs/xpressive/test/test5.hpp | 2
trunk/libs/xpressive/test/test5u.cpp | 2
trunk/libs/xpressive/test/test6.cpp | 2
trunk/libs/xpressive/test/test6.hpp | 2
trunk/libs/xpressive/test/test6u.cpp | 2
trunk/libs/xpressive/test/test7.cpp | 2
trunk/libs/xpressive/test/test7.hpp | 2
trunk/libs/xpressive/test/test7u.cpp | 2
trunk/libs/xpressive/test/test8.cpp | 2
trunk/libs/xpressive/test/test8.hpp | 2
trunk/libs/xpressive/test/test8u.cpp | 2
trunk/libs/xpressive/test/test9.cpp | 2
trunk/libs/xpressive/test/test9.hpp | 2
trunk/libs/xpressive/test/test9u.cpp | 2
trunk/libs/xpressive/test/test_actions.cpp | 2
trunk/libs/xpressive/test/test_assert.cpp | 2
trunk/libs/xpressive/test/test_basic_regex.cpp | 2
trunk/libs/xpressive/test/test_cycles.cpp | 2
trunk/libs/xpressive/test/test_dynamic.cpp | 2
trunk/libs/xpressive/test/test_match_results.cpp | 2
trunk/libs/xpressive/test/test_non_char.cpp | 2
trunk/libs/xpressive/test/test_partial_match.cpp | 2
trunk/libs/xpressive/test/test_regex_algorithms.cpp | 2
trunk/libs/xpressive/test/test_regex_compiler.cpp | 2
trunk/libs/xpressive/test/test_regex_constants.cpp | 2
trunk/libs/xpressive/test/test_regex_error.cpp | 2
trunk/libs/xpressive/test/test_regex_iterator.cpp | 2
trunk/libs/xpressive/test/test_regex_primitives.cpp | 2
trunk/libs/xpressive/test/test_regex_token_iterator.cpp | 2
trunk/libs/xpressive/test/test_regex_traits.cpp | 2
trunk/libs/xpressive/test/test_skip.cpp | 2
trunk/libs/xpressive/test/test_static.cpp | 2
trunk/libs/xpressive/test/test_sub_match.cpp | 2
70 files changed, 208 insertions(+), 127 deletions(-)
Modified: trunk/boost/xpressive/proto/deep_copy.hpp
==============================================================================
--- trunk/boost/xpressive/proto/deep_copy.hpp (original)
+++ trunk/boost/xpressive/proto/deep_copy.hpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -14,7 +14,7 @@
#include <boost/preprocessor/cat.hpp>
#include <boost/preprocessor/repetition/enum.hpp>
#include <boost/preprocessor/iteration/iterate.hpp>
- #include <boost/call_traits.hpp>
+ #include <boost/type_traits/is_function.hpp>
#include <boost/xpressive/proto/proto_fwd.hpp>
#include <boost/xpressive/proto/expr.hpp>
#include <boost/xpressive/proto/generate.hpp>
@@ -30,7 +30,16 @@
template<typename Expr>
struct deep_copy_impl<Expr, 0>
{
- typedef typename terminal<typename result_of::arg<Expr>::type>::type expr_type;
+ typedef BOOST_PROTO_UNCVREF(typename Expr::proto_arg0) raw_terminal_type;
+ // can't store a function type in a terminal.
+ typedef
+ typename mpl::if_<
+ is_function<raw_terminal_type>
+ , typename Expr::proto_arg0
+ , raw_terminal_type
+ >::type
+ actual_terminal_type;
+ typedef typename terminal<actual_terminal_type>::type expr_type;
typedef typename Expr::proto_domain::template apply<expr_type>::type type;
template<typename Expr2>
@@ -68,8 +77,10 @@
/// all internal nodes and most terminals held by reference
/// are instead held by value.
///
- /// \attention Terminals of reference-to-array type and of
- /// reference-to-function type are left unchanged.
+ /// \attention Terminals of reference-to-function type are
+ /// left unchanged. Terminals of reference-to-array type are
+ /// stored by value, which can cause a large amount of data
+ /// to be passed by value and stored on the stack.
struct deep_copy
{
BOOST_PROTO_CALLABLE()
Modified: trunk/boost/xpressive/proto/literal.hpp
==============================================================================
--- trunk/boost/xpressive/proto/literal.hpp (original)
+++ trunk/boost/xpressive/proto/literal.hpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -11,6 +11,7 @@
#define BOOST_PROTO_LITERAL_HPP_EAN_01_03_2007
#include <boost/xpressive/proto/detail/prefix.hpp>
+#include <boost/config.hpp>
#include <boost/xpressive/proto/proto_fwd.hpp>
#include <boost/xpressive/proto/expr.hpp>
#include <boost/xpressive/proto/traits.hpp>
@@ -21,13 +22,24 @@
{
namespace utility
{
+ /// \brief A simple wrapper for a terminal, provided for
+ /// ease of use.
+ ///
+ /// A simple wrapper for a terminal, provided for
+ /// ease of use. In all cases, <tt>literal\<X\> l(x);</tt>
+ /// is equivalent to <tt>terminal\<X\>::type l = {x};</tt>.
+ ///
+ /// The \c Domain template parameter defaults to
+ /// \c proto::default_domain.
template<typename T, typename Domain>
struct literal
: extends<typename terminal<T>::type, literal<T, Domain>, Domain>
{
+ private:
typedef typename terminal<T>::type terminal_type;
typedef extends<terminal_type, literal<T, Domain>, Domain> base_type;
+ public:
template<typename U>
literal(U &u)
: base_type(terminal_type::make(u))
@@ -47,8 +59,11 @@
};
}
- /// lit
- ///
+ /// \brief A helper function for creating a \c literal\<\> wrapper.
+ /// \param t The object to wrap.
+ /// \return literal\<T &\>(t)
+ /// \attention The returned value holds the argument by reference.
+ /// \throw nothrow
template<typename T>
inline literal<T &> lit(T &t)
{
@@ -60,14 +75,14 @@
template<typename T>
inline literal<T const &> lit(T const &t)
{
- #ifdef _MSC_VER
+ #ifdef BOOST_MSVC
#pragma warning(push)
#pragma warning(disable: 4180) // warning C4180: qualifier applied to function type has no meaning; ignored
#endif
return literal<T const &>(t);
- #ifdef _MSC_VER
+ #ifdef BOOST_MSVC
#pragma warning(pop)
#endif
}
Modified: trunk/boost/xpressive/proto/make_expr.hpp
==============================================================================
--- trunk/boost/xpressive/proto/make_expr.hpp (original)
+++ trunk/boost/xpressive/proto/make_expr.hpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -49,6 +49,7 @@
#include <boost/mpl/apply_wrap.hpp>
#include <boost/utility/enable_if.hpp>
#include <boost/type_traits/is_same.hpp>
+ #include <boost/type_traits/add_const.hpp>
#include <boost/type_traits/add_reference.hpp>
#include <boost/type_traits/remove_reference.hpp>
#include <boost/xpressive/proto/proto_fwd.hpp>
@@ -59,22 +60,10 @@
# include <boost/fusion/include/at.hpp>
# include <boost/fusion/include/value_at.hpp>
# include <boost/fusion/include/size.hpp>
- namespace boost { namespace proto { namespace detail
- {
- namespace fusion_ = fusion;
- }}}
#else
# include <boost/spirit/fusion/sequence/at.hpp>
# include <boost/spirit/fusion/sequence/value_at.hpp>
# include <boost/spirit/fusion/sequence/size.hpp>
- namespace boost { namespace proto { namespace detail { namespace fusion_
- {
- namespace result_of = fusion::meta;
- template<int N, typename Seq>
- typename result_of::at_c<Seq, N>::type at_c(Seq &seq) { return fusion::at<N>(seq); }
- template<int N, typename Seq>
- typename result_of::at_c<Seq const, N>::type at_c(Seq const &seq) { return fusion::at<N>(seq); }
- }}}}
#endif
#include <boost/xpressive/proto/detail/suffix.hpp>
@@ -107,14 +96,19 @@
///
# define BOOST_PROTO_AT_TYPE(Z, N, DATA) \
typename remove_reference< \
- typename detail::fusion_::result_of::value_at_c<BOOST_PP_TUPLE_ELEM(2, 0, DATA), N >::type \
+ typename add_const< \
+ typename fusion::BOOST_PROTO_FUSION_RESULT_OF::value_at_c< \
+ BOOST_PP_TUPLE_ELEM(2, 0, DATA) \
+ , N \
+ >::type \
+ >::type \
>::type \
/**/
/// INTERNAL ONLY
///
# define BOOST_PROTO_AT(Z, N, DATA) \
- detail::fusion_::at_c<N >(BOOST_PP_TUPLE_ELEM(2, 0, DATA)) \
+ fusion::BOOST_PROTO_FUSION_AT_C(N, BOOST_PP_TUPLE_ELEM(2, 0, DATA)) \
/**/
/// INTERNAL ONLY
@@ -382,14 +376,23 @@
{
typedef proto::expr<
tag::terminal
- , args0<typename fusion_::result_of::value_at_c<Sequence, 0>::type>
+ , args0<
+ typename add_reference<
+ typename add_const<
+ typename fusion::BOOST_PROTO_FUSION_RESULT_OF::value_at_c<
+ Sequence
+ , 0
+ >::type
+ >::type
+ >::type
+ >
> expr_type;
typedef typename Domain::template apply<expr_type>::type type;
static type const call(Sequence const &sequence)
{
- expr_type that = {fusion_::at_c<0>(sequence)};
+ expr_type that = {fusion::BOOST_PROTO_FUSION_AT_C(0, sequence)};
return Domain::make(that);
}
};
@@ -442,7 +445,7 @@
Tag
, deduce_domain
, Sequence
- , detail::fusion_::result_of::size<Sequence>::type::value
+ , fusion::BOOST_PROTO_FUSION_RESULT_OF::size<Sequence>::type::value
>
{};
@@ -452,7 +455,7 @@
Tag
, Domain
, Sequence
- , detail::fusion_::result_of::size<Sequence>::type::value
+ , fusion::BOOST_PROTO_FUSION_RESULT_OF::size<Sequence>::type::value
>
{};
@@ -522,7 +525,7 @@
template<typename A>
typename result_of::make_expr<Tag, Domain, A>::type const
- operator ()(A &a) const
+ operator ()(A &a BOOST_PROTO_DISABLE_IF_IS_CONST(A)) const
{
return result_of::make_expr<Tag, Domain, A>::call(a);
}
@@ -545,18 +548,19 @@
template<typename This, typename A>
struct result<This(A)>
- : result_of::make_expr<tag::terminal, Domain, A>
- {};
+ {
+ typedef typename result_of::make_expr<tag::terminal, Domain, A>::type type;
+ };
template<typename A>
- typename result_of::make_expr<tag::terminal, Domain, A>::type
- operator ()(A &a) const
+ typename result_of::make_expr<tag::terminal, Domain, A>::type const
+ operator ()(A &a BOOST_PROTO_DISABLE_IF_IS_CONST(A)) const
{
return result_of::make_expr<tag::terminal, Domain, A>::call(a);
}
template<typename A>
- typename result_of::make_expr<tag::terminal, Domain, A const>::type
+ typename result_of::make_expr<tag::terminal, Domain, A const>::type const
operator ()(A const &a) const
{
return result_of::make_expr<tag::terminal, Domain, A const>::call(a);
@@ -574,19 +578,29 @@
template<typename This, typename Sequence>
struct result<This(Sequence)>
- : result_of::unpack_expr<
- Tag
- , Domain
- , BOOST_PROTO_UNCVREF(Sequence)
- >
- {};
+ {
+ typedef
+ typename result_of::unpack_expr<
+ Tag
+ , Domain
+ , typename remove_reference<Sequence>::type
+ >::type
+ type;
+ };
template<typename Sequence>
- typename result_of::unpack_expr<Tag, Domain, Sequence>::type
- operator ()(Sequence const &sequence) const
+ typename result_of::unpack_expr<Tag, Domain, Sequence>::type const
+ operator ()(Sequence &sequence BOOST_PROTO_DISABLE_IF_IS_CONST(Sequence)) const
{
return result_of::unpack_expr<Tag, Domain, Sequence>::call(sequence);
}
+
+ template<typename Sequence>
+ typename result_of::unpack_expr<Tag, Domain, Sequence const>::type const
+ operator ()(Sequence const &sequence) const
+ {
+ return result_of::unpack_expr<Tag, Domain, Sequence const>::call(sequence);
+ }
};
template<typename Tag, typename Domain>
@@ -594,17 +608,34 @@
{
BOOST_PROTO_CALLABLE()
- template<typename Sequence>
- struct result
- : result_of::unpack_expr<Tag, Domain, Sequence>
- {};
+ template<typename Sig>
+ struct result {};
+
+ template<typename This, typename Sequence>
+ struct result<This(Sequence)>
+ {
+ typedef
+ typename result_of::unpack_expr<
+ Tag
+ , Domain
+ , typename remove_reference<Sequence>::type
+ >::type
+ type;
+ };
template<typename Sequence>
typename proto::result_of::unpack_expr<Tag, Domain, Sequence>::type
- operator ()(Sequence const &sequence) const
+ operator ()(Sequence &sequence BOOST_PROTO_DISABLE_IF_IS_CONST(Sequence)) const
{
return result_of::unpack_expr<Tag, Domain, Sequence>::call(sequence);
}
+
+ template<typename Sequence>
+ typename proto::result_of::unpack_expr<Tag, Domain, Sequence const>::type const
+ operator ()(Sequence const &sequence) const
+ {
+ return result_of::unpack_expr<Tag, Domain, Sequence const>::call(sequence);
+ }
};
template<typename Tag, typename Domain>
@@ -622,20 +653,37 @@
is_domain<Sequence>
, result_of::unpack_expr<Tag, Sequence>
>::type const
- unpack_expr(Sequence const &sequence)
+ unpack_expr(Sequence &sequence BOOST_PROTO_DISABLE_IF_IS_CONST(Sequence))
{
return result_of::unpack_expr<Tag, Sequence>::call(sequence);
}
+ template<typename Tag, typename Sequence>
+ typename lazy_disable_if<
+ is_domain<Sequence>
+ , result_of::unpack_expr<Tag, Sequence const>
+ >::type const
+ unpack_expr(Sequence const &sequence)
+ {
+ return result_of::unpack_expr<Tag, Sequence const>::call(sequence);
+ }
+
/// \overload
///
template<typename Tag, typename Domain, typename Sequence2>
typename result_of::unpack_expr<Tag, Domain, Sequence2>::type const
- unpack_expr(Sequence2 const &sequence2)
+ unpack_expr(Sequence2 &sequence2 BOOST_PROTO_DISABLE_IF_IS_CONST(Sequence2))
{
return result_of::unpack_expr<Tag, Domain, Sequence2>::call(sequence2);
}
+ template<typename Tag, typename Domain, typename Sequence2>
+ typename result_of::unpack_expr<Tag, Domain, Sequence2 const>::type const
+ unpack_expr(Sequence2 const &sequence2)
+ {
+ return result_of::unpack_expr<Tag, Domain, Sequence2 const>::call(sequence2);
+ }
+
/// make_expr
///
template<typename Tag, typename A0>
@@ -718,7 +766,7 @@
typedef proto::expr<
Tag
, BOOST_PP_CAT(args, N)<
- BOOST_PP_ENUM(N, BOOST_PROTO_AS_ARG_AT_TYPE, (Sequence const, Domain))
+ BOOST_PP_ENUM(N, BOOST_PROTO_AS_ARG_AT_TYPE, (Sequence, Domain))
>
> expr_type;
@@ -758,16 +806,19 @@
template<typename This BOOST_PP_ENUM_TRAILING_PARAMS(N, typename A)>
struct result<This(BOOST_PP_ENUM_PARAMS(N, A))>
- : result_of::make_expr<
- Tag
- , Domain
- BOOST_PP_ENUM_TRAILING_BINARY_PARAMS(
- N
- , typename remove_reference<A
- , >::type BOOST_PP_INTERCEPT
- )
- >
- {};
+ {
+ typedef
+ typename result_of::make_expr<
+ Tag
+ , Domain
+ BOOST_PP_ENUM_TRAILING_BINARY_PARAMS(
+ N
+ , typename remove_reference<A
+ , >::type BOOST_PP_INTERCEPT
+ )
+ >::type
+ type;
+ };
template<BOOST_PP_ENUM_PARAMS(N, typename A)>
typename result_of::make_expr<
Modified: trunk/boost/xpressive/proto/proto_fwd.hpp
==============================================================================
--- trunk/boost/xpressive/proto/proto_fwd.hpp (original)
+++ trunk/boost/xpressive/proto/proto_fwd.hpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -50,11 +50,13 @@
#define BOOST_PROTO_DEFINE_FUSION_CATEGORY(X)
#define BOOST_PROTO_FUSION_RESULT_OF meta
#define BOOST_PROTO_FUSION_EXTENSION meta
+#define BOOST_PROTO_FUSION_AT_C(N, X) at<N>(X)
#else
#define BOOST_PROTO_DEFINE_FUSION_TAG(X) typedef X fusion_tag;
#define BOOST_PROTO_DEFINE_FUSION_CATEGORY(X) typedef X category;
#define BOOST_PROTO_FUSION_RESULT_OF result_of
#define BOOST_PROTO_FUSION_EXTENSION extension
+#define BOOST_PROTO_FUSION_AT_C(N, X) at_c<N>(X)
#endif
#include <boost/xpressive/proto/detail/suffix.hpp> // must be last include
Modified: trunk/libs/xpressive/proto/test/Jamfile.v2
==============================================================================
--- trunk/libs/xpressive/proto/test/Jamfile.v2 (original)
+++ trunk/libs/xpressive/proto/test/Jamfile.v2 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -19,13 +19,15 @@
test-suite "proto"
:
+ [ run calculator.cpp ]
+ [ run deep_copy.cpp ]
+ [ run examples.cpp ]
+ [ run lambda.cpp ]
+ [ run make_expr.cpp ]
+ [ run matches.cpp ]
[ run proto_fusion.cpp : : : <toolset>gcc:<cxxflags>-ftemplate-depth-1024 ]
[ run proto_fusion_s.cpp ]
[ run toy_spirit.cpp ]
[ run toy_spirit2.cpp ]
- [ run calculator.cpp ]
- [ run lambda.cpp ]
- [ run matches.cpp ]
- [ run examples.cpp ]
;
Modified: trunk/libs/xpressive/proto/test/calculator.cpp
==============================================================================
--- trunk/libs/xpressive/proto/test/calculator.cpp (original)
+++ trunk/libs/xpressive/proto/test/calculator.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// calculator.hpp
//
-// Copyright 2006 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Added: trunk/libs/xpressive/proto/test/deep_copy.cpp
==============================================================================
--- (empty file)
+++ trunk/libs/xpressive/proto/test/deep_copy.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -0,0 +1,49 @@
+///////////////////////////////////////////////////////////////////////////////
+// deep_copy.hpp
+//
+// Copyright 2008 Eric Niebler. 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)
+
+#include <boost/xpressive/proto/proto.hpp>
+#include <boost/test/unit_test.hpp>
+
+using namespace boost;
+
+void foo() {}
+
+void test1()
+{
+ using namespace proto;
+
+ int i = 42;
+ terminal<int &>::type t1 = {i};
+ terminal<int>::type r1 = deep_copy(t1);
+ BOOST_CHECK_EQUAL(42, arg(r1));
+
+ plus<terminal<int>::type, terminal<int>::type>::type r2 = deep_copy(t1 + 24);
+ BOOST_CHECK_EQUAL(42, arg(left(r2)));
+ BOOST_CHECK_EQUAL(24, arg(right(r2)));
+
+ char buf[16] = {'\0'};
+ terminal<char (&)[16]>::type t3 = {buf};
+ terminal<char[16]>::type r3 = deep_copy(t3);
+
+ terminal<void(&)()>::type t4 = {foo};
+ plus<terminal<void(&)()>::type, terminal<int>::type>::type r4 = deep_copy(t4 + t1);
+ BOOST_CHECK_EQUAL(42, arg(right(r4)));
+ BOOST_CHECK_EQUAL(&foo, &arg(left(r4)));
+}
+
+using namespace unit_test;
+///////////////////////////////////////////////////////////////////////////////
+// init_unit_test_suite
+//
+test_suite* init_unit_test_suite( int argc, char* argv[] )
+{
+ test_suite *test = BOOST_TEST_SUITE("test deep_copy of proto parse trees");
+
+ test->add(BOOST_TEST_CASE(&test1));
+
+ return test;
+}
Modified: trunk/libs/xpressive/proto/test/examples.cpp
==============================================================================
--- trunk/libs/xpressive/proto/test/examples.cpp (original)
+++ trunk/libs/xpressive/proto/test/examples.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// examples2.hpp
//
-// Copyright 2006 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/proto/test/lambda.cpp
==============================================================================
--- trunk/libs/xpressive/proto/test/lambda.cpp (original)
+++ trunk/libs/xpressive/proto/test/lambda.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// lambda.hpp
//
-// Copyright 2006 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Added: trunk/libs/xpressive/proto/test/make_expr.cpp
==============================================================================
--- (empty file)
+++ trunk/libs/xpressive/proto/test/make_expr.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -0,0 +1,126 @@
+///////////////////////////////////////////////////////////////////////////////
+// make_expr.hpp
+//
+// Copyright 2008 Eric Niebler. 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)
+
+#include <sstream>
+#include <boost/xpressive/proto/proto.hpp>
+#include <boost/fusion/include/vector.hpp>
+#include <boost/test/unit_test.hpp>
+
+using namespace boost;
+using namespace proto;
+
+template<typename E> struct ewrap;
+
+struct mydomain
+ : domain<generator<ewrap> >
+{};
+
+template<typename E> struct ewrap
+ : extends<E, ewrap<E>, mydomain>
+{
+ explicit ewrap(E const &e = E())
+ : extends<E, ewrap<E>, mydomain>(e)
+ {}
+};
+
+void test_make_expr()
+{
+ int i = 42;
+ terminal<int const &>::type t1 = make_expr<tag::terminal>(1);
+ terminal<int &>::type t2 = make_expr<tag::terminal>(i);
+ posit<terminal<int const &>::type>::type p1 = make_expr<tag::posit>(1);
+ posit<terminal<int &>::type>::type p2 = make_expr<tag::posit>(i);
+ BOOST_CHECK_EQUAL(proto::arg(proto::arg(p2)), 42);
+
+ ewrap<posit<ewrap<terminal<int &>::type> >::type> p3 = make_expr<tag::posit, mydomain>(i);
+ BOOST_CHECK_EQUAL(proto::arg(proto::arg(p3)), 42);
+
+ ewrap<plus<
+ proto::ref_<ewrap<posit<ewrap<terminal<int &>::type> >::type> const> // BUGBUG the const is an error here
+ , ewrap<terminal<int const &>::type>
+ >::type> p4 = make_expr<tag::plus>(p3, 0);
+ BOOST_CHECK_EQUAL(proto::arg(proto::arg(proto::left(p4))), 42);
+}
+
+void test_make_expr2()
+{
+ int i = 42;
+ terminal<int const &>::type t1 = functional::make_expr<tag::terminal>()(1);
+ terminal<int &>::type t2 = functional::make_expr<tag::terminal>()(i);
+ posit<terminal<int const &>::type>::type p1 = functional::make_expr<tag::posit>()(1);
+ posit<terminal<int &>::type>::type p2 = functional::make_expr<tag::posit>()(i);
+ BOOST_CHECK_EQUAL(proto::arg(proto::arg(p2)), 42);
+
+ ewrap<posit<ewrap<terminal<int &>::type> >::type> p3 = functional::make_expr<tag::posit, mydomain>()(i);
+ BOOST_CHECK_EQUAL(proto::arg(proto::arg(p3)), 42);
+
+ ewrap<plus<
+ proto::ref_<ewrap<posit<ewrap<terminal<int &>::type> >::type> const> // BUGBUG the const is an error here
+ , ewrap<terminal<int const &>::type>
+ >::type> p4 = functional::make_expr<tag::plus, mydomain>()(p3, 0);
+ BOOST_CHECK_EQUAL(proto::arg(proto::arg(proto::left(p4))), 42);
+}
+
+void test_unpack_expr()
+{
+ int i = 42;
+ fusion::vector<int> v1(1);
+ fusion::vector<int&> v2(i);
+ terminal<int const &>::type t1 = unpack_expr<tag::terminal>(v1);
+ terminal<int &>::type t2 = unpack_expr<tag::terminal>(v2);
+ posit<terminal<int const &>::type>::type p1 = unpack_expr<tag::posit>(v1);
+ posit<terminal<int &>::type>::type p2 = unpack_expr<tag::posit>(v2);
+ BOOST_CHECK_EQUAL(proto::arg(proto::arg(p2)), 42);
+
+ ewrap<posit<ewrap<terminal<int &>::type> >::type> p3 = unpack_expr<tag::posit, mydomain>(v2);
+ BOOST_CHECK_EQUAL(proto::arg(proto::arg(p3)), 42);
+
+ fusion::vector<ewrap<posit<ewrap<terminal<int &>::type> >::type> &, int> v3(p3, 0);
+ ewrap<plus<
+ proto::ref_<ewrap<posit<ewrap<terminal<int &>::type> >::type> >
+ , ewrap<terminal<int const &>::type>
+ >::type> p4 = unpack_expr<tag::plus>(v3);
+ BOOST_CHECK_EQUAL(proto::arg(proto::arg(proto::left(p4))), 42);
+}
+
+void test_unpack_expr2()
+{
+ int i = 42;
+ fusion::vector<int> v1(1);
+ fusion::vector<int&> v2(i);
+ terminal<int const &>::type t1 = functional::unpack_expr<tag::terminal>()(v1);
+ terminal<int &>::type t2 = functional::unpack_expr<tag::terminal>()(v2);
+ posit<terminal<int const &>::type>::type p1 = functional::unpack_expr<tag::posit>()(v1);
+ posit<terminal<int &>::type>::type p2 = functional::unpack_expr<tag::posit>()(v2);
+ BOOST_CHECK_EQUAL(proto::arg(proto::arg(p2)), 42);
+
+ ewrap<posit<ewrap<terminal<int &>::type> >::type> p3 = functional::unpack_expr<tag::posit, mydomain>()(v2);
+ BOOST_CHECK_EQUAL(proto::arg(proto::arg(p3)), 42);
+
+ fusion::vector<ewrap<posit<ewrap<terminal<int &>::type> >::type> &, int> v3(p3, 0);
+ ewrap<plus<
+ proto::ref_<ewrap<posit<ewrap<terminal<int &>::type> >::type> >
+ , ewrap<terminal<int const &>::type>
+ >::type> p4 = functional::unpack_expr<tag::plus>()(v3);
+ BOOST_CHECK_EQUAL(proto::arg(proto::arg(proto::left(p4))), 42);
+}
+
+using namespace unit_test;
+///////////////////////////////////////////////////////////////////////////////
+// init_unit_test_suite
+//
+test_suite* init_unit_test_suite( int argc, char* argv[] )
+{
+ test_suite *test = BOOST_TEST_SUITE("test make_expr, unpack_expr and friends");
+
+ test->add(BOOST_TEST_CASE(&test_make_expr));
+ test->add(BOOST_TEST_CASE(&test_make_expr2));
+ test->add(BOOST_TEST_CASE(&test_unpack_expr));
+ test->add(BOOST_TEST_CASE(&test_unpack_expr2));
+
+ return test;
+}
Modified: trunk/libs/xpressive/proto/test/matches.cpp
==============================================================================
--- trunk/libs/xpressive/proto/test/matches.cpp (original)
+++ trunk/libs/xpressive/proto/test/matches.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// matches.hpp
//
-// Copyright 2006 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/proto/test/proto_fusion.cpp
==============================================================================
--- trunk/libs/xpressive/proto/test/proto_fusion.cpp (original)
+++ trunk/libs/xpressive/proto/test/proto_fusion.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// proto_fusion.cpp
//
-// Copyright 2006 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/proto/test/proto_fusion_s.cpp
==============================================================================
--- trunk/libs/xpressive/proto/test/proto_fusion_s.cpp (original)
+++ trunk/libs/xpressive/proto/test/proto_fusion_s.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// proto_fusion_s.cpp
//
-// Copyright 2006 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/proto/test/toy_spirit.cpp
==============================================================================
--- trunk/libs/xpressive/proto/test/toy_spirit.cpp (original)
+++ trunk/libs/xpressive/proto/test/toy_spirit.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// toy_spirit.hpp
//
-// Copyright 2006 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/proto/test/toy_spirit2.cpp
==============================================================================
--- trunk/libs/xpressive/proto/test/toy_spirit2.cpp (original)
+++ trunk/libs/xpressive/proto/test/toy_spirit2.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// toy_spirit3.cpp
//
-// Copyright 2006 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/misc1.cpp
==============================================================================
--- trunk/libs/xpressive/test/misc1.cpp (original)
+++ trunk/libs/xpressive/test/misc1.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// misc1.hpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/misc2.cpp
==============================================================================
--- trunk/libs/xpressive/test/misc2.cpp (original)
+++ trunk/libs/xpressive/test/misc2.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// misc2.hpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/multiple_defs1.cpp
==============================================================================
--- trunk/libs/xpressive/test/multiple_defs1.cpp (original)
+++ trunk/libs/xpressive/test/multiple_defs1.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// multiple_defs1.cpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/multiple_defs2.cpp
==============================================================================
--- trunk/libs/xpressive/test/multiple_defs2.cpp (original)
+++ trunk/libs/xpressive/test/multiple_defs2.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// multiple_defs2.cpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/test.hpp
==============================================================================
--- trunk/libs/xpressive/test/test.hpp (original)
+++ trunk/libs/xpressive/test/test.hpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// test.hpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/test1.cpp
==============================================================================
--- trunk/libs/xpressive/test/test1.cpp (original)
+++ trunk/libs/xpressive/test/test1.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// test1.cpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/test1.hpp
==============================================================================
--- trunk/libs/xpressive/test/test1.hpp (original)
+++ trunk/libs/xpressive/test/test1.hpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// test1.h
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/test10.cpp
==============================================================================
--- trunk/libs/xpressive/test/test10.cpp (original)
+++ trunk/libs/xpressive/test/test10.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// test10.cpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/test10.hpp
==============================================================================
--- trunk/libs/xpressive/test/test10.hpp (original)
+++ trunk/libs/xpressive/test/test10.hpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// test10.hpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/test10u.cpp
==============================================================================
--- trunk/libs/xpressive/test/test10u.cpp (original)
+++ trunk/libs/xpressive/test/test10u.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// test10.cpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/test11.cpp
==============================================================================
--- trunk/libs/xpressive/test/test11.cpp (original)
+++ trunk/libs/xpressive/test/test11.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// test11.cpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/test11.hpp
==============================================================================
--- trunk/libs/xpressive/test/test11.hpp (original)
+++ trunk/libs/xpressive/test/test11.hpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// test11.hpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/test11u.cpp
==============================================================================
--- trunk/libs/xpressive/test/test11u.cpp (original)
+++ trunk/libs/xpressive/test/test11u.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// test11u.cpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/test1u.cpp
==============================================================================
--- trunk/libs/xpressive/test/test1u.cpp (original)
+++ trunk/libs/xpressive/test/test1u.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// test1.cpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/test2.cpp
==============================================================================
--- trunk/libs/xpressive/test/test2.cpp (original)
+++ trunk/libs/xpressive/test/test2.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// test2.cpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/test2.hpp
==============================================================================
--- trunk/libs/xpressive/test/test2.hpp (original)
+++ trunk/libs/xpressive/test/test2.hpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// test2.hpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/test2u.cpp
==============================================================================
--- trunk/libs/xpressive/test/test2u.cpp (original)
+++ trunk/libs/xpressive/test/test2u.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// test2.cpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/test3.cpp
==============================================================================
--- trunk/libs/xpressive/test/test3.cpp (original)
+++ trunk/libs/xpressive/test/test3.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// test3.cpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/test3.hpp
==============================================================================
--- trunk/libs/xpressive/test/test3.hpp (original)
+++ trunk/libs/xpressive/test/test3.hpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// test3.hpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/test3u.cpp
==============================================================================
--- trunk/libs/xpressive/test/test3u.cpp (original)
+++ trunk/libs/xpressive/test/test3u.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// test3.cpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/test4.cpp
==============================================================================
--- trunk/libs/xpressive/test/test4.cpp (original)
+++ trunk/libs/xpressive/test/test4.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// test4.cpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/test4.hpp
==============================================================================
--- trunk/libs/xpressive/test/test4.hpp (original)
+++ trunk/libs/xpressive/test/test4.hpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// test4.hpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/test4u.cpp
==============================================================================
--- trunk/libs/xpressive/test/test4u.cpp (original)
+++ trunk/libs/xpressive/test/test4u.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// test4.cpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/test5.cpp
==============================================================================
--- trunk/libs/xpressive/test/test5.cpp (original)
+++ trunk/libs/xpressive/test/test5.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// test5.cpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/test5.hpp
==============================================================================
--- trunk/libs/xpressive/test/test5.hpp (original)
+++ trunk/libs/xpressive/test/test5.hpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// test5.hpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/test5u.cpp
==============================================================================
--- trunk/libs/xpressive/test/test5u.cpp (original)
+++ trunk/libs/xpressive/test/test5u.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// test5.cpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/test6.cpp
==============================================================================
--- trunk/libs/xpressive/test/test6.cpp (original)
+++ trunk/libs/xpressive/test/test6.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// test6.cpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/test6.hpp
==============================================================================
--- trunk/libs/xpressive/test/test6.hpp (original)
+++ trunk/libs/xpressive/test/test6.hpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// test6.hpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/test6u.cpp
==============================================================================
--- trunk/libs/xpressive/test/test6u.cpp (original)
+++ trunk/libs/xpressive/test/test6u.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// test6.cpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/test7.cpp
==============================================================================
--- trunk/libs/xpressive/test/test7.cpp (original)
+++ trunk/libs/xpressive/test/test7.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// test7.cpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/test7.hpp
==============================================================================
--- trunk/libs/xpressive/test/test7.hpp (original)
+++ trunk/libs/xpressive/test/test7.hpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// test7.hpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/test7u.cpp
==============================================================================
--- trunk/libs/xpressive/test/test7u.cpp (original)
+++ trunk/libs/xpressive/test/test7u.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// test7.cpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/test8.cpp
==============================================================================
--- trunk/libs/xpressive/test/test8.cpp (original)
+++ trunk/libs/xpressive/test/test8.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// test8.cpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/test8.hpp
==============================================================================
--- trunk/libs/xpressive/test/test8.hpp (original)
+++ trunk/libs/xpressive/test/test8.hpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// test8.hpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/test8u.cpp
==============================================================================
--- trunk/libs/xpressive/test/test8u.cpp (original)
+++ trunk/libs/xpressive/test/test8u.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// test8.cpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/test9.cpp
==============================================================================
--- trunk/libs/xpressive/test/test9.cpp (original)
+++ trunk/libs/xpressive/test/test9.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// test9.cpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/test9.hpp
==============================================================================
--- trunk/libs/xpressive/test/test9.hpp (original)
+++ trunk/libs/xpressive/test/test9.hpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// test9.hpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/test9u.cpp
==============================================================================
--- trunk/libs/xpressive/test/test9u.cpp (original)
+++ trunk/libs/xpressive/test/test9u.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// test9.cpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/test_actions.cpp
==============================================================================
--- trunk/libs/xpressive/test/test_actions.cpp (original)
+++ trunk/libs/xpressive/test/test_actions.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// test_actions.cpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/test_assert.cpp
==============================================================================
--- trunk/libs/xpressive/test/test_assert.cpp (original)
+++ trunk/libs/xpressive/test/test_assert.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// test_assert.cpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/test_basic_regex.cpp
==============================================================================
--- trunk/libs/xpressive/test/test_basic_regex.cpp (original)
+++ trunk/libs/xpressive/test/test_basic_regex.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// test_basic_regex.cpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/test_cycles.cpp
==============================================================================
--- trunk/libs/xpressive/test/test_cycles.cpp (original)
+++ trunk/libs/xpressive/test/test_cycles.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// test_cycles.hpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/test_dynamic.cpp
==============================================================================
--- trunk/libs/xpressive/test/test_dynamic.cpp (original)
+++ trunk/libs/xpressive/test/test_dynamic.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// test_dynamic.cpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/test_match_results.cpp
==============================================================================
--- trunk/libs/xpressive/test/test_match_results.cpp (original)
+++ trunk/libs/xpressive/test/test_match_results.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// test_match_results.cpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/test_non_char.cpp
==============================================================================
--- trunk/libs/xpressive/test/test_non_char.cpp (original)
+++ trunk/libs/xpressive/test/test_non_char.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// test_non_char.cpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/test_partial_match.cpp
==============================================================================
--- trunk/libs/xpressive/test/test_partial_match.cpp (original)
+++ trunk/libs/xpressive/test/test_partial_match.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// test_partial_match.cpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/test_regex_algorithms.cpp
==============================================================================
--- trunk/libs/xpressive/test/test_regex_algorithms.cpp (original)
+++ trunk/libs/xpressive/test/test_regex_algorithms.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// test_regex_algorithms.cpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/test_regex_compiler.cpp
==============================================================================
--- trunk/libs/xpressive/test/test_regex_compiler.cpp (original)
+++ trunk/libs/xpressive/test/test_regex_compiler.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// test_regex_compiler.cpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/test_regex_constants.cpp
==============================================================================
--- trunk/libs/xpressive/test/test_regex_constants.cpp (original)
+++ trunk/libs/xpressive/test/test_regex_constants.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// test_regex_constants.cpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/test_regex_error.cpp
==============================================================================
--- trunk/libs/xpressive/test/test_regex_error.cpp (original)
+++ trunk/libs/xpressive/test/test_regex_error.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// test_regex_error.cpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/test_regex_iterator.cpp
==============================================================================
--- trunk/libs/xpressive/test/test_regex_iterator.cpp (original)
+++ trunk/libs/xpressive/test/test_regex_iterator.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// test_regex_iterator.cpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/test_regex_primitives.cpp
==============================================================================
--- trunk/libs/xpressive/test/test_regex_primitives.cpp (original)
+++ trunk/libs/xpressive/test/test_regex_primitives.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// test_regex_primitives.cpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/test_regex_token_iterator.cpp
==============================================================================
--- trunk/libs/xpressive/test/test_regex_token_iterator.cpp (original)
+++ trunk/libs/xpressive/test/test_regex_token_iterator.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// test_regex_token_iterator.cpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/test_regex_traits.cpp
==============================================================================
--- trunk/libs/xpressive/test/test_regex_traits.cpp (original)
+++ trunk/libs/xpressive/test/test_regex_traits.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// test_regex_traits.cpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/test_skip.cpp
==============================================================================
--- trunk/libs/xpressive/test/test_skip.cpp (original)
+++ trunk/libs/xpressive/test/test_skip.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// test_skip.hpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/test_static.cpp
==============================================================================
--- trunk/libs/xpressive/test/test_static.cpp (original)
+++ trunk/libs/xpressive/test/test_static.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// test_static.cpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
Modified: trunk/libs/xpressive/test/test_sub_match.cpp
==============================================================================
--- trunk/libs/xpressive/test/test_sub_match.cpp (original)
+++ trunk/libs/xpressive/test/test_sub_match.cpp 2008-01-29 02:03:03 EST (Tue, 29 Jan 2008)
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
// test_sub_match.cpp
//
-// Copyright 2004 Eric Niebler. Distributed under the Boost
+// Copyright 2008 Eric Niebler. 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)
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