]>
Commit | Line | Data |
---|---|---|
60b3a203 JB |
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 | |
5 | ||
6 | --- | |
7 | src/archive_exception.cpp | 1 + | |
8 | 1 file changed, 1 insertion(+) | |
9 | ||
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 | |
14 | @@ -21,6 +21,7 @@ | |
15 | namespace boost { | |
16 | namespace archive { | |
17 | ||
18 | +BOOST_ARCHIVE_DECL | |
19 | unsigned int | |
20 | archive_exception::append(unsigned int l, const char * a){ | |
21 | while(l < (sizeof(m_buffer) - 1)){ | |
22 | ||
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. | |
28 | ||
29 | --- | |
30 | include/boost/archive/detail/basic_oarchive.hpp | 4 +--- | |
31 | src/basic_oarchive.cpp | 5 +++++ | |
32 | 2 files changed, 6 insertions(+), 3 deletions(-) | |
33 | ||
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 : | |
39 | protected: | |
40 | BOOST_ARCHIVE_DECL basic_oarchive(unsigned int flags = 0); | |
41 | BOOST_ARCHIVE_DECL boost::archive::detail::helper_collection & | |
42 | - get_helper_collection(){ | |
43 | - return *this; | |
44 | - } | |
45 | + get_helper_collection(); | |
46 | // account for bogus gcc warning | |
47 | #if defined(__GNUC__) | |
48 | virtual | |
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(){ | |
55 | } | |
56 | ||
57 | +BOOST_ARCHIVE_DECL helper_collection & | |
58 | +basic_oarchive::get_helper_collection(){ | |
59 | + return *this; | |
60 | +} | |
61 | + | |
62 | } // namespace detail | |
63 | } // namespace archive | |
64 | } // namespace boost | |
65 | ||
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 | |
70 | ||
71 | --- | |
72 | include/boost/archive/archive_exception.hpp | 1 + | |
73 | src/archive_exception.cpp | 12 +++++++++++- | |
74 | 2 files changed, 12 insertions(+), 1 deletion(-) | |
75 | ||
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 | |
83 | ) BOOST_NOEXCEPT; | |
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 ; | |
87 | }; | |
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 | |
92 | @@ -14,6 +14,7 @@ | |
93 | ||
94 | #include <exception> | |
95 | #include <string> | |
96 | +#include <cstring> | |
97 | ||
98 | #define BOOST_ARCHIVE_SOURCE | |
99 | #include <boost/archive/archive_exception.hpp> | |
100 | @@ -110,13 +111,22 @@ archive_exception::archive_exception( | |
101 | break; | |
102 | } | |
103 | } | |
104 | + | |
105 | +BOOST_ARCHIVE_DECL | |
106 | +archive_exception::archive_exception(archive_exception const & oth) BOOST_NOEXCEPT : | |
107 | + code(oth.code) | |
108 | +{ | |
109 | + std::memcpy(m_buffer,oth.m_buffer,sizeof m_buffer); | |
110 | +} | |
111 | + | |
112 | BOOST_ARCHIVE_DECL | |
113 | archive_exception::~archive_exception() BOOST_NOEXCEPT_OR_NOTHROW {} | |
114 | ||
115 | BOOST_ARCHIVE_DECL const char * | |
116 | -archive_exception::what( ) const BOOST_NOEXCEPT_OR_NOTHROW { | |
117 | +archive_exception::what() const BOOST_NOEXCEPT_OR_NOTHROW { | |
118 | return m_buffer; | |
119 | } | |
120 | + | |
121 | BOOST_ARCHIVE_DECL | |
122 | archive_exception::archive_exception() BOOST_NOEXCEPT : | |
123 | code(no_exception) | |
124 | ||
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 | |
129 | ||
130 | --- | |
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(-) | |
138 | ||
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 { | |
144 | namespace archive { | |
145 | namespace detail { | |
146 | ||
147 | -class BOOST_ARCHIVE_OR_WARCHIVE_DECL basic_pointer_oserializer; | |
148 | +class BOOST_SYMBOL_VISIBLE basic_pointer_oserializer; | |
149 | ||
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 | |
158 | namespace archive { | |
159 | namespace detail { | |
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; | |
164 | } | |
165 | ||
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 | |
173 | namespace archive { | |
174 | namespace detail { | |
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; | |
179 | } | |
180 | ||
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 | |
189 | ); | |
190 | + BOOST_ARCHIVE_DECL xml_archive_exception(xml_archive_exception const &) ; | |
191 | + BOOST_ARCHIVE_DECL const char * what() const BOOST_NOEXCEPT_OR_NOTHROW ; | |
192 | }; | |
193 | ||
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( | |
200 | ||
201 | BOOST_ARCHIVE_DECL | |
202 | archive_exception::archive_exception(archive_exception const & oth) BOOST_NOEXCEPT : | |
203 | + std::exception(oth), | |
204 | code(oth.code) | |
205 | { | |
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( | |
212 | break; | |
213 | } | |
214 | } | |
215 | + | |
216 | +BOOST_ARCHIVE_DECL | |
217 | +xml_archive_exception::xml_archive_exception(xml_archive_exception const & oth) : | |
218 | + archive_exception(oth) | |
219 | + { | |
220 | + } | |
221 | + | |
222 | +BOOST_ARCHIVE_DECL const char * | |
223 | +xml_archive_exception::what() const BOOST_NOEXCEPT_OR_NOTHROW | |
224 | + { | |
225 | + return archive_exception::what(); | |
226 | + } | |
227 | ||
228 | } // archive | |
229 | } // boost | |
230 | ||
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. | |
237 | ||
238 | --- | |
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(-) | |
245 | ||
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 { | |
251 | namespace archive { | |
252 | namespace detail { | |
253 | ||
254 | -class BOOST_SYMBOL_VISIBLE basic_pointer_oserializer; | |
255 | +class BOOST_ARCHIVE_OR_WARCHIVE_DECL basic_pointer_oserializer; | |
256 | ||
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 | |
265 | namespace archive { | |
266 | namespace detail { | |
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; | |
271 | } | |
272 | ||
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 | |
280 | namespace archive { | |
281 | namespace detail { | |
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; | |
286 | } | |
287 | ||
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 | |
295 | ); | |
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 ; | |
299 | }; | |
300 | ||
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) | |
307 | { | |
308 | } | |
309 | ||
310 | -BOOST_ARCHIVE_DECL const char * | |
311 | -xml_archive_exception::what() const BOOST_NOEXCEPT_OR_NOTHROW | |
312 | - { | |
313 | - return archive_exception::what(); | |
314 | - } | |
315 | +BOOST_ARCHIVE_DECL xml_archive_exception::~xml_archive_exception() BOOST_NOEXCEPT_OR_NOTHROW {} | |
316 | ||
317 | } // archive | |
318 | } // boost |