Here are the traces for one of the cores:

boost1.54-1.54.0/bin.v2/libs/filesystem/test/operations_test_static.test/gcc-4.8/debug/link-static/operations_test_static
Program received signal SIGSEGV, Segmentation fault.

__atomic_add_dispatch (__val=1, __mem=0x0) at 
/build/buildd/gcc-4.8-4.8.2/build/powerpc64le-linux-gnu/libstdc++-v3/include/ext/atomicity.h:98
98      
/build/buildd/gcc-4.8-4.8.2/build/powerpc64le-linux-gnu/libstdc++-v3/include/ext/atomicity.h:
 No such file or directory.
1: x/i $pc
=> 0x3fffb7ee28ec <std::locale::locale(std::locale const&)+60>: lwz     
r10,0(r9)


__atomic_add_dispatch (__val=1, __mem=0x0) at 
/build/buildd/gcc-4.8-4.8.2/build/powerpc64le-linux-gnu/libstdc++-v3/include/ext/atomicity.h:98
98      
/build/buildd/gcc-4.8-4.8.2/build/powerpc64le-linux-gnu/libstdc++-v3/include/ext/atomicity.h:
 No such file or directory.

(gdb) where
#0  __atomic_add_dispatch (__val=1, __mem=0x0) at 
/build/buildd/gcc-4.8-4.8.2/build/powerpc64le-linux-gnu/libstdc++-v3/include/ext/atomicity.h:98
#1  _M_add_reference (this=0x0) at 
/build/buildd/gcc-4.8-4.8.2/build/powerpc64le-linux-gnu/libstdc++-v3/include/bits/locale_classes.h:510
#2  std::locale::locale (this=0x100783d0 
<boost::filesystem::path::codecvt()::posix_lazy_initialization>, __other=...) 
at ../../../../../src/libstdc++-v3/src/c++98/locale.cc:80
#3  0x00000000100492a8 in boost::filesystem::path::imbue (loc=...) at 
../libs/filesystem/src/path.cpp:918
#4  0x00000000100491b0 in boost::filesystem::path::codecvt () at 
../libs/filesystem/src/path.cpp:911
#5  0x000000001004aa3c in boost::filesystem::path::wstring 
(this=0x3ffffffff5c8) at ../boost/filesystem/path.hpp:386
#6  0x000000001004a540 in boost::filesystem::detail::unique_path (model=..., 
ec=0x0) at ../libs/filesystem/src/unique_path.cpp:113
#7  0x00000000100238c4 in boost::filesystem::unique_path (p=...) at 
../boost/filesystem/operations.hpp:544
#8  0x00000000100200cc in __static_initialization_and_destruction_0 
(__initialize_p=1, __priority=65535) at 
../libs/filesystem/test/operations_test.cpp:118
#9  0x00000000100201fc in _GLOBAL__sub_I__Z8cpp_mainiPPc () at 
../libs/filesystem/test/operations_test.cpp:2034
#10 0x000000001004d444 in __libc_csu_init ()
#11 0x00003fffb7c8e1ec in generic_start_main (main=0x1003173c <main(int, 
char**)>, argc=<optimized out>, argv=0x3ffffffffa68, auxvec=0x3ffffffffb10, 
init=0x1004d3b0 <__libc_csu_init>,
    rtld_fini=<optimized out>, stack_end=<optimized out>, fini=<optimized out>) 
at ../csu/libc-start.c:246
#12 0x00003fffb7c8e458 in __libc_start_main (argc=<optimized out>, 
argv=<optimized out>, ev=<optimized out>, auxvec=<optimized out>, 
rtld_fini=<optimized out>, stinfo=<optimized out>,
    stack_on_entry=<optimized out>) at 
../sysdeps/unix/sysv/linux/powerpc/libc-start.c:93
#13 0x0000000000000000 in ?? ()


Breakpoint 1, boost::filesystem::path::imbue (loc=...) at 
../libs/filesystem/src/path.cpp:918
918         std::locale temp(path_locale);

 p loc
$1 = (const std::locale &) @0x3ffffffff418: {static none = 0, static ctype = 1, 
static numeric = 2, static collate = 4, static time = 8, static monetary = 16, 
static messages = 32, static all = 63,
  _M_impl = 0x100790f0, static _S_classic = 0x3fffb7fae0b8 <(anonymous 
namespace)::c_locale_impl>, static _S_global = 0x3fffb7fae0b8 <(anonymous 
namespace)::c_locale_impl>, static _S_categories =
    0x3fffb7f92cb8 <__gnu_cxx::category_names>, static _S_once = 0}

 p path_locale
$2 = {static none = 0, static ctype = 1, static numeric = 2, static collate = 
4, static time = 8, static monetary = 16, static messages = 32, static all = 
63, _M_impl = 0x0,
  static _S_classic = 0x3fffb7fae0b8 <(anonymous namespace)::c_locale_impl>, 
static _S_global = 0x3fffb7fae0b8 <(anonymous namespace)::c_locale_impl>,
  static _S_categories = 0x3fffb7f92cb8 <__gnu_cxx::category_names>, static 
_S_once = 0}


It looks like something wrong happened here:

  std::locale::locale (this=0x100783d0 
<boost::filesystem::path::codecvt()::posix_lazy_initialization>, __other=...)
              at ../../../../../src/libstdc++-v3/src/c++98/locale.cc:80

in the libstdc++ library, since correct address was changed to 0x0
address in __atomic_add_dispatch .


BOOST :
libs/filesystem/src/path.cpp
  std::locale path::imbue(const std::locale& loc)
  {
    std::locale temp(path_locale);
    path_locale = loc;
    codecvt_facet_ptr =
      &std::use_facet<std::codecvt<wchar_t, char, std::mbstate_t> 
>(path_locale);
    return temp;
  }


/usr/include/c++/4.8/ext/atomicity.h

  static inline void
  __attribute__ ((__unused__))
  __atomic_add_dispatch(_Atomic_word* __mem, int __val)
  {
#ifdef __GTHREADS
    if (__gthread_active_p())
      __atomic_add(__mem, __val);
    else
      __atomic_add_single(__mem, __val);
#else
    __atomic_add_single(__mem, __val);
#endif
  }


It looks like some C++ object initialization went bad, for  std::locale::locale 
.

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1276262

Title:
  Many tests of Boost v1.54 fail

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/boost1.54/+bug/1276262/+subscriptions

-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to