Re: [Boost-bugs] [Boost C++ Libraries] #1462: Missing/wrong includes

Subject: Re: [Boost-bugs] [Boost C++ Libraries] #1462: Missing/wrong includes
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2008-07-10 15:40:13


#1462: Missing/wrong includes
----------------------------------------------------+-----------------------
  Reporter: Jens Seidel <jensseidel_at_[hidden]> | Owner: dgregor
      Type: Patches | Status: reopened
 Milestone: Boost 1.36.0 | Component: Building Boost
   Version: Boost Development Trunk | Severity: Problem
Resolution: | Keywords:
----------------------------------------------------+-----------------------
Changes (by jhunold):

  * status: closed => reopened
  * resolution: fixed =>

Comment:

 This does not work for all gcc-versions:

  gcc -v
 Using built-in specs.
 Target: i486-linux-gnu
 Configured with: ../src/configure -v --enable-
 languages=c,c++,fortran,objc,obj-c++,treelang --prefix=/usr --enable-
 shared --with-system-zlib --libexecdir=/usr/lib --without-included-gettext
 --enable-threads=posix --enable-nls --with-gxx-include-
 dir=/usr/include/c++/4.2 --program-suffix=-4.2 --enable-clocale=gnu
 --enable-libstdcxx-debug --enable-objc-gc --enable-mpfr --enable-
 targets=all --enable-checking=release --build=i486-linux-gnu --host=i486
 -linux-gnu --target=i486-linux-gnu
 Thread model: posix
 gcc version 4.2.3 (Ubuntu 4.2.3-2ubuntu7)

 has
 /usr/include/c++/4.2.3/i486-linux-gnu/bits/c++config.h

 containing

 // The current version of the C++ library in compressed ISO date format.

 #define __GLIBCXX__ 20080329

 and SuSE-10.3 OpenSuse compiler upgrade has:
 Using built-in specs.
 Target: x86_64-suse-linux
 Configured with: ../configure --enable-threads=posix --prefix=/usr --with-
 local-prefix=/usr/local --infodir=/usr/share/info --mandir=/usr/share/man
 --libdir=/usr/lib64 --libexecdir=/usr/lib64 --enable-
 languages=c,c++,objc,fortran,obj-c++,java,ada --enable-checking=release
 --with-gxx-include-dir=/usr/include/c++/4.2.3 --enable-ssp --disable-
 libssp --disable-libgcj --with-slibdir=/lib64 --with-system-zlib --enable-
 shared --enable-__cxa_atexit --enable-libstdcxx-allocator=new --disable-
 libstdcxx-pch --program-suffix=-4.2 --enable-version-specific-runtime-libs
 --without-system-libunwind --with-cpu=generic --host=x86_64-suse-linux
 Thread model: posix
 gcc version 4.2.3 20071030 (prerelease) (SUSE Linux)

 /usr/include/c++/4.2.3/x86_64-suse-linux/bits/c++config.h

 // The current version of the C++ library in compressed ISO date format.

 #define __GLIBCXX__ 20071030

 and my OpenSuSe 4.3 has
 gcc-4.3 -v
 Using built-in specs.
 Target: x86_64-suse-linux
 Configured with: ../configure --prefix=/usr --with-local-prefix=/usr/local
 --infodir=/usr/share/info --mandir=/usr/share/man --libdir=/usr/lib64--
 libexecdir=/usr/lib64 --enable-
 languages=c,c++,objc,fortran,obj-c++,java,ada --enable-checking=release
 --with-gxx-include-dir=/usr/include/c++/4.3 --enable-ssp --disable-libssp
 --with-bugurl=http://bugs.opensuse.org/ --with-pkgversion='SUSE Linux'
 --disable-libgcj --with-slibdir=/lib64 --with-system-zlib --enable-
 __cxa_atexit --enable-libstdcxx-allocator=new --disable-libstdcxx-pch
 --program-suffix=-4.3 --enable-version-specific-runtime-libs --enable-
 linux-futex --without-system-libunwind --with-cpu=generic --build=x86_64
 -suse-linux
 Thread model: posix
 gcc version 4.3.2 20080703 (prerelease) [gcc-4_3-branch revision 137416]
 (SUSE Linux)

 with

 /usr/include/c++/4.3/x86_64-suse-linux/bits/c++config.h

 Containing:

 // The current version of the C++ library in compressed ISO date format.

 #define __GLIBCXX__ 20080703

 So I get:

 /home/hunold/packages/boost/boost/graph/adjacency_list.hpp:22:35: error:
 backward/hash_set: No such file or directory
 In file included from
 /home/hunold/packages/boost/boost/graph/detail/adjacency_list.hpp:31,
                  from
 /home/hunold/packages/boost/boost/graph/adjacency_list.hpp:309,

 when compiling with gcc-4.2 GLIBCXX

 My gcc-4.2 on Hardy has _much_ higher version than the SuSE compiler.
 I suggest either taking a _much_ higher version number or even better
 a check for compiler major and minor to _really_ fix the issue

 Please note that changes to boost/config/stdlib/libstdcpp3.hpp will _not_
 trigger the regression tests because the configuration files are selected
 via
 # define BOOST_STDLIB_CONFIG "boost/config/stdlib/libstdcpp3.hpp"
 and so later #include BOOST_STDLIB_CONFIG. So please don't wonder if all
 tests remain green...

-- 
Ticket URL: <http://svn.boost.org/trac/boost/ticket/1462#comment:5>
Boost C++ Libraries <http://www.boost.org/>
Boost provides free peer-reviewed portable C++ source libraries.

This archive was generated by hypermail 2.1.7 : 2017-02-16 18:49:58 UTC