[pkg-boost-devel] Bug#558775: std_hash_set_fwd.hpp:29: error: redeclared with 3 template parameter(s)

Mathieu Malaterre mathieu.malaterre at gmail.com
Mon Nov 30 13:34:32 UTC 2009


Package: libboost1.40-dev
Version: 1.40.0-4
Severity: normal


One cannot use tulip and boost 1.40 at the same time. As demonstrated in the following examples:

$ cat t.cxx
//#include <boost/graph/graph_utility.hpp>  // workaround
#include <tulip/Graph.h>
#include <boost/graph/graph_utility.hpp> 

int main()
{
  return 0;
}

$ g++ t.cxx                                                                                                                                                                                                                                                /tmp
In file included from /usr/include/c++/4.3/ext/hash_map:64,
                 from /usr/include/tulip/Graph.h:25,
                 from t.cxx:2:
/usr/include/c++/4.3/backward/backward_warning.h:33:2: warning: #warning This file includes at least one deprecated or antiquated header which may be removed without further notice at a future date. Please use a non-deprecated interface with equivalent functionality instead. For a listing of replacement headers and interfaces, consult the file backward_warning.h. To disable this warning use -Wno-deprecated.
In file included from /usr/include/boost/spirit/home/phoenix/stl/algorithm/detail/./is_std_hash_map.hpp:23,
                 from /usr/include/boost/spirit/home/phoenix/stl/algorithm/detail/has_find.hpp:25,
                 from /usr/include/boost/spirit/home/phoenix/stl/algorithm/querying.hpp:17,
                 from /usr/include/boost/spirit/home/phoenix/algorithm.hpp:11,
                 from /usr/include/boost/spirit/home/phoenix.hpp:10,
                 from /usr/include/boost/graph/depth_first_search.hpp:24,
                 from /usr/include/boost/graph/graph_utility.hpp:32,
                 from t.cxx:3:
/usr/include/boost/spirit/home/phoenix/stl/algorithm/detail/././std_hash_map_fwd.hpp:29: error: redeclared with 3 template parameter(s)
/usr/include/c++/4.3/ext/hash_map:83: note: previous declaration ‘template<class _Key, class _Tp, class _HashFn, class _EqualKey, class _Alloc> class __gnu_cxx::hash_map’ used 5 template parameter(s)
/usr/include/boost/spirit/home/phoenix/stl/algorithm/detail/././std_hash_map_fwd.hpp:36: error: redeclared with 3 template parameter(s)
/usr/include/c++/4.3/ext/hash_map:296: note: previous declaration ‘template<class _Key, class _Tp, class _HashFn, class _EqualKey, class _Alloc> class __gnu_cxx::hash_multimap’ used 5 template parameter(s)
In file included from /usr/include/boost/spirit/home/phoenix/stl/algorithm/detail/./is_std_hash_set.hpp:23,
                 from /usr/include/boost/spirit/home/phoenix/stl/algorithm/detail/has_find.hpp:26,
                 from /usr/include/boost/spirit/home/phoenix/stl/algorithm/querying.hpp:17,
                 from /usr/include/boost/spirit/home/phoenix/algorithm.hpp:11,
                 from /usr/include/boost/spirit/home/phoenix.hpp:10,
                 from /usr/include/boost/graph/depth_first_search.hpp:24,
                 from /usr/include/boost/graph/graph_utility.hpp:32,
                 from t.cxx:3:
/usr/include/boost/spirit/home/phoenix/stl/algorithm/detail/././std_hash_set_fwd.hpp:29: error: redeclared with 3 template parameter(s)
/usr/include/c++/4.3/backward/hash_set:84: note: previous declaration ‘template<class _Value, class _HashFcn, class _EqualKey, class _Alloc> class __gnu_cxx::hash_set’ used 4 template parameter(s)
/usr/include/boost/spirit/home/phoenix/stl/algorithm/detail/././std_hash_set_fwd.hpp:36: error: redeclared with 3 template parameter(s)
/usr/include/c++/4.3/backward/hash_set:285: note: previous declaration ‘template<class _Value, class _HashFcn, class _EqualKey, class _Alloc> class __gnu_cxx::hash_multiset’ used 4 template parameter(s)

One workaround is to include 
#include <boost/graph/graph_utility.hpp>
before tulip/Graph.h

Ref:
$ apt-cache policy  libtulip-dev                                                                                                                                                                                                                           /tmp
libtulip-dev:
  Installed: 3.1.2-2
  Candidate: 3.1.2-2
  Version table:
     3.1.2-2.1 0
        100 http://ftp.fr.debian.org unstable/main Packages
 *** 3.1.2-2 0
        200 http://ftp.fr.debian.org testing/main Packages
        100 /var/lib/dpkg/status


-- System Information:
Debian Release: 5.0.3
  APT prefers stable
  APT policy: (500, 'stable'), (200, 'testing'), (100, 'unstable')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.30-bpo.1-amd64 (SMP w/8 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages libboost1.40-dev depends on:
ii  libc6                         2.10.1-7   GNU C Library: Shared libraries
ii  libgcc1                       1:4.4.2-3  GCC support library
ii  libicu42                      4.2.1-3    International Components for Unico
ii  libstdc++6                    4.4.2-3    The GNU Standard C++ Library v3
ii  libstdc++6-4.1-dev [libstdc++ 4.1.2-25   The GNU Standard C++ Library v3 (d
ii  libstdc++6-4.3-dev [libstdc++ 4.3.4-6    The GNU Standard C++ Library v3 (d
ii  libstdc++6-4.4-dev [libstdc++ 4.4.2-3    The GNU Standard C++ Library v3 (d

libboost1.40-dev recommends no packages.

Versions of packages libboost1.40-dev suggests:
ii  default-jdk              1.5-30          Standard Java or Java compatible D
ii  docbook-xml              4.5-6           standard XML documentation system,
ii  docbook-xsl              1.73.2.dfsg.1-5 stylesheets for processing DocBook
ii  doxygen                  1.6.1-1         Documentation system for C, C++, J
pn  fop                      <none>          (no description available)
ii  libboost-date-time1.40-d 1.40.0-4        set of date-time libraries based o
ii  libboost-filesystem1.40- 1.40.0-4        filesystem operations (portable pa
ii  libboost-graph-parallel1 1.40.0-4        generic graph components and algor
ii  libboost-graph1.40-dev   1.40.0-4        generic graph components and algor
ii  libboost-iostreams1.40-d 1.40.0-4        Boost.Iostreams Library developmen
ii  libboost-math1.40-dev    1.40.0-4        Boost.Math Library development fil
ii  libboost-mpi1.40-dev     1.40.0-4        C++ interface to the Message Passi
ii  libboost-program-options 1.40.0-4        program options library for C++
ii  libboost-python1.40-dev  1.40.0-4        Boost.Python Library development f
ii  libboost-regex1.40-dev   1.40.0-4        regular expression library for C++
ii  libboost-serialization1. 1.40.0-4        serialization library for C++
ii  libboost-signals1.40-dev 1.40.0-4        managed signals and slots library 
ii  libboost-system1.40-dev  1.40.0-4        Operating system (e.g. diagnostics
ii  libboost-test1.40-dev    1.40.0-4        components for writing and executi
ii  libboost-thread1.40-dev  1.40.0-4        portable C++ multi-threading
ii  libboost-wave1.40-dev    1.40.0-4        C99/C++ preprocessor library
pn  libboost1.40-doc         <none>          (no description available)
ii  xsltproc                 1.1.24-2        XSLT command line processor

-- debconf-show failed





More information about the pkg-boost-devel mailing list