[pkg-boost-devel] Bug#639862: Patch to build using c++0x

Steve M. Robbins smr at debian.org
Wed Aug 31 01:20:39 UTC 2011


Package: libboost-mpi1.46-dev
Version: 1.46.1-7
Severity: normal
File: boost
Tags: upstream

----- Forwarded message from Christophe Prud'homme <prudhomm at debian.org> -----

Date: Tue, 30 Aug 2011 14:51:40 +0200
From: Christophe Prud'homme <prudhomm at debian.org>
To: pkg-boost-devel at lists.alioth.debian.org
Subject: [pkg-boost-devel] Fwd: miscompilation: boost.mpi, gcc 4.6 and c++0x

Steve,

I still haven't had any feedback concerning the issue with boost.mpi and gcc4.6
here what I just sent to boost devel list.

could you add the attached patch please to 1.46 (it should apply to
1.47 without problems) ?




Best regards
C.


---------- Forwarded message ----------
From: Christophe Prud'homme <prudhomm at debian.org>
Date: Tue, Aug 30, 2011 at 2:34 PM
Subject: miscompilation: boost.mpi, gcc 4.6 and c++0x
To: boost at lists.boost.org


Dear Boost Developers

I created the ticket [1] several month ago regarding an issue between
g++-4.6 with option -std=c++0x and boost.mpi
I haven't had any feedback yet. Any idea wether boost or gcc is at fault here ?
it is easy to fix this by adding the right member function.

 1. https://svn.boost.org/trac/boost/ticket/5538

let me recap what is going on

consider the following code in t.cpp:

#include <boost/mpi.hpp>

compile it with

g++ -std=c++0x -c -I/usr/include/mpi t.cpp

and you get in Debian unstable

In file included from /usr/include/c++/4.6/memory:67:0,
                from /usr/include/boost/mpi/allocator.hpp:18,
                from /usr/include/boost/mpi.hpp:22,
                from t.cpp:1:
/usr/include/c++/4.6/bits/stl_uninitialized.h: In function 'void
std::__uninitialized_default_n_a(_ForwardIterator, _Size, _Allocator&)
[with _ForwardIterator = char*, _Size = long unsigned int, _Allocator
= boost::mpi::allocator<char>]':
/usr/include/c++/4.6/bits/vector.tcc:474:8:   instantiated from 'void
std::vector<_Tp, _Alloc>::_M_default_append(std::vector<_Tp,
_Alloc>::size_type) [with _Tp = char, _Alloc =
boost::mpi::allocator<char>, std::vector<_Tp, _Alloc>::size_type =
long unsigned int]'
/usr/include/c++/4.6/bits/stl_vector.h:592:4:   instantiated from
'void std::vector<_Tp, _Alloc>::resize(std::vector<_Tp,
_Alloc>::size_type) [with _Tp = char, _Alloc =
boost::mpi::allocator<char>, std::vector<_Tp, _Alloc>::size_type =
long unsigned int]'
/usr/include/boost/mpi/detail/packed_oprimitive.hpp:96:46:
instantiated from here
/usr/include/c++/4.6/bits/stl_uninitialized.h:576:6: error: no
matching function for call to
'boost::mpi::allocator<char>::construct(char*)'
/usr/include/c++/4.6/bits/stl_uninitialized.h:576:6: note: candidate is:
/usr/include/boost/mpi/allocator.hpp:168:8: note: void
boost::mpi::allocator<T>::construct(boost::mpi::allocator<T>::pointer,
const T&) [with T = char, boost::mpi::allocator<T>::pointer = char*]
/usr/include/boost/mpi/allocator.hpp:168:8: note:   candidate expects
2 arguments, 1 provided


note that if you remove -std=c++0x, it compiles fine.

Best regards
C.
--
Debian Developer - member of Debian Science
http://wiki.debian.org/DebianScience
Prof. at Univ. Grenoble in Applied Math.
http://ljk.imag.fr/membres/Christophe.Prudhomme/



-- 
Debian Developer - member of Debian Science
http://wiki.debian.org/DebianScience
Prof. at Univ. Grenoble in Applied Math.
http://ljk.imag.fr/membres/Christophe.Prudhomme/


_______________________________________________
pkg-boost-devel mailing list
pkg-boost-devel at lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-boost-devel


----- End forwarded message -----


-- System Information:
Debian Release: wheezy/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (500, 'testing')
Architecture: amd64 (x86_64)

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

Versions of packages libboost-mpi1.46-dev depends on:
ii  libboost-mpi1.46.1              1.46.1-7
ii  libboost-serialization1.46-dev  1.46.1-7
ii  libboost1.46-dev                1.46.1-7
ii  mpi-default-dev                 0.6     

libboost-mpi1.46-dev recommends no packages.

Versions of packages libboost-mpi1.46-dev suggests:
ii  libboost-graph1.46-dev  1.46.1-7

-- no debconf information





More information about the pkg-boost-devel mailing list