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 |
|
---|
25 | int 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:
|
---|
52 | At 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 |
|
---|
64 | m2 is empty when this exception is thrown, but it isn't always empty. Previous executions of this test
|
---|
65 | actually 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 | */
|
---|