This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug libstdc++/13205] New: 64BIT: Segmentation fault in code executed inside std::locale::_Impl::_M_install_facet()


The following testcase executes with SEGFAULT in 64-bit mode:

t.C
---
#include <locale>

using namespace std;

struct MyfacetA : public locale::facet {
        static locale::id id;
};
locale::id MyfacetA::id;

int main()
{
        locale loc;
        locale loc2 = locale(loc, new MyfacetA);
        return 0;
}
------------------------------------------------
Command:
/opt/cross/bin/powerpc64-linux-g++ -I/opt/cross/include/powerpc64-linux t.C 
------------------------------------------------
gdb traceback:

#0  0x0000007fe0388424 in chunk_free () from /lib64/libc.so.6                   
#1  0x0000007fe03883b4 in free () from /lib64/libc.so.6                         
#2  0x0000007fe0135514 in operator delete(void*) ()                             
   from /usr/lib64/libstdc++.so.5                                               
#3  0x0000007fe013557c in operator delete[](void*) ()                           
   from /usr/lib64/libstdc++.so.5                                               
#4  0x0000007fe01102b0 in std::locale::_Impl::_M_install_facet(std::locale::id 
const*, std::locale::facet*) () 
from /usr/lib64/libstdc++.so.5                   
#5  0x0000000010000fcc in std::locale::locale<MyfacetA>(std::locale const&, 
MyfacetA*) 
()                                                                       
#6  0x0000000010000d8c in main ()                                               
#7  0x0000007fe0333348 in __libc_start_main () from /lib64/libc.so.6    

------------------------------------------------
uname -a:    
                                                                   
Linux localhost 2.4.21-111-pseries64 #1 SMP Thu Oct 30 23:57:04 UTC 2003 ppc64 
unknown  

------------------------------------------------
g++ - v trace:

Reading specs from /opt/cross/lib/gcc-lib/powerpc64-linux/3.2.2/specs
Configured with: /usr/src/packages/BUILD/cross-ppc64-gcc-3.2.2/gcc-
3.2.2/configure --enable-languages=c,c++,f77 --prefix=/opt/cross --host=powerpc-
suse-linux --target=powerpc64-linux --enable-threads=posix --disable-nls --
enable-shared --with-headers=/usr/src/packages/BUILD/cross-ppc64-gcc-
3.2.2/include-ppc64-glibc-2.2.5
Thread model: posix
gcc version 3.2.2
 /opt/cross/lib/gcc-lib/powerpc64-linux/3.2.2/cc1plus -v -
I/opt/cross/include/powerpc64-linux -D__GNUC__=3 -D__GNUC_MINOR__=2 -
D__GNUC_PATCHLEVEL__=2 -D__GXX_ABI_VERSION=102 -D__PPC__ -D__PPC64__ -
D__powerpc__ -D__powerpc64__ -D__BIG_ENDIAN__ -D__ELF__ -
D__LONG_MAX__=9223372036854775807L -D__PPC__ -D__PPC64__ -D__powerpc__ -
D__powerpc64__ -D__BIG_ENDIAN__ -D__ELF__ -D__LONG_MAX__=9223372036854775807L -
Acpu=powerpc64 -Amachine=powerpc64 -D__NO_INLINE__ -D__STDC_HOSTED__=1 -
D_GNU_SOURCE -D__PIC__ -D__pic__ -D_CALL_SYSV -D_BIG_ENDIAN -D__BIG_ENDIAN__ -
Amachine=bigendian -D_ARCH_PPC64 -D__unix__ -D__gnu_linux__ -D__linux__ -Dunix -
D__unix -Dlinux -D__linux -Asystem=unix -Asystem=posix t.C -D__GNUG__=3 -
D__DEPRECATED -D__EXCEPTIONS -quiet -dumpbase t.C -version -o /tmp/ccAy4W9f.s
GNU CPP version 3.2.2 (cpplib) (PowerPC64 GNU/Linux)
GNU C++ version 3.2.2 (powerpc64-linux)
	compiled by GNU C version 3.2.2.
ignoring nonexistent directory "/opt/cross/include/c++/3.2.2"
ignoring nonexistent directory "/opt/cross/include/c++/3.2.2/powerpc64-linux"
ignoring nonexistent directory "/opt/cross/include/c++/3.2.2/backward"
ignoring nonexistent directory "/opt/cross/powerpc64-linux/sys-include"
#include "..." search starts here:
#include <...> search starts here:
 /opt/cross/include/powerpc64-linux
 /opt/cross/include
 /opt/cross/lib/gcc-lib/powerpc64-linux/3.2.2/include
 /opt/cross/powerpc64-linux/include
End of search list.
 /opt/cross/lib/gcc-lib/powerpc64-linux/3.2.2/../../../../powerpc64-
linux/bin/as -V -Qy -a64 -mppc64 -o /tmp/ccgWWgEx.o /tmp/ccAy4W9f.s
GNU assembler version 2.13.90.0.4 (powerpc64-linux) using BFD version 
2.13.90.0.4 20020814
 /opt/cross/lib/gcc-lib/powerpc64-linux/3.2.2/collect2 --eh-frame-hdr -V -Qy -m 
elf64ppc -dynamic-linker /lib64/ld64.so.1 /opt/cross/lib/gcc-lib/powerpc64-
linux/3.2.2/../../../../powerpc64-linux/lib/crt1.o /opt/cross/lib/gcc-
lib/powerpc64-linux/3.2.2/../../../../powerpc64-
linux/lib/crti.o /opt/cross/lib/gcc-lib/powerpc64-linux/3.2.2/crtbegin.o -
L/opt/cross/lib/gcc-lib/powerpc64-linux/3.2.2 -L/opt/cross/lib/gcc-
lib/powerpc64-linux/3.2.2/../../../../powerpc64-linux/lib -L/opt/cross/lib/gcc-
lib/powerpc64-linux/3.2.2/../../.. -L/lib64 -L/usr/lib64 /tmp/ccgWWgEx.o -
lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /opt/cross/lib/gcc-lib/powerpc64-
linux/3.2.2/crtsavres.o /opt/cross/lib/gcc-lib/powerpc64-
linux/3.2.2/crtend.o /opt/cross/lib/gcc-lib/powerpc64-
linux/3.2.2/../../../../powerpc64-linux/lib/crtn.o
GNU ld version 2.13.90.0.4 20020814
  Supported emulations:
   elf64ppc
   elf32ppclinux
   elf32ppc
   elf32ppcsim

-- 
           Summary: 64BIT: Segmentation fault in code executed inside
                    std::locale::_Impl::_M_install_facet()
           Product: gcc
           Version: 3.2.2
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: libstdc++
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: skasapin at ca dot ibm dot com
                CC: gcc-bugs at gcc dot gnu dot org
  GCC host triplet: powerpc64-linux
GCC target triplet: powerpc64-linux


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=13205


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]