Ticket #7498: test_binary_archive_with_map.cpp

File test_binary_archive_with_map.cpp, 23.8 KB (added by anonymous, 10 years ago)
Line 
1// Testcase: test_binary_archive_with_map
2
3// This Win32-specific test creates a std::map from strings to strings and
4// then serializes it to a file. We then attempt to desearialize from that
5// file. On boost_1_45_0 and boost_1_51_0 for Win32 this testcase fails on
6// our company's secondary build machine.
7
8// The call stack is below the code, along with details of the failure
9
10#include <string>
11#include <fstream>
12#include <map>
13
14#ifdef _WIN32
15#pragma warning(disable:4244)
16#else
17#warning "This testcase affects MSVC boosts; I can't reproduce it on anything else"
18#endif
19
20#include "boost/serialization/serialization.hpp"
21#include "boost/serialization/map.hpp"
22#include "boost/archive/binary_iarchive.hpp"
23#include "boost/archive/binary_oarchive.hpp"
24
25int main() {
26 std::map<std::string, std::string> m1, m2;
27 std::string generator = "abcdefghijklmnopqrstuvwxyz";
28 for (std::string::size_type i = 0; i < generator.size(); ++i) {
29 m1[&generator[i]] = &generator[i];
30 }
31 std::ofstream ofs;
32 std::ifstream ifs;
33 {
34 ofs.open("test.cache");
35 boost::archive::binary_oarchive oarch(ofs);
36 oarch << m1;
37 // To ensure the buffers are empty when we re-open the file, and
38 // that file locks are released
39 ofs.flush();
40 ofs.close();
41 }
42 {
43 ifs.open("test.cache");
44 boost::archive::binary_iarchive iarch(ifs);
45 iarch >> m2;
46 }
47 assert(m1 == m2);
48 return 0;
49}
50
51/* Failure details:
52At the top of the call stack,
53 std::streamsize s = static_cast<std::streamsize>(count / sizeof(Elem));
54 std::streamsize scount = m_sb.sgetn(
55 static_cast<Elem *>(address),
56 s
57 );
58 if(scount != s)
59 boost::serialization::throw_exception(
60 archive_exception(archive_exception::input_stream_error)
61 );
62`scount` is 0, `s` is 8. It's trying to load a size_type, presumably for a string length or a map length.
63
64m2 is empty when this exception is thrown, but it isn't always empty. Previous executions of this test
65actually left data in m2, but that was with std::wstrings and not std::strings.
66*/
67
68/* Call stack:
69> test_binary_archive_with_map.exe!boost::serialization::throw_exception<boost::archive::archive_exception>(const boost::archive::archive_exception & e) Line 37 C++
70 test_binary_archive_with_map.exe!boost::archive::basic_binary_iprimitive<boost::archive::binary_iarchive,char,std::char_traits<char> >::load_binary(void * address, unsigned __int64 count) Line 166 + 0x42 bytes C++
71 test_binary_archive_with_map.exe!boost::archive::basic_binary_iprimitive<boost::archive::binary_iarchive,char,std::char_traits<char> >::load<boost::serialization::collection_size_type>(boost::serialization::collection_size_type & t) Line 89 C++
72 test_binary_archive_with_map.exe!boost::archive::load_access::load_primitive<boost::archive::binary_iarchive,boost::serialization::collection_size_type>(boost::archive::binary_iarchive & ar, boost::serialization::collection_size_type & t) Line 108 C++
73 test_binary_archive_with_map.exe!boost::archive::detail::load_non_pointer_type<boost::archive::binary_iarchive>::load_primitive::invoke<boost::serialization::collection_size_type>(boost::archive::binary_iarchive & ar, boost::serialization::collection_size_type & t) Line 363 C++
74 test_binary_archive_with_map.exe!boost::archive::detail::load_non_pointer_type<boost::archive::binary_iarchive>::invoke<boost::serialization::collection_size_type>(boost::archive::binary_iarchive & ar, boost::serialization::collection_size_type & t) Line 440 C++
75 test_binary_archive_with_map.exe!boost::archive::load<boost::archive::binary_iarchive,boost::serialization::collection_size_type>(boost::archive::binary_iarchive & ar, boost::serialization::collection_size_type & t) Line 593 C++
76 test_binary_archive_with_map.exe!boost::archive::detail::common_iarchive<boost::archive::binary_iarchive>::load_override<boost::serialization::collection_size_type>(boost::serialization::collection_size_type & t, int __formal) Line 67 C++
77 test_binary_archive_with_map.exe!boost::archive::basic_binary_iarchive<boost::archive::binary_iarchive>::load_override(boost::serialization::collection_size_type & t, int version) Line 196 C++
78 test_binary_archive_with_map.exe!boost::archive::binary_iarchive_impl<boost::archive::binary_iarchive,char,std::char_traits<char> >::load_override<boost::serialization::collection_size_type>(boost::serialization::collection_size_type & t, int __formal) Line 51 C++
79 test_binary_archive_with_map.exe!boost::archive::detail::interface_iarchive<boost::archive::binary_iarchive>::operator>><boost::serialization::collection_size_type>(boost::serialization::collection_size_type & t) Line 61 C++
80 test_binary_archive_with_map.exe!boost::serialization::nvp<boost::serialization::collection_size_type>::load<boost::archive::binary_iarchive>(boost::archive::binary_iarchive & ar, const unsigned int __formal) Line 88 C++
81 test_binary_archive_with_map.exe!boost::serialization::access::member_load<boost::archive::binary_iarchive,boost::serialization::nvp<boost::serialization::collection_size_type> >(boost::archive::binary_iarchive & ar, boost::serialization::nvp<boost::serialization::collection_size_type> & t, const unsigned int file_version) Line 102 C++
82 test_binary_archive_with_map.exe!boost::serialization::detail::member_loader<boost::archive::binary_iarchive,boost::serialization::nvp<boost::serialization::collection_size_type> >::invoke(boost::archive::binary_iarchive & ar, boost::serialization::nvp<boost::serialization::collection_size_type> & t, const unsigned int file_version) Line 55 C++
83 test_binary_archive_with_map.exe!boost::serialization::split_member<boost::archive::binary_iarchive,boost::serialization::nvp<boost::serialization::collection_size_type> >(boost::archive::binary_iarchive & ar, boost::serialization::nvp<boost::serialization::collection_size_type> & t, const unsigned int file_version) Line 70 C++
84 test_binary_archive_with_map.exe!boost::serialization::nvp<boost::serialization::collection_size_type>::serialize<boost::archive::binary_iarchive>(boost::archive::binary_iarchive & ar, const unsigned int file_version) Line 89 + 0x3c bytes C++
85 test_binary_archive_with_map.exe!boost::serialization::access::serialize<boost::archive::binary_iarchive,boost::serialization::nvp<boost::serialization::collection_size_type> >(boost::archive::binary_iarchive & ar, boost::serialization::nvp<boost::serialization::collection_size_type> & t, const unsigned int file_version) Line 119 C++
86 test_binary_archive_with_map.exe!boost::serialization::serialize<boost::archive::binary_iarchive,boost::serialization::nvp<boost::serialization::collection_size_type> >(boost::archive::binary_iarchive & ar, boost::serialization::nvp<boost::serialization::collection_size_type> & t, const unsigned int file_version) Line 70 C++
87 test_binary_archive_with_map.exe!boost::serialization::serialize_adl<boost::archive::binary_iarchive,boost::serialization::nvp<boost::serialization::collection_size_type> >(boost::archive::binary_iarchive & ar, boost::serialization::nvp<boost::serialization::collection_size_type> & t, const unsigned int file_version) Line 132 C++
88 test_binary_archive_with_map.exe!boost::archive::detail::load_non_pointer_type<boost::archive::binary_iarchive>::load_only::invoke<boost::serialization::nvp<boost::serialization::collection_size_type> >(boost::archive::binary_iarchive & ar, const boost::serialization::nvp<boost::serialization::collection_size_type> & t) Line 378 C++
89 test_binary_archive_with_map.exe!boost::archive::detail::load_non_pointer_type<boost::archive::binary_iarchive>::invoke<boost::serialization::nvp<boost::serialization::collection_size_type> const >(boost::archive::binary_iarchive & ar, const boost::serialization::nvp<boost::serialization::collection_size_type> & t) Line 440 C++
90 test_binary_archive_with_map.exe!boost::archive::load<boost::archive::binary_iarchive,boost::serialization::nvp<boost::serialization::collection_size_type> const >(boost::archive::binary_iarchive & ar, const boost::serialization::nvp<boost::serialization::collection_size_type> & t) Line 593 C++
91 test_binary_archive_with_map.exe!boost::archive::detail::common_iarchive<boost::archive::binary_iarchive>::load_override<boost::serialization::nvp<boost::serialization::collection_size_type> const >(const boost::serialization::nvp<boost::serialization::collection_size_type> & t, int __formal) Line 67 C++
92 test_binary_archive_with_map.exe!boost::archive::basic_binary_iarchive<boost::archive::binary_iarchive>::load_override<boost::serialization::nvp<boost::serialization::collection_size_type> const >(const boost::serialization::nvp<boost::serialization::collection_size_type> & t, int version) Line 71 C++
93 test_binary_archive_with_map.exe!boost::archive::binary_iarchive_impl<boost::archive::binary_iarchive,char,std::char_traits<char> >::load_override<boost::serialization::nvp<boost::serialization::collection_size_type> const >(const boost::serialization::nvp<boost::serialization::collection_size_type> & t, int __formal) Line 51 C++
94 test_binary_archive_with_map.exe!boost::archive::detail::interface_iarchive<boost::archive::binary_iarchive>::operator>><boost::serialization::nvp<boost::serialization::collection_size_type> const >(const boost::serialization::nvp<boost::serialization::collection_size_type> & t) Line 61 C++
95 test_binary_archive_with_map.exe!boost::serialization::stl::load_collection<boost::archive::binary_iarchive,std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,std::basic_string<char,std::char_traits<char>,std::allocator<char> > > > >,boost::serialization::stl::archive_input_map<boost::archive::binary_iarchive,std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,std::basic_string<char,std::char_traits<char>,std::allocator<char> > > > > >,boost::serialization::stl::no_reserve_imp<std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,std::basic_string<char,std::char_traits<char>,std::allocator<char> > > > > > >(boost::archive::binary_iarchive & ar, std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,std::basic_string<char,std::char_traits<char>,std::allocator<char> > > > > & s) Line 148 C++
96 test_binary_archive_with_map.exe!boost::serialization::load<boost::archive::binary_iarchive,std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,std::basic_string<char,std::char_traits<char>,std::allocator<char> > > > >(boost::archive::binary_iarchive & ar, std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,std::basic_string<char,std::char_traits<char>,std::allocator<char> > > > > & t, const unsigned int __formal) Line 60 C++
97 test_binary_archive_with_map.exe!boost::serialization::free_loader<boost::archive::binary_iarchive,std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,std::basic_string<char,std::char_traits<char>,std::allocator<char> > > > > >::invoke(boost::archive::binary_iarchive & ar, std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,std::basic_string<char,std::char_traits<char>,std::allocator<char> > > > > & t, const unsigned int file_version) Line 59 C++
98 test_binary_archive_with_map.exe!boost::serialization::split_free<boost::archive::binary_iarchive,std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,std::basic_string<char,std::char_traits<char>,std::allocator<char> > > > > >(boost::archive::binary_iarchive & ar, std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,std::basic_string<char,std::char_traits<char>,std::allocator<char> > > > > & t, const unsigned int file_version) Line 75 C++
99 test_binary_archive_with_map.exe!boost::serialization::serialize<boost::archive::binary_iarchive,std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,std::basic_string<char,std::char_traits<char>,std::allocator<char> > > > >(boost::archive::binary_iarchive & ar, std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,std::basic_string<char,std::char_traits<char>,std::allocator<char> > > > > & t, const unsigned int file_version) Line 71 C++
100 test_binary_archive_with_map.exe!boost::serialization::serialize_adl<boost::archive::binary_iarchive,std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,std::basic_string<char,std::char_traits<char>,std::allocator<char> > > > > >(boost::archive::binary_iarchive & ar, std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,std::basic_string<char,std::char_traits<char>,std::allocator<char> > > > > & t, const unsigned int file_version) Line 132 C++
101 test_binary_archive_with_map.exe!boost::archive::detail::iserializer<boost::archive::binary_iarchive,std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,std::basic_string<char,std::char_traits<char>,std::allocator<char> > > > > >::load_object_data(boost::archive::detail::basic_iarchive & ar, void * x, const unsigned int file_version) Line 193 C++
102 test_binary_archive_with_map.exe!boost::archive::detail::basic_iarchive_impl::load_object(boost::archive::detail::basic_iarchive & ar, void * t, const boost::archive::detail::basic_iserializer & bis) Line 395 C++
103 test_binary_archive_with_map.exe!boost::archive::detail::basic_iarchive::load_object(void * t, const boost::archive::detail::basic_iserializer & bis) Line 538 C++
104 test_binary_archive_with_map.exe!boost::archive::detail::load_non_pointer_type<boost::archive::binary_iarchive>::load_standard::invoke<std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,std::basic_string<char,std::char_traits<char>,std::allocator<char> > > > > >(boost::archive::binary_iarchive & ar, const std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,std::basic_string<char,std::char_traits<char>,std::allocator<char> > > > > & t) Line 393 C++
105 test_binary_archive_with_map.exe!boost::archive::detail::load_non_pointer_type<boost::archive::binary_iarchive>::invoke<std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,std::basic_string<char,std::char_traits<char>,std::allocator<char> > > > > >(boost::archive::binary_iarchive & ar, std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,std::basic_string<char,std::char_traits<char>,std::allocator<char> > > > > & t) Line 440 C++
106 test_binary_archive_with_map.exe!boost::archive::load<boost::archive::binary_iarchive,std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,std::basic_string<char,std::char_traits<char>,std::allocator<char> > > > > >(boost::archive::binary_iarchive & ar, std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,std::basic_string<char,std::char_traits<char>,std::allocator<char> > > > > & t) Line 593 C++
107 test_binary_archive_with_map.exe!boost::archive::detail::common_iarchive<boost::archive::binary_iarchive>::load_override<std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,std::basic_string<char,std::char_traits<char>,std::allocator<char> > > > > >(std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,std::basic_string<char,std::char_traits<char>,std::allocator<char> > > > > & t, int __formal) Line 67 C++
108 test_binary_archive_with_map.exe!boost::archive::basic_binary_iarchive<boost::archive::binary_iarchive>::load_override<std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,std::basic_string<char,std::char_traits<char>,std::allocator<char> > > > > >(std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,std::basic_string<char,std::char_traits<char>,std::allocator<char> > > > > & t, int version) Line 71 C++
109 test_binary_archive_with_map.exe!boost::archive::binary_iarchive_impl<boost::archive::binary_iarchive,char,std::char_traits<char> >::load_override<std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,std::basic_string<char,std::char_traits<char>,std::allocator<char> > > > > >(std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,std::basic_string<char,std::char_traits<char>,std::allocator<char> > > > > & t, int __formal) Line 51 C++
110 test_binary_archive_with_map.exe!boost::archive::detail::interface_iarchive<boost::archive::binary_iarchive>::operator>><std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,std::basic_string<char,std::char_traits<char>,std::allocator<char> > > > > >(std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,std::basic_string<char,std::char_traits<char>,std::allocator<char> > > > > & t) Line 61 C++
111 test_binary_archive_with_map.exe!main() Line 37 + 0x15 bytes C++
112 test_binary_archive_with_map.exe!__tmainCRTStartup() Line 555 + 0x19 bytes C
113 test_binary_archive_with_map.exe!mainCRTStartup() Line 371 C
114 kernel32.dll!BaseThreadInitThunk() + 0xd bytes
115 ntdll.dll!RtlUserThreadStart() + 0x21 bytes
116*/