Re: [Boost-bugs] [Boost C++ Libraries] #7730: Generic specializations of is_nullary for custom terminals are not possible

Subject: Re: [Boost-bugs] [Boost C++ Libraries] #7730: Generic specializations of is_nullary for custom terminals are not possible
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2014-03-12 06:51:51


#7730: Generic specializations of is_nullary for custom terminals are not possible
-------------------------------+---------------------
  Reporter: andysem | Owner: theller
      Type: Bugs | Status: new
 Milestone: To Be Determined | Component: phoenix
   Version: Boost 1.52.0 | Severity: Problem
Resolution: | Keywords:
-------------------------------+---------------------

Comment (by andysem):

 Replying to [comment:22 theller]:
> I don't see why such a fix is necessary. Wouldn't this work?
> {{{
> template <typename T>
> struct is_nullary<custom_terminal<even_more_custom<T> > : ...
> }}}
>
> This wouldn't break any exisiting code.

 This is what I have to do currently. The problem is that I have many such
 even_more_custom terminals and I have to specialize is_nullary for each
 and every one of them.

> FWIW, The dummy parameter only has the side effect of being able to be
 used with SFINAE. The main intention was to get rid of some uneeded
 template instatiations.

 You can't use the parameter for SFINAE now because of the generic
 specialization I pointed out in the ticket description.

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/7730#comment:23>
Boost C++ Libraries <http://www.boost.org/>
Boost provides free peer-reviewed portable C++ source libraries.

This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:15 UTC