1 From d635772bc306b69ec6ad22313d673d0333f863a1 Mon Sep 17 00:00:00 2001
2 From: Edward Diener <eldiener@tropicsoft.com>
3 Date: Mon, 20 Jul 2015 23:35:19 -0400
4 Subject: [PATCH 1/5] Added missing decl attribute
7 src/archive_exception.cpp | 1 +
8 1 file changed, 1 insertion(+)
10 diff --git a/src/archive_exception.cpp b/src/archive_exception.cpp
11 index b850f89..38c6c9c 100644
12 --- a/libs/serialization/src/archive_exception.cpp
13 +++ b/libs/serialization/src/archive_exception.cpp
20 archive_exception::append(unsigned int l, const char * a){
21 while(l < (sizeof(m_buffer) - 1)){
23 From 0386df9cba448c6256d18fc542b8f21cec626dee Mon Sep 17 00:00:00 2001
24 From: Edward Diener <eldiener@tropicsoft.com>
25 Date: Mon, 20 Jul 2015 23:36:46 -0400
26 Subject: [PATCH 2/5] Move inline function out of line since it is being
27 exported/imported. This fixes a problem with gcc.
30 include/boost/archive/detail/basic_oarchive.hpp | 4 +---
31 src/basic_oarchive.cpp | 5 +++++
32 2 files changed, 6 insertions(+), 3 deletions(-)
34 diff --git a/include/boost/archive/detail/basic_oarchive.hpp b/include/boost/archive/detail/basic_oarchive.hpp
35 index 702c560..03ad17b 100644
36 --- a/boost/archive/detail/basic_oarchive.hpp
37 +++ b/boost/archive/detail/basic_oarchive.hpp
38 @@ -61,9 +61,7 @@ class BOOST_SYMBOL_VISIBLE basic_oarchive :
40 BOOST_ARCHIVE_DECL basic_oarchive(unsigned int flags = 0);
41 BOOST_ARCHIVE_DECL boost::archive::detail::helper_collection &
42 - get_helper_collection(){
45 + get_helper_collection();
46 // account for bogus gcc warning
49 diff --git a/src/basic_oarchive.cpp b/src/basic_oarchive.cpp
50 index c99baeb..18522af 100644
51 --- a/libs/serialization/src/basic_oarchive.cpp
52 +++ b/libs/serialization/src/basic_oarchive.cpp
53 @@ -454,6 +454,11 @@ BOOST_ARCHIVE_DECL void
54 basic_oarchive::end_preamble(){
57 +BOOST_ARCHIVE_DECL helper_collection &
58 +basic_oarchive::get_helper_collection(){
63 } // namespace archive
66 From 6b906b43618eea9d783128ec0f4524df89c1dcc8 Mon Sep 17 00:00:00 2001
67 From: Edward Diener <eldiener@tropicsoft.com>
68 Date: Mon, 27 Jul 2015 17:47:21 -0400
69 Subject: [PATCH 3/5] Add copy constructor
72 include/boost/archive/archive_exception.hpp | 1 +
73 src/archive_exception.cpp | 12 +++++++++++-
74 2 files changed, 12 insertions(+), 1 deletion(-)
76 diff --git a/include/boost/archive/archive_exception.hpp b/include/boost/archive/archive_exception.hpp
77 index 1159d27..fabcdb5 100644
78 --- a/boost/archive/archive_exception.hpp
79 +++ b/boost/archive/archive_exception.hpp
80 @@ -87,6 +87,7 @@ class BOOST_SYMBOL_VISIBLE archive_exception :
81 const char * e1 = NULL,
82 const char * e2 = NULL
84 + BOOST_ARCHIVE_DECL archive_exception(archive_exception const &) BOOST_NOEXCEPT ;
85 virtual BOOST_ARCHIVE_DECL ~archive_exception() BOOST_NOEXCEPT_OR_NOTHROW ;
86 virtual BOOST_ARCHIVE_DECL const char * what() const BOOST_NOEXCEPT_OR_NOTHROW ;
88 diff --git a/src/archive_exception.cpp b/src/archive_exception.cpp
89 index 38c6c9c..94aae50 100644
90 --- a/libs/serialization/src/archive_exception.cpp
91 +++ b/libs/serialization/src/archive_exception.cpp
98 #define BOOST_ARCHIVE_SOURCE
99 #include <boost/archive/archive_exception.hpp>
100 @@ -110,13 +111,22 @@ archive_exception::archive_exception(
106 +archive_exception::archive_exception(archive_exception const & oth) BOOST_NOEXCEPT :
109 + std::memcpy(m_buffer,oth.m_buffer,sizeof m_buffer);
113 archive_exception::~archive_exception() BOOST_NOEXCEPT_OR_NOTHROW {}
115 BOOST_ARCHIVE_DECL const char *
116 -archive_exception::what( ) const BOOST_NOEXCEPT_OR_NOTHROW {
117 +archive_exception::what() const BOOST_NOEXCEPT_OR_NOTHROW {
122 archive_exception::archive_exception() BOOST_NOEXCEPT :
125 From 643fff144cee5b518cd7b07d8a619564c0b8b1d1 Mon Sep 17 00:00:00 2001
126 From: Edward Diener <eldiener@tropicsoft.com>
127 Date: Fri, 31 Jul 2015 06:46:14 -0400
128 Subject: [PATCH 4/5] Changes for wide character serialization
131 include/boost/archive/detail/interface_oarchive.hpp | 2 +-
132 include/boost/archive/polymorphic_iarchive.hpp | 4 ++--
133 include/boost/archive/polymorphic_oarchive.hpp | 4 ++--
134 include/boost/archive/xml_archive_exception.hpp | 2 ++
135 src/archive_exception.cpp | 1 +
136 src/xml_archive_exception.cpp | 12 ++++++++++++
137 6 files changed, 20 insertions(+), 5 deletions(-)
139 diff --git a/include/boost/archive/detail/interface_oarchive.hpp b/include/boost/archive/detail/interface_oarchive.hpp
140 index 187013b..ad067f8 100644
141 --- a/boost/archive/detail/interface_oarchive.hpp
142 +++ b/boost/archive/detail/interface_oarchive.hpp
143 @@ -29,7 +29,7 @@ namespace boost {
147 -class BOOST_ARCHIVE_OR_WARCHIVE_DECL basic_pointer_oserializer;
148 +class BOOST_SYMBOL_VISIBLE basic_pointer_oserializer;
150 template<class Archive>
151 class interface_oarchive
152 diff --git a/include/boost/archive/polymorphic_iarchive.hpp b/include/boost/archive/polymorphic_iarchive.hpp
153 index 7f19410..57fda71 100644
154 --- a/boost/archive/polymorphic_iarchive.hpp
155 +++ b/boost/archive/polymorphic_iarchive.hpp
156 @@ -43,8 +43,8 @@ namespace serialization {
157 } // namespace serialization
160 - class BOOST_ARCHIVE_DECL basic_iarchive;
161 - class BOOST_ARCHIVE_DECL basic_iarchive;
162 + class BOOST_SYMBOL_VISIBLE basic_iarchive;
163 + class BOOST_SYMBOL_VISIBLE basic_iserializer;
166 class polymorphic_iarchive;
167 diff --git a/include/boost/archive/polymorphic_oarchive.hpp b/include/boost/archive/polymorphic_oarchive.hpp
168 index aa30b2a..bf543b0 100644
169 --- a/boost/archive/polymorphic_oarchive.hpp
170 +++ b/boost/archive/polymorphic_oarchive.hpp
171 @@ -42,8 +42,8 @@ namespace serialization {
172 } // namespace serialization
175 - class BOOST_ARCHIVE_DECL basic_oarchive;
176 - class BOOST_ARCHIVE_DECL basic_oserializer;
177 + class BOOST_SYMBOL_VISIBLE basic_oarchive;
178 + class BOOST_SYMBOL_VISIBLE basic_oserializer;
181 class polymorphic_oarchive;
182 diff --git a/include/boost/archive/xml_archive_exception.hpp b/include/boost/archive/xml_archive_exception.hpp
183 index b07f9a0..45e4731 100644
184 --- a/boost/archive/xml_archive_exception.hpp
185 +++ b/boost/archive/xml_archive_exception.hpp
186 @@ -45,6 +45,8 @@ class BOOST_SYMBOL_VISIBLE xml_archive_exception :
187 const char * e1 = NULL,
188 const char * e2 = NULL
190 + BOOST_ARCHIVE_DECL xml_archive_exception(xml_archive_exception const &) ;
191 + BOOST_ARCHIVE_DECL const char * what() const BOOST_NOEXCEPT_OR_NOTHROW ;
194 }// namespace archive
195 diff --git a/src/archive_exception.cpp b/src/archive_exception.cpp
196 index 94aae50..5ff4b5f 100644
197 --- a/libs/serialization/src/archive_exception.cpp
198 +++ b/libs/serialization/src/archive_exception.cpp
199 @@ -114,6 +114,7 @@ archive_exception::archive_exception(
202 archive_exception::archive_exception(archive_exception const & oth) BOOST_NOEXCEPT :
203 + std::exception(oth),
206 std::memcpy(m_buffer,oth.m_buffer,sizeof m_buffer);
207 diff --git a/src/xml_archive_exception.cpp b/src/xml_archive_exception.cpp
208 index c1431e2..37144d3 100644
209 --- a/libs/serialization/src/xml_archive_exception.cpp
210 +++ b/libs/serialization/src/xml_archive_exception.cpp
211 @@ -51,6 +51,18 @@ xml_archive_exception::xml_archive_exception(
217 +xml_archive_exception::xml_archive_exception(xml_archive_exception const & oth) :
218 + archive_exception(oth)
222 +BOOST_ARCHIVE_DECL const char *
223 +xml_archive_exception::what() const BOOST_NOEXCEPT_OR_NOTHROW
225 + return archive_exception::what();
231 From 1f769b8cd914fceb981fe6a15309e1e5e5b67958 Mon Sep 17 00:00:00 2001
232 From: Edward Diener <eldiener@tropicsoft.com>
233 Date: Sun, 2 Aug 2015 17:48:11 -0400
234 Subject: [PATCH 5/5] Backed out some unnecessary changes for the build. The
235 main change is the exporting/importing of the destructor, which does nothing,
236 for xml_archive_exception.
239 include/boost/archive/detail/interface_oarchive.hpp | 2 +-
240 include/boost/archive/polymorphic_iarchive.hpp | 4 ++--
241 include/boost/archive/polymorphic_oarchive.hpp | 4 ++--
242 include/boost/archive/xml_archive_exception.hpp | 2 +-
243 src/xml_archive_exception.cpp | 6 +-----
244 5 files changed, 7 insertions(+), 11 deletions(-)
246 diff --git a/include/boost/archive/detail/interface_oarchive.hpp b/include/boost/archive/detail/interface_oarchive.hpp
247 index ad067f8..187013b 100644
248 --- a/boost/archive/detail/interface_oarchive.hpp
249 +++ b/boost/archive/detail/interface_oarchive.hpp
250 @@ -29,7 +29,7 @@ namespace boost {
254 -class BOOST_SYMBOL_VISIBLE basic_pointer_oserializer;
255 +class BOOST_ARCHIVE_OR_WARCHIVE_DECL basic_pointer_oserializer;
257 template<class Archive>
258 class interface_oarchive
259 diff --git a/include/boost/archive/polymorphic_iarchive.hpp b/include/boost/archive/polymorphic_iarchive.hpp
260 index 57fda71..b465bb1 100644
261 --- a/boost/archive/polymorphic_iarchive.hpp
262 +++ b/boost/archive/polymorphic_iarchive.hpp
263 @@ -43,8 +43,8 @@ namespace serialization {
264 } // namespace serialization
267 - class BOOST_SYMBOL_VISIBLE basic_iarchive;
268 - class BOOST_SYMBOL_VISIBLE basic_iserializer;
269 + class BOOST_ARCHIVE_DECL basic_iarchive;
270 + class BOOST_ARCHIVE_DECL basic_iserializer;
273 class polymorphic_iarchive;
274 diff --git a/include/boost/archive/polymorphic_oarchive.hpp b/include/boost/archive/polymorphic_oarchive.hpp
275 index bf543b0..aa30b2a 100644
276 --- a/boost/archive/polymorphic_oarchive.hpp
277 +++ b/boost/archive/polymorphic_oarchive.hpp
278 @@ -42,8 +42,8 @@ namespace serialization {
279 } // namespace serialization
282 - class BOOST_SYMBOL_VISIBLE basic_oarchive;
283 - class BOOST_SYMBOL_VISIBLE basic_oserializer;
284 + class BOOST_ARCHIVE_DECL basic_oarchive;
285 + class BOOST_ARCHIVE_DECL basic_oserializer;
288 class polymorphic_oarchive;
289 diff --git a/include/boost/archive/xml_archive_exception.hpp b/include/boost/archive/xml_archive_exception.hpp
290 index 45e4731..82c53ef 100644
291 --- a/boost/archive/xml_archive_exception.hpp
292 +++ b/boost/archive/xml_archive_exception.hpp
293 @@ -46,7 +46,7 @@ class BOOST_SYMBOL_VISIBLE xml_archive_exception :
294 const char * e2 = NULL
296 BOOST_ARCHIVE_DECL xml_archive_exception(xml_archive_exception const &) ;
297 - BOOST_ARCHIVE_DECL const char * what() const BOOST_NOEXCEPT_OR_NOTHROW ;
298 + virtual BOOST_ARCHIVE_DECL ~xml_archive_exception() BOOST_NOEXCEPT_OR_NOTHROW ;
301 }// namespace archive
302 diff --git a/src/xml_archive_exception.cpp b/src/xml_archive_exception.cpp
303 index 37144d3..f4bf896 100644
304 --- a/libs/serialization/src/xml_archive_exception.cpp
305 +++ b/libs/serialization/src/xml_archive_exception.cpp
306 @@ -58,11 +58,7 @@ xml_archive_exception::xml_archive_exception(xml_archive_exception const & oth)
310 -BOOST_ARCHIVE_DECL const char *
311 -xml_archive_exception::what() const BOOST_NOEXCEPT_OR_NOTHROW
313 - return archive_exception::what();
315 +BOOST_ARCHIVE_DECL xml_archive_exception::~xml_archive_exception() BOOST_NOEXCEPT_OR_NOTHROW {}