Linux Archive

Linux Archive (
-   Debian GCC (
-   -   Bug#608055: g++-4.4: Segfault with GCC 4.4 when C++ .so is dlopen'd by pure-C executable (GCC 4.3 and 4.5 unaffected) (

John Lindgren 12-26-2010 05:27 PM

Bug#608055: g++-4.4: Segfault with GCC 4.4 when C++ .so is dlopen'd by pure-C executable (GCC 4.3 and 4.5 unaffected)
Package: g++-4.4
Version: 4.4.5-8
Severity: normal
Tags: upstream

There is a bug in GCC/G++ 4.4 which leads to segfaults in random
places of the C++ library.* The only place it seems to pop up is in
Audacious, which is a C program (linked with gcc) that loads C++
plugins at run-time (linked with g++).* Compiling Audacious and the
plugins with CC=gcc-4.3 and CXX=g++-4.3 eliminates the problem.*
According to reports from Ubuntu and Gentoo users, the problem is
also fixed by using GCC 4.5.* So, it would be nice if the change
that produced this problem in 4.4 could be reverted, or if the
change that fixed it in 4.5 could be backported.

Reports of this same bug outside Debian, with several different

(In the Ubuntu report, the claim is made that linking the plugins
with g++ and not gcc is a workaround.* I do not know the grounds for
this claim; however, at least in upstream Audacious source, C++
plugins have always been linked with g++, and the problem still

My backtrace (the crash occurred, after enabling the ProjectM
visualization plugin and closing Audacious, on the next startup):

Program received signal SIGSEGV, Segmentation fault.
0x00007fffeb5b2079 in std::uncaught_exception() () from /usr/lib/
(gdb) bt
#0 0x00007fffeb5b2079 in std::uncaught_exception() ()
from /usr/lib/
#1 0x00007fffeb58534d in std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long) () from /usr/lib/
#2 0x00007fffeb81cb9f in projectM::initPresetTools(int, int) ()
from /usr/lib/
#3 0x00007fffeb81d46d in projectM::projectM_init(int, int, int, int, int, int)
() from /usr/lib/
#4 0x00007fffeb81dfcf in projectM::readConfig(std::string const&) ()
from /usr/lib/
#5 0x00007fffeb81e563 in projectM::projectM(std::string, int) ()
from /usr/lib/
#6 0x00007fffeca0795c in _gtk_projectm_realize_impl (widget=0x83c9f0,
data="" at gtk_projectm_impl.cxx:140
#7 0x00007ffff484947e in IA__g_closure_invoke (closure=0x8761a0,
return_value=0x0, n_param_values=1, param_values=0x72b180,
at /scratch/build-area/glib2.0-2.24.2/gobject/gclosure.c:767

-- John Lindgren

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

Kernel: Linux 2.6.32-5-amd64 (SMP w/2 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 g++-4.4 depends on:
ii gcc-4.4 4.4.5-8 The GNU C compiler
ii gcc-4.4-base 4.4.5-8 The GNU Compiler Collection (base
ii libc6 2.11.2-7 Embedded GNU C Library: Shared lib
ii libgmp3c2 2:4.3.2+dfsg-1 Multiprecision arithmetic library
ii libmpfr4 3.0.0-2 multiple precision floating-point
ii libstdc++6-4.4-dev 4.4.5-8 The GNU Standard C++ Library v3 (d

g++-4.4 recommends no packages.

Versions of packages g++-4.4 suggests:
pn g++-4.4-multilib <none> (no description available)
pn gcc-4.4-doc <none> (no description available)
pn libstdc++6-4.4-dbg <none> (no description available)

-- no debconf information

All times are GMT. The time now is 10:46 AM.

VBulletin, Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO ©2007, Crawlability, Inc.