{"action":"created","issue":{"url":"https://api.github.com/repos/zeux/pugixml/issues/48","labels_url":"https://api.github.com/repos/zeux/pugixml/issues/48/labels{/name}","comments_url":"https://api.github.com/repos/zeux/pugixml/issues/48/comments","events_url":"https://api.github.com/repos/zeux/pugixml/issues/48/events","html_url":"https://github.com/zeux/pugixml/issues/48","id":97023870,"number":48,"title":"BUILD_TESTS don't work on SPARC64 debian 7.8.0","user":{"login":"LowLevelMahn","id":580819,"avatar_url":"https://avatars.githubusercontent.com/u/580819?v=3","gravatar_id":"","url":"https://api.github.com/users/LowLevelMahn","html_url":"https://github.com/LowLevelMahn","followers_url":"https://api.github.com/users/LowLevelMahn/followers","following_url":"https://api.github.com/users/LowLevelMahn/following{/other_user}","gists_url":"https://api.github.com/users/LowLevelMahn/gists{/gist_id}","starred_url":"https://api.github.com/users/LowLevelMahn/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/LowLevelMahn/subscriptions","organizations_url":"https://api.github.com/users/LowLevelMahn/orgs","repos_url":"https://api.github.com/users/LowLevelMahn/repos","events_url":"https://api.github.com/users/LowLevelMahn/events{/privacy}","received_events_url":"https://api.github.com/users/LowLevelMahn/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":5,"created_at":"2015-07-24T10:40:20Z","updated_at":"2015-07-25T21:22:18Z","closed_at":"2015-07-25T21:15:43Z","body":"is (or better should be?) pugixml big-endian/unaligned-access aware - if that is the problem at all?\r\n\r\ni've got an qemu image for emulation if needed (~290MB)\r\n\r\ncmake 3.2.3\r\ngcc 4.6.3\r\nlibc-2.13\r\n\r\non this system big-endian and unaligned-accesses are not allowed\r\n\r\npugixml (and tests) compilation works but some test seems to fail\r\n\r\n>:~/pugixml/tests# ~/cmake-3.2.3/bin/cmake -D BUILD_TESTS=TRUE ~/pugixmml/scripts/\r\n-- The C compiler identification is GNU 4.6.3\r\n-- The CXX compiler identification is GNU 4.6.3\r\n-- Check for working C compiler: /usr/bin/cc\r\n-- Check for working C compiler: /usr/bin/cc -- works\r\n-- Detecting C compiler ABI info\r\n-- Detecting C compiler ABI info - done\r\n-- Detecting C compile features\r\n-- Detecting C compile features - done\r\n-- Check for working CXX compiler: /usr/bin/c++\r\n-- Check for working CXX compiler: /usr/bin/c++ -- works\r\n-- Detecting CXX compiler ABI info\r\n-- Detecting CXX compiler ABI info - done\r\n-- Detecting CXX compile features\r\n-- Detecting CXX compile features - done\r\n-- Configuring done\r\n-- Generating done\r\n-- Build files have been written to: /root/pugixml/tests\r\nroot@debian:~/pugixml/tests# make\r\nScanning dependencies of target pugixml\r\n[  2%] Building CXX object CMakeFiles/pugixml.dir/root/pugixml/src/pugixml.cpp.o\r\nLinking CXX static library libpugixml.a\r\n[  2%] Built target pugixml\r\nScanning dependencies of target check\r\n[  5%] Building CXX object CMakeFiles/check.dir/test_write.cpp.o\r\n[  7%] Building CXX object CMakeFiles/check.dir/test.cpp.o\r\n[ 10%] Building CXX object CMakeFiles/check.dir/test_xpath_api.cpp.o\r\n[ 13%] Building CXX object CMakeFiles/check.dir/test_version.cpp.o\r\n[ 15%] Building CXX object CMakeFiles/check.dir/test_dom_traverse.cpp.o\r\n[ 18%] Building CXX object CMakeFiles/check.dir/test_xpath_paths_abbrev_w3c.cpp.o\r\n[ 21%] Building CXX object CMakeFiles/check.dir/test_header_guard.cpp.o\r\n[ 23%] Building CXX object CMakeFiles/check.dir/test_xpath_functions.cpp.o\r\n[ 26%] Building CXX object CMakeFiles/check.dir/test_parse.cpp.o\r\n[ 28%] Building CXX object CMakeFiles/check.dir/test_header_string_2.cpp.o\r\n[ 31%] Building CXX object CMakeFiles/check.dir/test_header_only.cpp.o\r\n[ 34%] Building CXX object CMakeFiles/check.dir/test_xpath_paths_w3c.cpp.o\r\n[ 36%] Building CXX object CMakeFiles/check.dir/test_header_string_iostream.cpp.o\r\n[ 39%] Building CXX object CMakeFiles/check.dir/test_header_iosfwd_2.cpp.o\r\n[ 42%] Building CXX object CMakeFiles/check.dir/test_document.cpp.o\r\n[ 44%] Building CXX object CMakeFiles/check.dir/test_xpath_xalan_1.cpp.o\r\n[ 47%] Building CXX object CMakeFiles/check.dir/main.cpp.o\r\n[ 50%] Building CXX object CMakeFiles/check.dir/test_memory.cpp.o\r\n[ 52%] Building CXX object CMakeFiles/check.dir/test_header_iosfwd_1.cpp.o\r\n[ 55%] Building CXX object CMakeFiles/check.dir/test_parse_doctype.cpp.o\r\n[ 57%] Building CXX object CMakeFiles/check.dir/test_xpath_xalan_4.cpp.o\r\n[ 60%] Building CXX object CMakeFiles/check.dir/test_xpath_variables.cpp.o\r\n[ 63%] Building CXX object CMakeFiles/check.dir/test_xpath_xalan_5.cpp.o\r\n[ 65%] Building CXX object CMakeFiles/check.dir/test_xpath_parse.cpp.o\r\n[ 68%] Building CXX object CMakeFiles/check.dir/test_header_iostream_2.cpp.o\r\n[ 71%] Building CXX object CMakeFiles/check.dir/allocator.cpp.o\r\n[ 73%] Building CXX object CMakeFiles/check.dir/test_dom_modify.cpp.o\r\n[ 76%] Building CXX object CMakeFiles/check.dir/test_xpath_xalan_2.cpp.o\r\n[ 78%] Building CXX object CMakeFiles/check.dir/test_header_iostream_1.cpp.o\r\n[ 81%] Building CXX object CMakeFiles/check.dir/test_xpath_paths.cpp.o\r\n[ 84%] Building CXX object CMakeFiles/check.dir/test_dom_text.cpp.o\r\n[ 86%] Building CXX object CMakeFiles/check.dir/test_header_string_1.cpp.o\r\n[ 89%] Building CXX object CMakeFiles/check.dir/writer_string.cpp.o\r\n[ 92%] Building CXX object CMakeFiles/check.dir/test_xpath_xalan_3.cpp.o\r\n[ 94%] Building CXX object CMakeFiles/check.dir/test_unicode.cpp.o\r\n[ 97%] Building CXX object CMakeFiles/check.dir/test_xpath.cpp.o\r\n[100%] Building CXX object CMakeFiles/check.dir/test_xpath_operators.cpp.o\r\nLinking CXX executable check\r\n[ 4028.960310] check[3168]: segfault at 3f91bc ip 00000000703620dc (rpc 0000000070361a30) sp 00000000ff803648 error 30002 in libc-2.13.so[702d8000+172000]\r\nSegmentation fault\r\nmake[2]: *** [check] Error 139\r\nmake[1]: *** [CMakeFiles/check.dir/all] Error 2\r\nmake: *** [all] Error 2\r\n\r\n"},"comment":{"url":"https://api.github.com/repos/zeux/pugixml/issues/comments/124896722","html_url":"https://github.com/zeux/pugixml/issues/48#issuecomment-124896722","issue_url":"https://api.github.com/repos/zeux/pugixml/issues/48","id":124896722,"user":{"login":"zeux","id":1106629,"avatar_url":"https://avatars.githubusercontent.com/u/1106629?v=3","gravatar_id":"","url":"https://api.github.com/users/zeux","html_url":"https://github.com/zeux","followers_url":"https://api.github.com/users/zeux/followers","following_url":"https://api.github.com/users/zeux/following{/other_user}","gists_url":"https://api.github.com/users/zeux/gists{/gist_id}","starred_url":"https://api.github.com/users/zeux/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/zeux/subscriptions","organizations_url":"https://api.github.com/users/zeux/orgs","repos_url":"https://api.github.com/users/zeux/repos","events_url":"https://api.github.com/users/zeux/events{/privacy}","received_events_url":"https://api.github.com/users/zeux/received_events","type":"User","site_admin":false},"created_at":"2015-07-25T21:22:17Z","updated_at":"2015-07-25T21:22:17Z","body":"It's interesting that this problem can't really be caught by the undefined behavior sanitizer on x86/x64 despite the fact that it checks alignment violations:\r\n\r\nx86 has sizeof(void*) = 4 alignof(double) = 4\r\nx64 has sizeof(void*) = 8 alignof(double) = 8\r\n\r\nAnd the problem only manifests when sizeof(void*) < alignof(double)."}}