[pkg-boost-devel] Bug#340430: marked as done (libboost-program-options-dev: positional_options_description dtor abort)

Debian Bug Tracking System owner at bugs.debian.org
Wed Nov 23 15:03:36 UTC 2005


Your message dated Wed, 23 Nov 2005 15:36:48 +0100
with message-id <200511231536.48382.christophe.prudhomme at epfl.ch>
and subject line [pkg-boost-devel] Bug#340430: libboost-program-options-dev: positional_options_description dtor abort
has caused the attached Bug report to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what I am
talking about this indicates a serious mail system misconfiguration
somewhere.  Please contact me immediately.)

Debian bug tracking system administrator
(administrator, Debian Bugs database)

--------------------------------------
Received: (at submit) by bugs.debian.org; 23 Nov 2005 12:49:57 +0000
>From lidaobing at gmail.com Wed Nov 23 04:49:57 2005
Return-path: <lidaobing at gmail.com>
Received: from wproxy.gmail.com ([64.233.184.201])
	by spohr.debian.org with esmtp (Exim 4.50)
	id 1Eeu4T-0002r0-Ny
	for submit at bugs.debian.org; Wed, 23 Nov 2005 04:49:57 -0800
Received: by wproxy.gmail.com with SMTP id 71so822799wri
        for <submit at bugs.debian.org>; Wed, 23 Nov 2005 04:49:56 -0800 (PST)
DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws;
        s=beta; d=gmail.com;
        h=received:content-type:mime-version:content-transfer-encoding:from:to:subject:x-mailer:date:message-id;
        b=HeeaGdVCqTrvxEZtkR/FYtTmUCT48WxxSYHmfBuHzcl1upyCj2o+9C+FkLfko68x62KYSFo5ASu53u8M1sHZBg5L1k/7OA/BOT01k8EKpplZX+z+qMGVRsOXmhVtldReTysLxy5UugHC3VxQpibOCJIzTWxNVs3WG8RV1I37zRM=
Received: by 10.54.122.14 with SMTP id u14mr2959358wrc;
        Wed, 23 Nov 2005 04:49:56 -0800 (PST)
Received: from localhost ( [218.17.227.219])
        by mx.gmail.com with ESMTP id 24sm391856wrl.2005.11.23.04.49.54;
        Wed, 23 Nov 2005 04:49:56 -0800 (PST)
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
From: LI Daobing <lidaobing at gmail.com>
To: Debian Bug Tracking System <submit at bugs.debian.org>
Subject: libboost-program-options-dev: positional_options_description dtor abort
X-Mailer: reportbug 3.17
Date: Wed, 23 Nov 2005 20:51:42 +0800
Message-ID: <43846574.6e8581a1.1844.ffffca09 at mx.gmail.com>
Delivered-To: submit at bugs.debian.org
X-Spam-Checker-Version: SpamAssassin 2.60-bugs.debian.org_2005_01_02 
	(1.212-2003-09-23-exp) on spohr.debian.org
X-Spam-Level: 
X-Spam-Status: No, hits=-8.0 required=4.0 tests=BAYES_00,HAS_PACKAGE 
	autolearn=no version=2.60-bugs.debian.org_2005_01_02

Package: libboost-program-options-dev
Version: 1.33.0-3
Severity: important

test-pd.cpp works with g++-3.3(with warning) but not with g++-4.0.
I think it's boost's bug, not g++'s

$ cat test-pd.cpp
#include <boost/program_options.hpp>

int main()
{
  namespace po = boost::program_options;
  po::positional_options_description pd;
  pd.add("filename", 1);
  pd.add("idxfname", 1);
  return 0;
}
$ g++-3.3 -g -o test-pd test-pd.cpp -lboost_program_options
/usr/bin/ld: warning: libstdc++.so.6, needed by /usr/lib/gcc-lib/i486-linux-gnu/3.3.6/../../../libboost_program_options.so, may conflict with libstdc++.so.5
$ ./test-pd; echo $?
0
$ g++-4.0 -g -o test-pd test-pd.cpp -lboost_program_options
$ ./test-pd
*** glibc detected *** free(): invalid pointer: 0x0808e2f0 ***
Aborted
$ ldd test-pd
        linux-gate.so.1 =>  (0xffffe000)
        libboost_program_options-gcc-mt-1_33.so.1.33.0 => /usr/lib/libboost_program_options-gcc-mt-1_33.so.1.33.0 (0xb7e98000)
        libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0xb7dbc000)
        libm.so.6 => /lib/tls/i686/cmov/libm.so.6 (0xb7d97000)
        libgcc_s.so.1 => /lib/libgcc_s.so.1 (0xb7d8c000)
        libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0xb7c56000)
        librt.so.1 => /lib/tls/i686/cmov/librt.so.1 (0xb7c4c000)
        libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0xb7c39000)
        /lib/ld-linux.so.2 (0xb7ef5000)
$ gdb test-pd
GNU gdb 6.3-debian
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i386-linux"...Using host libthread_db library "/lib/tls/i686/cmov/libthread_db.so.1".

(gdb) r
Starting program: /home/nichloas/test/c/test-pd
[Thread debugging using libthread_db enabled]
[New Thread -1211057952 (LWP 4937)]
*** glibc detected *** free(): invalid pointer: 0x0808e2f0 ***

Program received signal SIGABRT, Aborted.
[Switching to Thread -1211057952 (LWP 4937)]
0xffffe410 in __kernel_vsyscall ()
(gdb) bt
#0  0xffffe410 in __kernel_vsyscall ()
#1  0xb7d52691 in raise () from /lib/tls/i686/cmov/libc.so.6
#2  0xb7d53f5b in abort () from /lib/tls/i686/cmov/libc.so.6
#3  0xb7d88ba7 in __libc_message () from /lib/tls/i686/cmov/libc.so.6
#4  0xb7d8f177 in _int_free () from /lib/tls/i686/cmov/libc.so.6
#5  0xb7d8f612 in free () from /lib/tls/i686/cmov/libc.so.6
#6  0xb7f3b7c1 in operator delete () from /usr/lib/libstdc++.so.6
#7  0x08048875 in __gnu_cxx::new_allocator<std::string>::deallocate (this=0xbffd9f04, __p=0x808e2f0)
    at new_allocator.h:94
#8  0x08048898 in std::_Vector_base<std::string, std::allocator<std::string> >::_M_deallocate (this=0xbffd9f04,
    __p=0x808e2f0, __n=2) at stl_vector.h:123
#9  0x080488ce in ~_Vector_base (this=0xbffd9f04) at stl_vector.h:109
#10 0x080489ae in ~vector (this=0xbffd9f04) at stl_vector.h:273
#11 0x08048a20 in ~positional_options_description (this=0xbffd9f04) at positional_options.hpp:31
#12 0x080487a1 in main () at test-pd.cpp:9

$ g++ -v
Using built-in specs.
Target: i486-linux-gnu
Configured with: ../src/configure -v --enable-languages=c,c++,java,f95,objc,ada,treelang --prefix=/usr --enable-shared --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --enable-nls --program-suffix=-4.0 --enable-__cxa_atexit --enable-clocale=gnu --enable-libstdcxx-debug --enable-java-awt=gtk --enable-gtk-cairo --with-java-home=/usr/lib/jvm/java-1.4.2-gcj-4.0-1.4.2.0/jre --enable-mpfr --disable-werror --enable-checking=release i486-linux-gnu
Thread model: posix
gcc version 4.0.3 20051111 (prerelease) (Debian 4.0.2-4)


-- System Information:
Debian Release: testing/unstable
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: i386 (i686)
Shell:  /bin/sh linked to /bin/bash
Kernel: Linux 2.6.14-1-686-smp
Locale: LANG=en_US.UTF-8, LC_CTYPE=zh_CN.UTF-8 (charmap=UTF-8)

Versions of packages libboost-program-options-dev depends on:
ii  libboost-dev                  1.33.0-3   Boost C++ Libraries development fi
ii  libboost-program-options1.33. 1.33.0-3   program options library for C++

libboost-program-options-dev recommends no packages.

-- debconf-show failed

---------------------------------------
Received: (at 340430-done) by bugs.debian.org; 23 Nov 2005 14:37:24 +0000
>From christophe.prudhomme at epfl.ch Wed Nov 23 06:37:24 2005
Return-path: <christophe.prudhomme at epfl.ch>
Received: from smtp3.epfl.ch ([128.178.2.15])
	by spohr.debian.org with smtp (Exim 4.50)
	id 1EevkR-000665-Ca
	for 340430-done at bugs.debian.org; Wed, 23 Nov 2005 06:37:24 -0800
Received: (qmail 17849 invoked by uid 107); 23 Nov 2005 14:36:51 -0000
Received: from mailav1.epfl.ch (128.178.50.190)
  by smtp3.epfl.ch with SMTP; 23 Nov 2005 14:36:51 -0000
Received: from (128.178.50.133) by MAILAV1.EPFL.CH via smtp
	 id 0a5c_ec3f045c_5c2c_11da_8d61_001143d18479;
	Wed, 23 Nov 2005 15:24:57 +0100
Received: from iacspc47.epfl.ch (128.178.69.177)
  by smtp2.epfl.ch (AngelmatoPhylax SMTP proxy); Wed, 23 Nov 2005 15:36:50 +0100
From: Christophe Prud'homme <christophe.prudhomme at epfl.ch>
Organization: EPFL
To: pkg-boost-devel at lists.alioth.debian.org,
 LI Daobing <lidaobing at gmail.com>,
 340430-done at bugs.debian.org
Subject: Re: [pkg-boost-devel] Bug#340430: libboost-program-options-dev: positional_options_description dtor abort
Date: Wed, 23 Nov 2005 15:36:48 +0100
User-Agent: KMail/1.9
References: <43846574.6e8581a1.1844.ffffca09 at mx.gmail.com>
In-Reply-To: <43846574.6e8581a1.1844.ffffca09 at mx.gmail.com>
X-Face: j8[;'r=lOcdj\PJYi\Ux|bqr94xF=tEyd~^~-!8S~wn-2a9GIBapXl[})[*N>=?utf-8?q?Xp=7DmLWbFz=0A=09k=23?=)n2{(xe/rLR@]yg|:sOBh9;%eaNF%R&[n9tV(`*_I_f&[9)#xJRP`?@=?utf-8?q?HB-=7E=23P1xvVx6Q=0A=09W?=>?xNH|[=:QXG>!
MIME-Version: 1.0
Content-Type: text/plain;
  charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline
Message-Id: <200511231536.48382.christophe.prudhomme at epfl.ch>
X-Spam-Checker-Version: SpamAssassin 2.60-bugs.debian.org_2005_01_02 
	(1.212-2003-09-23-exp) on spohr.debian.org
X-Spam-Level: 
X-Spam-Status: No, hits=-6.0 required=4.0 tests=BAYES_00,HAS_BUG_NUMBER 
	autolearn=no version=2.60-bugs.debian.org_2005_01_02

[ Wednesday 23 November 2005 13:51 ]
| Package: libboost-program-options-dev
| Version: 1.33.0-3
| Severity: important
|
| test-pd.cpp works with g++-3.3(with warning) but not with g++-4.0.
| I think it's boost's bug, not g++'s

Nope it is neither boost nor g++
you have upgraded g++ to 4.0.2-4 with the new allocator and you need to get=
=20
the latest boost (-4) which just entered unstable.
Otherwise you will see this kind of message a lot.
see for example
http://lists.debian.org/debian-devel-announce/2005/11/msg00010.html

you are lucky that with g++-3.3 it works because it uses libstdc++5 and boo=
st=20
was compiled with libstdc++6 (and that's what the message says)
| /usr/lib/gcc-lib/i486-linux-gnu/3.3.6/../../../libboost_program_options.s=
o,
| may conflict with libstdc++.so.5 $

C.
| $ cat test-pd.cpp
| #include <boost/program_options.hpp>
|
| int main()
| {
|   namespace po =3D boost::program_options;
|   po::positional_options_description pd;
|   pd.add("filename", 1);
|   pd.add("idxfname", 1);
|   return 0;
| }
| $ g++-3.3 -g -o test-pd test-pd.cpp -lboost_program_options
| /usr/bin/ld: warning: libstdc++.so.6, needed by
| /usr/lib/gcc-lib/i486-linux-gnu/3.3.6/../../../libboost_program_options.s=
o,
| may conflict with libstdc++.so.5 $ ./test-pd; echo $?
| 0
| $ g++-4.0 -g -o test-pd test-pd.cpp -lboost_program_options
| $ ./test-pd
| *** glibc detected *** free(): invalid pointer: 0x0808e2f0 ***
| Aborted
| $ ldd test-pd
|         linux-gate.so.1 =3D>  (0xffffe000)
|         libboost_program_options-gcc-mt-1_33.so.1.33.0 =3D>
| /usr/lib/libboost_program_options-gcc-mt-1_33.so.1.33.0 (0xb7e98000)
| libstdc++.so.6 =3D> /usr/lib/libstdc++.so.6 (0xb7dbc000)
|         libm.so.6 =3D> /lib/tls/i686/cmov/libm.so.6 (0xb7d97000)
|         libgcc_s.so.1 =3D> /lib/libgcc_s.so.1 (0xb7d8c000)
|         libc.so.6 =3D> /lib/tls/i686/cmov/libc.so.6 (0xb7c56000)
|         librt.so.1 =3D> /lib/tls/i686/cmov/librt.so.1 (0xb7c4c000)
|         libpthread.so.0 =3D> /lib/tls/i686/cmov/libpthread.so.0 (0xb7c390=
00)
|         /lib/ld-linux.so.2 (0xb7ef5000)
| $ gdb test-pd
| GNU gdb 6.3-debian
| Copyright 2004 Free Software Foundation, Inc.
| GDB is free software, covered by the GNU General Public License, and you
| are welcome to change it and/or distribute copies of it under certain
| conditions. Type "show copying" to see the conditions.
| There is absolutely no warranty for GDB.  Type "show warranty" for detail=
s.
| This GDB was configured as "i386-linux"...Using host libthread_db library
| "/lib/tls/i686/cmov/libthread_db.so.1".
|
| (gdb) r
| Starting program: /home/nichloas/test/c/test-pd
| [Thread debugging using libthread_db enabled]
| [New Thread -1211057952 (LWP 4937)]
| *** glibc detected *** free(): invalid pointer: 0x0808e2f0 ***
|
| Program received signal SIGABRT, Aborted.
| [Switching to Thread -1211057952 (LWP 4937)]
| 0xffffe410 in __kernel_vsyscall ()
| (gdb) bt
| #0  0xffffe410 in __kernel_vsyscall ()
| #1  0xb7d52691 in raise () from /lib/tls/i686/cmov/libc.so.6
| #2  0xb7d53f5b in abort () from /lib/tls/i686/cmov/libc.so.6
| #3  0xb7d88ba7 in __libc_message () from /lib/tls/i686/cmov/libc.so.6
| #4  0xb7d8f177 in _int_free () from /lib/tls/i686/cmov/libc.so.6
| #5  0xb7d8f612 in free () from /lib/tls/i686/cmov/libc.so.6
| #6  0xb7f3b7c1 in operator delete () from /usr/lib/libstdc++.so.6
| #7  0x08048875 in __gnu_cxx::new_allocator<std::string>::deallocate
| (this=3D0xbffd9f04, __p=3D0x808e2f0) at new_allocator.h:94
| #8  0x08048898 in std::_Vector_base<std::string,
| std::allocator<std::string> >::_M_deallocate (this=3D0xbffd9f04,
| __p=3D0x808e2f0, __n=3D2) at stl_vector.h:123
| #9  0x080488ce in ~_Vector_base (this=3D0xbffd9f04) at stl_vector.h:109
| #10 0x080489ae in ~vector (this=3D0xbffd9f04) at stl_vector.h:273
| #11 0x08048a20 in ~positional_options_description (this=3D0xbffd9f04) at
| positional_options.hpp:31 #12 0x080487a1 in main () at test-pd.cpp:9
|
| $ g++ -v
| Using built-in specs.
| Target: i486-linux-gnu
| Configured with: ../src/configure -v
| --enable-languages=3Dc,c++,java,f95,objc,ada,treelang --prefix=3D/usr
| --enable-shared --with-system-zlib --libexecdir=3D/usr/lib
| --without-included-gettext --enable-threads=3Dposix --enable-nls
| --program-suffix=3D-4.0 --enable-__cxa_atexit --enable-clocale=3Dgnu
| --enable-libstdcxx-debug --enable-java-awt=3Dgtk --enable-gtk-cairo
| --with-java-home=3D/usr/lib/jvm/java-1.4.2-gcj-4.0-1.4.2.0/jre --enable-m=
pfr
| --disable-werror --enable-checking=3Drelease i486-linux-gnu Thread model:
| posix
| gcc version 4.0.3 20051111 (prerelease) (Debian 4.0.2-4)
|
|
| -- System Information:
| Debian Release: testing/unstable
|   APT prefers unstable
|   APT policy: (500, 'unstable'), (1, 'experimental')
| Architecture: i386 (i686)
| Shell:  /bin/sh linked to /bin/bash
| Kernel: Linux 2.6.14-1-686-smp
| Locale: LANG=3Den_US.UTF-8, LC_CTYPE=3Dzh_CN.UTF-8 (charmap=3DUTF-8)
|
| Versions of packages libboost-program-options-dev depends on:
| ii  libboost-dev                  1.33.0-3   Boost C++ Libraries
| development fi ii  libboost-program-options1.33. 1.33.0-3   program optio=
ns
| library for C++
|
| libboost-program-options-dev recommends no packages.
|
| -- debconf-show failed
|
|
| _______________________________________________
| pkg-boost-devel mailing list
| pkg-boost-devel at lists.alioth.debian.org
| http://lists.alioth.debian.org/mailman/listinfo/pkg-boost-devel

=2D-=20
Christophe Prud'homme
EPFL SB IACS CMCS
MA B2 534 (B=E2timent MA)
Station 8
CH-1015 Lausanne
Tel: +41 (0)21 693 25 47
=46ax: +41 (0)21 693 43 03



More information about the pkg-boost-devel mailing list