Boost logo

Boost :

From: Sergey Shandar (sergey_at_[hidden])
Date: 2007-11-10 05:58:55

Giovanni Piero Deretta wrote:
> Wow! Does this really work? You can really apply SFINAE to conversion
> opreators by
> (ab)using the exception specification? Is this only a gcc thing or is
> it "by the standard"?
It works on GCC and solves the particular problem, I don't know much
about other compilers and "by the standard". It has to be checked if we
want to use it in other cases.
> If the latter, boost::enable_if documents might need to be updated :)
Yes, may be some extensions to the boost::enable_if library:

  namespace boost
  namespace detail
  class never_throw

  #define BOOST_ENABLE_IF(...) throw (typename ::boost::enable_if<
    __VA_ARGS__, ::boost::detail::never_throw>::type)

And using:

  template <class T>
  T foo(T t)


Boost list run by bdawes at, gregod at, cpdaniel at, john at