Package: libboost1.50-dev Version: 1.50.0-2 Severity: normal Dear Maintainer,
When trying to compile such file: % cat test.cpp #include <apache2/httpd.h> #include <boost/chrono/duration.hpp> int main() {} I'm getting the following error: % gcc -lboost_system -I/usr/include/apr-1.0 1.cpp In file included from 1.cpp:2:0: /usr/include/boost/chrono/duration.hpp: In function ‘typename boost::enable_if<boost::mpl::and_<boost::is_convertible<Rep1, typename boost::common_type<Rep1, Rep2>::type>, boost::is_convertible<Rep2, typename boost::common_type<Rep1, Rep2>::type> >, boost::chrono::duration<typename boost::common_type<Rep1, Rep2>::type, Period> >::type boost::chrono::operator*(const boost::chrono::duration<Rep1, Period>&, const Rep2&)’: /usr/include/boost/chrono/duration.hpp:566:54: error: expected unqualified-id before numeric constant /usr/include/boost/chrono/duration.hpp:567:34: error: type/value mismatch at argument 1 in template parameter list for ‘template<class Rep, class Period> class boost::chrono::duration’ /usr/include/boost/chrono/duration.hpp:567:34: error: expected a type, got ‘13’ /usr/include/boost/chrono/duration.hpp:567:38: error: invalid type in declaration before ‘;’ token /usr/include/boost/chrono/duration.hpp:568:23: error: request for member ‘count’ in ‘(CD)(d)’, which is of non-class type ‘CD {aka int}’ /usr/include/boost/chrono/duration.hpp:568:16: error: expected primary-expression before ‘(’ token /usr/include/boost/chrono/duration.hpp:568:23: error: request for member ‘count’ in ‘(CD)(d)’, which is of non-class type ‘CD {aka int}’ /usr/include/boost/chrono/duration.hpp:568:43: error: expected type-specifier before numeric constant /usr/include/boost/chrono/duration.hpp:568:43: error: expected ‘>’ before numeric constant /usr/include/boost/chrono/duration.hpp:568:43: error: expected ‘(’ before numeric constant /usr/include/boost/chrono/duration.hpp: In function ‘typename boost::disable_if<boost::chrono::detail::is_duration<Rep2>, typename boost::chrono::detail::duration_divide_result<boost::chrono::duration<Rep1, Period>, Rep2>::type>::type boost::chrono::operator/(const boost::chrono::duration<Rep1, Period>&, const Rep2&)’: /usr/include/boost/chrono/duration.hpp:595:56: error: expected unqualified-id before numeric constant /usr/include/boost/chrono/duration.hpp:596:36: error: type/value mismatch at argument 1 in template parameter list for ‘template<class Rep, class Period> class boost::chrono::duration’ /usr/include/boost/chrono/duration.hpp:596:36: error: expected a type, got ‘13’ /usr/include/boost/chrono/duration.hpp:596:40: error: invalid type in declaration before ‘;’ token /usr/include/boost/chrono/duration.hpp:598:23: error: request for member ‘count’ in ‘(CD)(d)’, which is of non-class type ‘CD {aka int}’ /usr/include/boost/chrono/duration.hpp:598:16: error: expected primary-expression before ‘(’ token /usr/include/boost/chrono/duration.hpp:598:23: error: request for member ‘count’ in ‘(CD)(d)’, which is of non-class type ‘CD {aka int}’ /usr/include/boost/chrono/duration.hpp:598:43: error: expected type-specifier before numeric constant /usr/include/boost/chrono/duration.hpp:598:43: error: expected ‘>’ before numeric constant /usr/include/boost/chrono/duration.hpp:598:43: error: expected ‘(’ before numeric constant /usr/include/boost/chrono/duration.hpp: In function ‘typename boost::disable_if<boost::chrono::detail::is_duration<Rep2>, typename boost::chrono::detail::duration_modulo_result<boost::chrono::duration<Rep1, Period>, Rep2>::type>::type boost::chrono::operator%(const boost::chrono::duration<Rep1, Period>&, const Rep2&)’: /usr/include/boost/chrono/duration.hpp:636:56: error: expected unqualified-id before numeric constant /usr/include/boost/chrono/duration.hpp:637:36: error: type/value mismatch at argument 1 in template parameter list for ‘template<class Rep, class Period> class boost::chrono::duration’ /usr/include/boost/chrono/duration.hpp:637:36: error: expected a type, got ‘13’ /usr/include/boost/chrono/duration.hpp:637:40: error: invalid type in declaration before ‘;’ token /usr/include/boost/chrono/duration.hpp:639:23: error: request for member ‘count’ in ‘(CD)(d)’, which is of non-class type ‘CD {aka int}’ /usr/include/boost/chrono/duration.hpp:639:16: error: expected primary-expression before ‘(’ token /usr/include/boost/chrono/duration.hpp:639:23: error: request for member ‘count’ in ‘(CD)(d)’, which is of non-class type ‘CD {aka int}’ /usr/include/boost/chrono/duration.hpp:639:43: error: expected type-specifier before numeric constant /usr/include/boost/chrono/duration.hpp:639:43: error: expected ‘>’ before numeric constant /usr/include/boost/chrono/duration.hpp:639:43: error: expected ‘(’ before numeric constant That's probably because of `#define CR 13` in httpd.h and `typedef typename common_type<Rep1, Rep2>::type CR` in duration.hpp. Also after # sed -e 's/\bCR\b/CRRRRR/' -i.orig /usr/include/boost/chrono/duration.hpp same test.cpp can be built successufully. Apache version: ii apache2 2.2.22-13 -- Regards, Kirill -- System Information: Debian Release: 7.0 APT prefers unstable APT policy: (500, 'unstable'), (1, 'experimental') Architecture: amd64 (x86_64) Foreign Architectures: i386 Kernel: Linux 3.2.0-3-amd64 (SMP w/4 CPU cores) Locale: LANG=en_US.UTF-8, LC_CTYPE=ru_RU.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Versions of packages libboost1.50-dev depends on: ii libc6 2.17-0experimental2 ii libgcc1 1:4.7.2-5 ii libicu48 4.8.1.1-11 ii libstdc++6 4.7.2-5 ii libstdc++6-4.4-dev [libstdc++-dev] 4.4.7-3 ii libstdc++6-4.7-dev [libstdc++-dev] 4.7.2-5 libboost1.50-dev recommends no packages. Versions of packages libboost1.50-dev suggests: ii default-jdk 1:1.6-47 ii docbook-xml 4.5-7.1 ii docbook-xsl 1.76.1+dfsg-1 pn doxygen <none> pn fop <none> ii libboost-chrono1.50-dev 1.50.0-2 ii libboost-date-time1.50-dev 1.50.0-2 ii libboost-exception1.50-dev 1.50.0-2 ii libboost-filesystem1.50-dev 1.50.0-2 ii libboost-graph-parallel1.50-dev 1.50.0-2 ii libboost-graph1.50-dev 1.50.0-2 ii libboost-iostreams1.50-dev 1.50.0-2 ii libboost-locale1.50-dev 1.50.0-2 ii libboost-math1.50-dev 1.50.0-2 ii libboost-mpi1.50-dev 1.50.0-2 ii libboost-program-options1.50-dev 1.50.0-2 ii libboost-python1.50-dev 1.50.0-2 ii libboost-random1.50-dev 1.50.0-2 ii libboost-regex1.50-dev 1.50.0-2 ii libboost-serialization1.50-dev 1.50.0-2 ii libboost-signals1.50-dev 1.50.0-2 ii libboost-system1.50-dev 1.50.0-2 ii libboost-test1.50-dev 1.50.0-2 ii libboost-thread1.50-dev 1.50.0-2 ii libboost-timer1.50-dev 1.50.0-2 ii libboost-wave1.50-dev 1.50.0-2 pn libboost1.50-doc <none> ii xsltproc 1.1.26-14 -- no debconf information -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org