Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r63443 - trunk/boost/spirit/home/karma/detail
From: hartmut.kaiser_at_[hidden]
Date: 2010-06-29 20:32:44


Author: hkaiser
Date: 2010-06-29 20:32:42 EDT (Tue, 29 Jun 2010)
New Revision: 63443
URL: http://svn.boost.org/trac/boost/changeset/63443

Log:
Spirit: fixing ambiguity in Karma auto_ API
Text files modified:
   trunk/boost/spirit/home/karma/detail/generate_auto.hpp | 14 ++++++++++++--
   1 files changed, 12 insertions(+), 2 deletions(-)

Modified: trunk/boost/spirit/home/karma/detail/generate_auto.hpp
==============================================================================
--- trunk/boost/spirit/home/karma/detail/generate_auto.hpp (original)
+++ trunk/boost/spirit/home/karma/detail/generate_auto.hpp 2010-06-29 20:32:42 EDT (Tue, 29 Jun 2010)
@@ -13,13 +13,19 @@
 #include <boost/spirit/home/karma/generate.hpp>
 #include <boost/spirit/home/karma/auto/create_generator.hpp>
 #include <boost/utility/enable_if.hpp>
+#include <boost/mpl/not.hpp>
+#include <boost/mpl/and.hpp>
 
 namespace boost { namespace spirit { namespace karma { namespace detail
 {
     ///////////////////////////////////////////////////////////////////////////
     template <typename Expr>
     struct generate_impl<Expr
- , typename enable_if<traits::meta_create_exists<karma::domain, Expr> >::type>
+ , typename enable_if<
+ mpl::and_<
+ traits::meta_create_exists<karma::domain, Expr>
+ , mpl::not_<traits::matches<karma::domain, Expr> > >
+ >::type>
     {
         template <typename OutputIterator>
         static bool call(
@@ -33,7 +39,11 @@
     ///////////////////////////////////////////////////////////////////////////
     template <typename Expr>
     struct generate_delimited_impl<Expr
- , typename enable_if<traits::meta_create_exists<karma::domain, Expr> >::type>
+ , typename enable_if<
+ mpl::and_<
+ traits::meta_create_exists<karma::domain, Expr>
+ , mpl::not_<traits::matches<karma::domain, Expr> > >
+ >::type>
     {
         template <typename OutputIterator, typename Delimiter>
         static bool call(


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