Hi, I found a bug in the interval library. but when I corrected it, I stumbled over another problem: this bug was ironically what allowed the library to be correctly compiled with my version of the compiler (Intel compiler 7.1 for Linux). When I remove it, the library no longer works...
The default configuration defines BOOST_NO_STDC_NAMESPACE for this compiler. So the library expects to find standard C math functions (the ones in <cmath>) in the global namespace. Unfortunately, they are where they are supposed to be: in the std namespace. So here is my question: is this macro really necessary for this compiler? Just to be sure, I ran config_info to get the default configuration options: BOOST_DEDUCED_TYPENAME =typename BOOST_HAS_CLOCK_GETTIME [no value] BOOST_HAS_DIRENT_H [no value] BOOST_HAS_GETTIMEOFDAY [no value] BOOST_HAS_LONG_LONG [no value] BOOST_HAS_NANOSLEEP [no value] BOOST_HAS_NL_TYPES_H [no value] BOOST_HAS_NRVO [no value] BOOST_HAS_PTHREADS [no value] BOOST_HAS_SCHED_YIELD [no value] BOOST_HAS_SIGACTION [no value] BOOST_HAS_UNISTD_H [no value] BOOST_MSVC6_MEMBER_TEMPLATES [no value] BOOST_NESTED_TEMPLATE =template BOOST_NO_HASH [no value] BOOST_NO_MS_INT64_NUMERIC_LIMITS [no value] * BOOST_NO_SLIST [no value] * BOOST_NO_STDC_NAMESPACE [no value] BOOST_NO_SWPRINTF [no value] BOOST_STD_EXTENSION_NAMESPACE =std BOOST_UNREACHABLE_RETURN(0) [no value] and then I ran it one more time with the user.hpp given by the configure script to get the local options: BOOST_DEDUCED_TYPENAME =typename BOOST_HAS_CLOCK_GETTIME [no value] BOOST_HAS_DIRENT_H [no value] BOOST_HAS_GETTIMEOFDAY [no value] BOOST_HAS_LONG_LONG [no value] * BOOST_HAS_MACRO_USE_FACET [no value] BOOST_HAS_NANOSLEEP [no value] BOOST_HAS_NL_TYPES_H [no value] BOOST_HAS_NRVO [no value] BOOST_HAS_PTHREADS [no value] BOOST_HAS_SCHED_YIELD [no value] BOOST_HAS_SIGACTION [no value] * BOOST_HAS_STDINT_H [no value] * BOOST_HAS_SLIST [no value] BOOST_HAS_UNISTD_H [no value] BOOST_MSVC6_MEMBER_TEMPLATES [no value] BOOST_NESTED_TEMPLATE =template BOOST_NO_HASH [no value] BOOST_NO_MS_INT64_NUMERIC_LIMITS [no value] BOOST_NO_SWPRINTF [no value] BOOST_STD_EXTENSION_NAMESPACE =std BOOST_UNREACHABLE_RETURN(0) [no value] So there are quite a lot of differences between what Boost expects from the compiler and what the compiler actually provides (the stars indicate the differences between the two configurations). I can contribute patches to fix Boost configuration. But before that, I would like to know if other people have also run the configure script with the Intel compiler. In particular, I am interested in knowing if the Windows version of the compiler behave like the Linux version. It would also be interesting to know if the 7.0 version (and not only the 7.1) benefits from these changes. Regards, Guillaume _______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost