Opened 13 years ago

Closed 13 years ago

#3043 closed Support Requests (wontfix)

[Patch Request] [serialization] Request a patch for fixing issues on SunOS 64bit platform

Reported by: maverickchiang@… Owned by: Robert Ramey
Milestone: Boost 1.40.0 Component: serialization
Version: Boost 1.38.0 Severity: Problem
Keywords: Cc:

Description

[Hi,

Please consider :

  1. fixing the issues (iostream error/exception,

segmentation faults , illegal instruction etc.) found when running the testsuite bundled with boost.serilation (v1.38, though I believe it applies to other revisions) on SunOS 5.8 sparc v9 (5.9, 5.10 64-bit also get the same crashes).

  1. adding SunOS 64bit platform to the boost regression test trunk : http://www.boost.org/development/tests/trunk/developer/serialization.html

,if possible.

Thanks very much, Mave

Change History (6)

comment:1 by anonymous, 13 years ago

Hi,

Hope the following debug messages helpful ...

-- build % dbx bin.v2/libs/serialization/test/test_array_xml_archive.test/sun-5.10/debug/link-static/test_array_xml_archive For information about new features see `help changes' To remove this message, put `dbxenv suppress_startup_message 7.6' in your .dbxrc Reading test_array_xml_archive Reading ld.so.1 Reading librt.so.1 Reading libCrun.so.1 Reading libm.so.2 Reading libc.so.1 Reading libaio.so.1 Reading libmd5.so.1 (dbx) check -all access checking - ON memuse checking - ON (dbx) run Running: test_array_xml_archive (process id 20491) Reading rtcapihook.so Reading libdl.so.1 Reading rtcaudit.so Reading libmapmalloc.so.1 Reading libgen.so.1 Reading libc_psr.so.1 Reading rtcboot.so Reading librtc.so RTC: Enabling Error Checking... RTC: Running program... Read from uninitialized (rui): Attempting to read 1 byte at address 0xffffffff7fffbffc

which is 204 bytes above the current stack pointer stopped in std::for_each<const char*,boost::archive::detail::XML_name<const char> > at line 67 in file "_algo.h"

67 }

(dbx) where =>[1] std::for_each<const char*,boost::archive::detail::XML_name<const char> >(first = 0x100223244 "", last = 0x100223244 "", f = STRUCT), line 67 in "_algo.h"

[2] boost::archive::basic_xml_oarchive<boost::archive::xml_oarchive>::save_start(this = 0xffffffff7fffdd30, name = 0x10022323d "a_array"), line 103 in "basic_xml_oarchive.ipp" [3] boost::archive::basic_xml_oarchive<boost::archive::xml_oarchive>::save_override<A[10]const>(this = 0xffffffff7fffdd30, t = STRUCT, _ARG3 = 0), line 102 in "basic_xml_oarchive.hpp" [4] boost::archive::detail::interface_oarchive<boost::archive::xml_oarchive>::operator<< <const boost::serialization::nvp<A[10]const> >(this = 0xffffffff7fffdd40, t = STRUCT), line 64 in "interface_oarchive.hpp" [5] test_array<A>(_ARG1 = CLASS), line 68 in "test_array.cpp" [6] test_main(_ARG1 = 1, _ARG2 = 0xffffffff7ffff0d8), line 117 in "test_array.cpp" [7] main(argc = 1, argv = 0xffffffff7ffff0d8), line 179 in "test_tools.hpp"

(dbx)

comment:2 by anonymous, 13 years ago

Here is another testcase (test_array_test_archive): -- (process id 21722) Reading rtcapihook.so Reading libdl.so.1 Reading rtcaudit.so Reading libmapmalloc.so.1 Reading libgen.so.1 Reading libc_psr.so.1 Reading rtcboot.so Reading librtc.so RTC: Enabling Error Checking... RTC: Running program... Read from unallocated (rua): Attempting to read 8 bytes at address 0x100560438

which is 40 bytes past end of heap block of size 312 bytes at 0x1005602d8 This block was allocated from:

[1] operator new() at 0xffffffff6a508820 [2] std::_Locale::_Locale() at 0x10012be28 [3] std::locale::locale() at 0x10012c430 [4] std::locale::locale() at line 127 in "_locale.h" [5] boost::archive::add_facet() at line 37 in "add_facet.hpp" [6] boost::archive::basic_text_oprimitive<std::basic_ostream<char,std::char_traits<char> > >::basic_text_oprimitive() at line 90 in "basic_text_oprimitive.ipp" [7] boost::archive::text_oarchive_impl<boost::archive::text_oarchive>::text_oarchive_impl() at line 98 in "text_oarchive_impl.ipp" [8] boost::archive::text_oarchive::text_oarchive() at line 87 in "text_oarchive.hpp"

stopped in std::locale::locale at 0x000000010012a638 0x000000010012a638: locale+0x0008: ba,a 0x000000010044b0d8 ! 0x10044b0d8 Current function is boost::archive::basic_text_iprimitive<std::basic_istream<char,std::char_traits<char> > >::load<bool>

comment:3 by Robert Ramey, 13 years ago

I don't see any patch attached.

Robert Ramey

comment:4 by Robert Ramey, 13 years ago

Resolution: wontfix
Status: newclosed

comment:5 by anonymous, 13 years ago

Resolution: wontfix
Status: closedreopened
Type: PatchesSupport Requests

Hi Robert,

Could you pls confirm the following question before closing this ticket ? Either

  1. boost.serialization currently has no plan to support 64bit SunOS

or

  1. The platform issues do nothing with boost libraries. Users should contact OS/compiler vendors for relevant supports

Thanks, Mave.

comment:6 by Robert Ramey, 13 years ago

Resolution: wontfix
Status: reopenedclosed
  1. We support all conforming C++ libraries that we can.
  2. We cannot track down and resolve issues particular to a specific platform without access to that platform.
  3. We are happy to consider platform specific patches submitted by users who are can track down those issues.

I'm marking this as "wontfix" since there is not "can't fix" selection.

Robert Ramey

Note: See TracTickets for help on using tickets.