Hello all,

I'm getting a compile error under Boost 1.55 using ICL's Closed Interval include:

In file included from /home/abaxter/Projects/Du/apollo/libapollo/src/theory.cpp:21:0:

/home/abaxter/local/include/boost/icl/closed_interval.hpp: In constructor 'boost::icl::closed_interval<DomainT, Compare>::closed_interval()':

/home/abaxter/local/include/boost/icl/closed_interval.hpp:35:31: error: 'DefaultConstructibleConcept' was not declared in this scope

BOOST_CONCEPT_ASSERT((DefaultConstructibleConcept<DomainT>));

^

/home/abaxter/local/include/boost/icl/closed_interval.hpp:35:66: error: expected primary-expression before '>' token

BOOST_CONCEPT_ASSERT((DefaultConstructibleConcept<DomainT>));

^

/home/abaxter/local/include/boost/icl/closed_interval.hpp:35:67: error: expected primary-expression before ')' token

BOOST_CONCEPT_ASSERT((DefaultConstructibleConcept<DomainT>));

^

/home/abaxter/local/include/boost/icl/closed_interval.hpp:35:68: error: there are no arguments to 'BOOST_CONCEPT_ASSERT' that depend on a template parameter, so a declaration of 'BOOST_CONCEPT_ASSERT' must be available [-fpermissive]

BOOST_CONCEPT_ASSERT((DefaultConstructibleConcept<DomainT>));

^

/home/abaxter/local/include/boost/icl/closed_interval.hpp:35:68: note: (if you use '-fpermissive', G++ will accept your code, but allowing the use of an undeclared name is deprecated)

/home/abaxter/local/include/boost/icl/closed_interval.hpp:36:31: error: 'LessThanComparableConcept' was not declared in this scope

BOOST_CONCEPT_ASSERT((LessThanComparableConcept<DomainT>));

^

/home/abaxter/local/include/boost/icl/closed_interval.hpp:36:64: error: expected primary-expression before '>' token

BOOST_CONCEPT_ASSERT((LessThanComparableConcept<DomainT>));

^

/home/abaxter/local/include/boost/icl/closed_interval.hpp:36:65: error: expected primary-expression before ')' token

BOOST_CONCEPT_ASSERT((LessThanComparableConcept<DomainT>));

^

/home/abaxter/local/include/boost/icl/closed_interval.hpp:36:66: error: there are no arguments to 'BOOST_CONCEPT_ASSERT' that depend on a template parameter, so a declaration of 'BOOST_CONCEPT_ASSERT' must be available [-fpermissive]

BOOST_CONCEPT_ASSERT((LessThanComparableConcept<DomainT>));

^

/home/abaxter/local/include/boost/icl/closed_interval.hpp: In constructor 'boost::icl::closed_interval<DomainT, Compare>::closed_interval(const DomainT&)':

/home/abaxter/local/include/boost/icl/closed_interval.hpp:46:31: error: 'DefaultConstructibleConcept' was not declared in this scope

BOOST_CONCEPT_ASSERT((DefaultConstructibleConcept<DomainT>));

^

/home/abaxter/local/include/boost/icl/closed_interval.hpp:46:66: error: expected primary-expression before '>' token

BOOST_CONCEPT_ASSERT((DefaultConstructibleConcept<DomainT>));

^

/home/abaxter/local/include/boost/icl/closed_interval.hpp:46:67: error: expected primary-expression before ')' token

BOOST_CONCEPT_ASSERT((DefaultConstructibleConcept<DomainT>));

^

/home/abaxter/local/include/boost/icl/closed_interval.hpp:46:68: error: there are no arguments to 'BOOST_CONCEPT_ASSERT' that depend on a template parameter, so a declaration of 'BOOST_CONCEPT_ASSERT' must be available [-fpermissive]

BOOST_CONCEPT_ASSERT((DefaultConstructibleConcept<DomainT>));

^

/home/abaxter/local/include/boost/icl/closed_interval.hpp:47:31: error: 'LessThanComparableConcept' was not declared in this scope

BOOST_CONCEPT_ASSERT((LessThanComparableConcept<DomainT>));

^

/home/abaxter/local/include/boost/icl/closed_interval.hpp:47:64: error: expected primary-expression before '>' token

BOOST_CONCEPT_ASSERT((LessThanComparableConcept<DomainT>));

^

/home/abaxter/local/include/boost/icl/closed_interval.hpp:47:65: error: expected primary-expression before ')' token

BOOST_CONCEPT_ASSERT((LessThanComparableConcept<DomainT>));

^

/home/abaxter/local/include/boost/icl/closed_interval.hpp:47:66: error: there are no arguments to 'BOOST_CONCEPT_ASSERT' that depend on a template parameter, so a declaration of 'BOOST_CONCEPT_ASSERT' must be available [-fpermissive]

BOOST_CONCEPT_ASSERT((LessThanComparableConcept<DomainT>));

^

/home/abaxter/local/include/boost/icl/closed_interval.hpp: In constructor 'boost::icl::closed_interval<DomainT, Compare>::closed_interval(const DomainT&, const DomainT&)':

/home/abaxter/local/include/boost/icl/closed_interval.hpp:55:31: error: 'DefaultConstructibleConcept' was not declared in this scope

BOOST_CONCEPT_ASSERT((DefaultConstructibleConcept<DomainT>));

^

/home/abaxter/local/include/boost/icl/closed_interval.hpp:55:66: error: expected primary-expression before '>' token

BOOST_CONCEPT_ASSERT((DefaultConstructibleConcept<DomainT>));

^

/home/abaxter/local/include/boost/icl/closed_interval.hpp:55:67: error: expected primary-expression before ')' token

BOOST_CONCEPT_ASSERT((DefaultConstructibleConcept<DomainT>));

^

/home/abaxter/local/include/boost/icl/closed_interval.hpp:55:68: error: there are no arguments to 'BOOST_CONCEPT_ASSERT' that depend on a template parameter, so a declaration of 'BOOST_CONCEPT_ASSERT' must be available [-fpermissive]

BOOST_CONCEPT_ASSERT((DefaultConstructibleConcept<DomainT>));

^

/home/abaxter/local/include/boost/icl/closed_interval.hpp:56:31: error: 'LessThanComparableConcept' was not declared in this scope

BOOST_CONCEPT_ASSERT((LessThanComparableConcept<DomainT>));

^

/home/abaxter/local/include/boost/icl/closed_interval.hpp:56:64: error: expected primary-expression before '>' token

BOOST_CONCEPT_ASSERT((LessThanComparableConcept<DomainT>));

^

/home/abaxter/local/include/boost/icl/closed_interval.hpp:56:65: error: expected primary-expression before ')' token

BOOST_CONCEPT_ASSERT((LessThanComparableConcept<DomainT>));

^

/home/abaxter/local/include/boost/icl/closed_interval.hpp:56:66: error: there are no arguments to 'BOOST_CONCEPT_ASSERT' that depend on a template parameter, so a declaration of 'BOOST_CONCEPT_ASSERT' must be available [-fpermissive]

BOOST_CONCEPT_ASSERT((LessThanComparableConcept<DomainT>));

^

make[2]: *** [libapollo/src/CMakeFiles/libapollo.dir/theory.cpp.o] Error 1

make[1]: *** [libapollo/src/CMakeFiles/libapollo.dir/all] Error 2

make: *** [all] Error 2

15:18:23: The process "/usr/bin/make" exited with code 2.


Any ideas?

Adam