
Emil Dotchevski wrote:
On Thu, May 6, 2010 at 10:55 AM, vicente.botet <vicente.botet@wanadoo.fr> wrote:
----- Original Message ----- The following code has been introduced in 1.43. Can you can move it to the end of the file and checkagain (it is using throw_exception which is not yet declared).
HTH, Vicente
#if !defined( BOOST_EXCEPTION_DISABLE ) namespace exception_detail { template <class E> void throw_exception_( E const & x, char const * current_function, char const * file, int line ) { throw_exception( set_info( set_info( set_info( enable_error_info(x), throw_function(current_function)), throw_file(file)), throw_line(line))); } } #endif
Which compiler is this? Does moving the code solve the problem?
gcc-4.4.3-4.fc12.x86_64 No, moving that code doesn't fix it. Still very mysterious. The claim is that template <typename ExceptionType = broken_constraint> struct throw_exception in constrained.hpp conflicts with template<class E> BOOST_ATTRIBUTE_NORETURN inline void throw_exception( E const & e ) in throw_exception.hpp in call to 'throw_exception' in the code we just moved, but the throw_exception in constrained.hpp is in namespace boost { /// The Boost Constrained Value library's namespace. namespace constrained_value { namespace, so I don't see how it conflicts. If someone wants to try it, I put the 2 files here: http://nbecker.dyndns.org:8080/boost/