]>
Commit | Line | Data |
---|---|---|
bb6d4d37 JR |
1 | From 3bf59648721e8b63ccc76cb47a77d45ab4924484 Mon Sep 17 00:00:00 2001 |
2 | From: =?UTF-8?q?Ha=C3=AFkel=20Gu=C3=A9mar?= <hguemar@fedoraproject.org> | |
3 | Date: Tue, 29 May 2012 16:39:46 +0200 | |
4 | Subject: [PATCH 9/9] gcc47 fix | |
5 | ||
6 | --- | |
7 | cpp/allTests.py | 7 ++--- | |
8 | cpp/include/Freeze/Map.h | 2 +- | |
9 | cpp/include/Ice/Buffer.h | 1 + | |
10 | cpp/include/Ice/ConnectionIF.h | 2 +- | |
11 | cpp/include/Ice/IconvStringConverter.h | 10 +++++-- | |
12 | cpp/include/Ice/IncomingAsyncF.h | 6 ----- | |
13 | cpp/include/Ice/LocalObjectF.h | 6 ----- | |
14 | cpp/include/Ice/ObjectF.h | 11 -------- | |
15 | cpp/include/Ice/OutgoingAsyncF.h | 2 +- | |
16 | cpp/include/Ice/Proxy.h | 12 ++++----- | |
17 | cpp/include/Ice/ProxyF.h | 40 ++++++++++++---------------- | |
18 | cpp/include/Ice/Stream.h | 21 ++++++++------- | |
19 | cpp/include/Ice/StreamF.h | 6 ----- | |
20 | cpp/include/IceUtil/Mutex.h | 5 +++- | |
21 | cpp/src/Freeze/MapDb.cpp | 6 ++++- | |
22 | cpp/src/Freeze/MapI.cpp | 16 +++++++++--- | |
23 | cpp/src/Freeze/SharedDbEnv.cpp | 5 +++- | |
24 | cpp/src/Ice/ConnectionI.cpp | 4 ++- | |
25 | cpp/src/Ice/IncomingAsync.cpp | 2 +- | |
26 | cpp/src/Ice/LocalObject.cpp | 2 +- | |
27 | cpp/src/Ice/Object.cpp | 2 +- | |
28 | cpp/src/Ice/OutgoingAsync.cpp | 2 +- | |
29 | cpp/src/Ice/ProxyFactory.cpp | 1 + | |
30 | cpp/src/Ice/Service.cpp | 15 ++++++++--- | |
31 | cpp/src/Ice/Stream.cpp | 13 ++++++++-- | |
32 | cpp/src/IceGrid/AdminCallbackRouter.cpp | 7 ++++- | |
33 | cpp/src/IceGrid/DescriptorHelper.cpp | 19 +++++++------- | |
34 | cpp/src/IceGrid/ReplicaCache.cpp | 2 +- | |
35 | cpp/src/IceGrid/SessionI.h | 2 +- | |
36 | cpp/src/IceSSL/Instance.cpp | 2 +- | |
37 | cpp/src/IceSSL/InstanceF.h | 2 +- | |
38 | cpp/src/IceSSL/TrustManager.cpp | 2 +- | |
39 | cpp/src/IceSSL/TrustManagerF.h | 2 +- | |
40 | cpp/src/IceSSL/Util.cpp | 2 +- | |
41 | cpp/src/IceSSL/UtilF.h | 2 +- | |
42 | cpp/src/IceStorm/NodeI.cpp | 5 ---- | |
43 | cpp/src/IceUtil/Cond.cpp | 5 +++- | |
44 | cpp/src/IceUtil/CountDownLatch.cpp | 10 +++++-- | |
45 | cpp/src/IceUtil/CtrlCHandler.cpp | 20 +++++++++++--- | |
46 | cpp/src/IceUtil/FileUtil.cpp | 4 +++ | |
47 | cpp/src/IceUtil/RecMutex.cpp | 10 +++++-- | |
48 | cpp/src/Slice/CPlusPlusUtil.cpp | 4 +-- | |
49 | cpp/src/Slice/FileTracker.cpp | 4 +++ | |
50 | cpp/src/slice2cpp/Gen.cpp | 43 +++++++++++++++++-------------- | |
51 | cpp/src/slice2cs/Gen.cpp | 12 +-------- | |
52 | cpp/src/slice2java/Gen.cpp | 4 +-- | |
53 | cpp/test/Glacier2/ssl/Server.cpp | 19 ++++++++++---- | |
54 | cpp/test/Ice/background/EndpointI.h | 2 +- | |
55 | cpp/test/Ice/custom/AllTests.cpp | 9 ++++--- | |
56 | cpp/test/Ice/info/AllTests.cpp | 15 +++++++---- | |
57 | cpp/test/Ice/properties/run.py | 2 +- | |
58 | cpp/test/IceUtil/unicode/Client.cpp | 4 +++ | |
59 | cpp/test/Slice/keyword/Client.cpp | 4 +++ | |
60 | cpp/test/include/TestCommon.h | 16 ++++++++++++ | |
61 | scripts/TestUtil.py | 27 +++++++++++++++++++ | |
62 | 55 files changed, 287 insertions(+), 173 deletions(-) | |
63 | ||
64 | diff --git a/cpp/allTests.py b/cpp/allTests.py | |
65 | index 33b7d88..8a5effd 100755 | |
66 | --- a/cpp/allTests.py | |
67 | +++ b/cpp/allTests.py | |
68 | @@ -25,6 +25,7 @@ from scripts import * | |
69 | # List of all basic tests. | |
70 | # | |
71 | tests = [ | |
72 | + | |
73 | ("IceUtil/condvar", ["once", "win32only"]), | |
74 | ("IceUtil/thread", ["once"]), | |
75 | ("IceUtil/unicode", ["once"]), | |
76 | @@ -62,7 +63,7 @@ tests = [ | |
77 | ("Ice/servantLocator", ["core"]), | |
78 | ("Ice/interceptor", ["core"]), | |
79 | ("Ice/stringConverter", ["core"]), | |
80 | - ("Ice/udp", ["core"]), | |
81 | + ("Ice/udp", ["core", "nofreebsdjail"]), | |
82 | ("Ice/defaultServant", ["core"]), | |
83 | ("Ice/defaultValue", ["core"]), | |
84 | ("Ice/invoke", ["core", "novc6"]), | |
85 | @@ -106,8 +107,8 @@ tests = [ | |
86 | # | |
87 | if TestUtil.isWin32() or os.getuid() == 0: | |
88 | tests += [ | |
89 | - ("IceUtil/priority", ["core", "nodarwin"]), | |
90 | - ("Ice/threadPoolPriority", ["core", "nodarwin"]) | |
91 | + ("IceUtil/priority", ["core", "nodarwin", "nofreebsd"]), | |
92 | + ("Ice/threadPoolPriority", ["core", "nodarwin", "nofreebsd"]) | |
93 | ] | |
94 | ||
95 | if __name__ == "__main__": | |
96 | diff --git a/cpp/include/Freeze/Map.h b/cpp/include/Freeze/Map.h | |
97 | index d8ef692..901b3bc 100644 | |
98 | --- a/cpp/include/Freeze/Map.h | |
99 | +++ b/cpp/include/Freeze/Map.h | |
100 | @@ -426,7 +426,7 @@ public: | |
101 | ||
102 | ConstIterator(MapHelper& mapHelper, const Ice::CommunicatorPtr& communicator) : | |
103 | _helper(IteratorHelper::create(mapHelper, true)), | |
104 | - _communicator(_communicator), | |
105 | + _communicator(communicator), | |
106 | _refValid(false) | |
107 | { | |
108 | } | |
109 | diff --git a/cpp/include/Ice/Buffer.h b/cpp/include/Ice/Buffer.h | |
110 | index 9501f08..8679d03 100644 | |
111 | --- a/cpp/include/Ice/Buffer.h | |
112 | +++ b/cpp/include/Ice/Buffer.h | |
113 | @@ -10,6 +10,7 @@ | |
114 | #ifndef ICEE_BUFFER_H | |
115 | #define ICEE_BUFFER_H | |
116 | ||
117 | +#include <cstddef> | |
118 | #include <Ice/Config.h> | |
119 | ||
120 | #include <cstddef> | |
121 | diff --git a/cpp/include/Ice/ConnectionIF.h b/cpp/include/Ice/ConnectionIF.h | |
122 | index ca954c0..81ceb01 100644 | |
123 | --- a/cpp/include/Ice/ConnectionIF.h | |
124 | +++ b/cpp/include/Ice/ConnectionIF.h | |
125 | @@ -17,13 +17,13 @@ namespace Ice | |
126 | { | |
127 | ||
128 | class ConnectionI; | |
129 | +ICE_API Ice::LocalObject* upCast(Ice::ConnectionI*); | |
130 | ||
131 | } | |
132 | ||
133 | namespace IceInternal | |
134 | { | |
135 | ||
136 | -ICE_API Ice::LocalObject* upCast(Ice::ConnectionI*); | |
137 | ||
138 | enum AsyncStatus | |
139 | { | |
140 | diff --git a/cpp/include/Ice/IconvStringConverter.h b/cpp/include/Ice/IconvStringConverter.h | |
141 | index 017fb1e..68aa54b 100644 | |
142 | --- a/cpp/include/Ice/IconvStringConverter.h | |
143 | +++ b/cpp/include/Ice/IconvStringConverter.h | |
144 | @@ -225,10 +225,16 @@ IconvStringConverter<charT>::cleanupKey(void* val) | |
145 | template<typename charT> /*static*/ void | |
146 | IconvStringConverter<charT>::close(std::pair<iconv_t, iconv_t> cdp) | |
147 | { | |
148 | - int rs = iconv_close(cdp.first); | |
149 | +#ifndef NDEBUG | |
150 | + int rs = | |
151 | +#endif | |
152 | + iconv_close(cdp.first); | |
153 | assert(rs == 0); | |
154 | ||
155 | - rs = iconv_close(cdp.second); | |
156 | +#ifndef NDEBUG | |
157 | + rs = | |
158 | +#endif | |
159 | + iconv_close(cdp.second); | |
160 | assert(rs == 0); | |
161 | } | |
162 | ||
163 | diff --git a/cpp/include/Ice/IncomingAsyncF.h b/cpp/include/Ice/IncomingAsyncF.h | |
164 | index 7d9228a..d861180 100644 | |
165 | --- a/cpp/include/Ice/IncomingAsyncF.h | |
166 | +++ b/cpp/include/Ice/IncomingAsyncF.h | |
167 | @@ -28,12 +28,6 @@ namespace Ice | |
168 | ||
169 | class AMD_Object_ice_invoke; | |
170 | class AMD_Array_Object_ice_invoke; | |
171 | - | |
172 | -} | |
173 | - | |
174 | -namespace IceInternal | |
175 | -{ | |
176 | - | |
177 | ICE_API IceUtil::Shared* upCast(::Ice::AMD_Object_ice_invoke*); | |
178 | ICE_API IceUtil::Shared* upCast(::Ice::AMD_Array_Object_ice_invoke*); | |
179 | ||
180 | diff --git a/cpp/include/Ice/LocalObjectF.h b/cpp/include/Ice/LocalObjectF.h | |
181 | index 69a28d3..6e613b7 100644 | |
182 | --- a/cpp/include/Ice/LocalObjectF.h | |
183 | +++ b/cpp/include/Ice/LocalObjectF.h | |
184 | @@ -18,12 +18,6 @@ namespace Ice | |
185 | { | |
186 | ||
187 | class LocalObject; | |
188 | - | |
189 | -} | |
190 | - | |
191 | -namespace IceInternal | |
192 | -{ | |
193 | - | |
194 | ICE_API IceUtil::Shared* upCast(::Ice::LocalObject*); | |
195 | ||
196 | } | |
197 | diff --git a/cpp/include/Ice/ObjectF.h b/cpp/include/Ice/ObjectF.h | |
198 | index eaabadd..2baff11 100644 | |
199 | --- a/cpp/include/Ice/ObjectF.h | |
200 | +++ b/cpp/include/Ice/ObjectF.h | |
201 | @@ -17,19 +17,8 @@ namespace Ice | |
202 | { | |
203 | ||
204 | class Object; | |
205 | - | |
206 | -} | |
207 | - | |
208 | -namespace IceInternal | |
209 | -{ | |
210 | - | |
211 | ICE_API IceUtil::Shared* upCast(::Ice::Object*); | |
212 | ||
213 | -} | |
214 | - | |
215 | -namespace Ice | |
216 | -{ | |
217 | - | |
218 | typedef IceInternal::Handle< Object > ObjectPtr; | |
219 | ||
220 | void ICE_API __patch__ObjectPtr(void*, ObjectPtr&); | |
221 | diff --git a/cpp/include/Ice/OutgoingAsyncF.h b/cpp/include/Ice/OutgoingAsyncF.h | |
222 | index 0e9398c..334ca7a 100644 | |
223 | --- a/cpp/include/Ice/OutgoingAsyncF.h | |
224 | +++ b/cpp/include/Ice/OutgoingAsyncF.h | |
225 | @@ -19,13 +19,13 @@ namespace Ice | |
226 | ||
227 | class AsyncResult; | |
228 | typedef IceInternal::Handle<AsyncResult> AsyncResultPtr; | |
229 | +ICE_API IceUtil::Shared* upCast(::Ice::AsyncResult*); | |
230 | ||
231 | } | |
232 | ||
233 | namespace IceInternal | |
234 | { | |
235 | ||
236 | -ICE_API IceUtil::Shared* upCast(::Ice::AsyncResult*); | |
237 | ||
238 | class OutgoingAsync; | |
239 | ICE_API IceUtil::Shared* upCast(OutgoingAsync*); | |
240 | diff --git a/cpp/include/Ice/Proxy.h b/cpp/include/Ice/Proxy.h | |
241 | index 250c700..0ae9e72 100644 | |
242 | --- a/cpp/include/Ice/Proxy.h | |
243 | +++ b/cpp/include/Ice/Proxy.h | |
244 | @@ -38,6 +38,8 @@ namespace Ice | |
245 | ||
246 | class Locator; | |
247 | class Router; | |
248 | +ICE_API ::IceProxy::Ice::Object* upCast(::IceProxy::Ice::Locator*); | |
249 | +ICE_API ::IceProxy::Ice::Object* upCast(::IceProxy::Ice::Router*); | |
250 | ||
251 | } | |
252 | ||
253 | @@ -46,8 +48,6 @@ class Router; | |
254 | namespace IceInternal | |
255 | { | |
256 | ||
257 | -ICE_API ::IceProxy::Ice::Object* upCast(::IceProxy::Ice::Locator*); | |
258 | -ICE_API ::IceProxy::Ice::Object* upCast(::IceProxy::Ice::Router*); | |
259 | ||
260 | class LocalExceptionWrapper; | |
261 | ||
262 | @@ -1172,7 +1172,7 @@ public: | |
263 | ||
264 | TwowayCallbackNC(const TPtr& instance, bool cb, Exception excb, Sent sentcb) : CallbackNC<T>(instance, excb, sentcb) | |
265 | { | |
266 | - checkCallback(instance, cb || excb != 0); | |
267 | + this->checkCallback(instance, cb || excb != 0); | |
268 | } | |
269 | }; | |
270 | ||
271 | @@ -1188,7 +1188,7 @@ public: | |
272 | ||
273 | TwowayCallback(const TPtr& instance, bool cb, Exception excb, Sent sentcb) : Callback<T, CT>(instance, excb, sentcb) | |
274 | { | |
275 | - checkCallback(instance, cb || excb != 0); | |
276 | + this->checkCallback(instance, cb || excb != 0); | |
277 | } | |
278 | }; | |
279 | ||
280 | @@ -1209,7 +1209,7 @@ public: | |
281 | OnewayCallbackNC(const TPtr& instance, Response cb, Exception excb, Sent sentcb) : | |
282 | CallbackNC<T>(instance, excb, sentcb), response(cb) | |
283 | { | |
284 | - checkCallback(instance, cb != 0 || excb != 0); | |
285 | + this->checkCallback(instance, cb != 0 || excb != 0); | |
286 | } | |
287 | ||
288 | virtual void __completed(const ::Ice::AsyncResultPtr& result) const | |
289 | @@ -1254,7 +1254,7 @@ public: | |
290 | OnewayCallback(const TPtr& instance, Response cb, Exception excb, Sent sentcb) : | |
291 | Callback<T, CT>(instance, excb, sentcb), response(cb) | |
292 | { | |
293 | - checkCallback(instance, cb != 0 || excb != 0); | |
294 | + this->checkCallback(instance, cb != 0 || excb != 0); | |
295 | } | |
296 | ||
297 | virtual void __completed(const ::Ice::AsyncResultPtr& result) const | |
298 | diff --git a/cpp/include/Ice/ProxyF.h b/cpp/include/Ice/ProxyF.h | |
299 | index 27b7ec6..67b2b05 100644 | |
300 | --- a/cpp/include/Ice/ProxyF.h | |
301 | +++ b/cpp/include/Ice/ProxyF.h | |
302 | @@ -22,6 +22,11 @@ namespace Ice | |
303 | { | |
304 | ||
305 | class Object; | |
306 | +inline ::IceProxy::Ice::Object* | |
307 | +upCast(::IceProxy::Ice::Object* o) | |
308 | +{ | |
309 | + return o; | |
310 | +} | |
311 | ||
312 | } | |
313 | ||
314 | @@ -34,6 +39,11 @@ namespace Ice | |
315 | { | |
316 | ||
317 | class Object; | |
318 | +inline ::IceDelegate::Ice::Object* | |
319 | +upCast(::IceDelegate::Ice::Object* o) | |
320 | +{ | |
321 | + return o; | |
322 | +} | |
323 | ||
324 | } | |
325 | ||
326 | @@ -47,6 +57,12 @@ namespace Ice | |
327 | ||
328 | class Object; | |
329 | ||
330 | +inline ::IceDelegateM::Ice::Object* | |
331 | +upCast(::IceDelegateM::Ice::Object* o) | |
332 | +{ | |
333 | + return o; | |
334 | +} | |
335 | + | |
336 | } | |
337 | ||
338 | } | |
339 | @@ -58,36 +74,12 @@ namespace Ice | |
340 | { | |
341 | ||
342 | class Object; | |
343 | - | |
344 | -} | |
345 | - | |
346 | -} | |
347 | - | |
348 | -namespace IceInternal | |
349 | -{ | |
350 | - | |
351 | -inline ::IceProxy::Ice::Object* | |
352 | -upCast(::IceProxy::Ice::Object* o) | |
353 | -{ | |
354 | - return o; | |
355 | -} | |
356 | - | |
357 | -inline ::IceDelegate::Ice::Object* | |
358 | -upCast(::IceDelegate::Ice::Object* o) | |
359 | -{ | |
360 | - return o; | |
361 | -} | |
362 | - | |
363 | inline ::IceDelegateD::Ice::Object* | |
364 | upCast(::IceDelegateD::Ice::Object* o) | |
365 | { | |
366 | return o; | |
367 | } | |
368 | ||
369 | -inline ::IceDelegateM::Ice::Object* | |
370 | -upCast(::IceDelegateM::Ice::Object* o) | |
371 | -{ | |
372 | - return o; | |
373 | } | |
374 | ||
375 | } | |
376 | diff --git a/cpp/include/Ice/Stream.h b/cpp/include/Ice/Stream.h | |
377 | index 40cd611..36ab56b 100644 | |
378 | --- a/cpp/include/Ice/Stream.h | |
379 | +++ b/cpp/include/Ice/Stream.h | |
380 | @@ -17,6 +17,12 @@ | |
381 | #include <Ice/Proxy.h> | |
382 | #include <IceUtil/Shared.h> | |
383 | ||
384 | +namespace IceInternal | |
385 | +{ | |
386 | + // Forward declaration required for writer specializations. | |
387 | + void delegateThrowMarshalException(const char*, int, const ::std::string&); | |
388 | +} | |
389 | + | |
390 | namespace Ice | |
391 | { | |
392 | ||
393 | @@ -45,9 +51,6 @@ enum StreamTraitType | |
394 | StreamTraitTypeUnknown | |
395 | }; | |
396 | ||
397 | -// Forward declaration required for writer specializations. | |
398 | -class MarshalException; | |
399 | - | |
400 | // | |
401 | // Base trait template. This doesn't actually do anything -- we just | |
402 | // use it as a template that we can specialize. | |
403 | @@ -542,7 +545,7 @@ struct StreamWriter<StreamTraitTypeByteEnum> | |
404 | { | |
405 | if(static_cast<int>(v) < 0 || static_cast<int>(v) >= StreamTrait<T>::enumLimit) | |
406 | { | |
407 | - throw MarshalException(__FILE__, __LINE__, "enumerator out of range"); | |
408 | + IceInternal::delegateThrowMarshalException(__FILE__, __LINE__, "enumerator out of range"); | |
409 | } | |
410 | outS->write(static_cast<Byte>(v)); | |
411 | } | |
412 | @@ -558,7 +561,7 @@ struct StreamReader<StreamTraitTypeByteEnum> | |
413 | inS->read(val); | |
414 | if(val > StreamTrait<T>::enumLimit) | |
415 | { | |
416 | - throw MarshalException(__FILE__, __LINE__, "enumerator out of range"); | |
417 | + IceInternal::delegateThrowMarshalException(__FILE__, __LINE__, "enumerator out of range"); | |
418 | } | |
419 | v = static_cast<T>(val); | |
420 | } | |
421 | @@ -573,7 +576,7 @@ struct StreamWriter<StreamTraitTypeShortEnum> | |
422 | { | |
423 | if(static_cast<int>(v) < 0 || static_cast<int>(v) >= StreamTrait<T>::enumLimit) | |
424 | { | |
425 | - throw MarshalException(__FILE__, __LINE__, "enumerator out of range"); | |
426 | + IceInternal::delegateThrowMarshalException(__FILE__, __LINE__, "enumerator out of range"); | |
427 | } | |
428 | outS->write(static_cast<Short>(v)); | |
429 | } | |
430 | @@ -589,7 +592,7 @@ struct StreamReader<StreamTraitTypeShortEnum> | |
431 | inS->read(val); | |
432 | if(val < 0 || val > StreamTrait<T>::enumLimit) | |
433 | { | |
434 | - throw MarshalException(__FILE__, __LINE__, "enumerator out of range"); | |
435 | + IceInternal::delegateThrowMarshalException(__FILE__, __LINE__, "enumerator out of range"); | |
436 | } | |
437 | v = static_cast<T>(val); | |
438 | } | |
439 | @@ -603,7 +606,7 @@ struct StreamWriter<StreamTraitTypeIntEnum> | |
440 | { | |
441 | if(static_cast<int>(v) < 0 || static_cast<int>(v) >= StreamTrait<T>::enumLimit) | |
442 | { | |
443 | - throw MarshalException(__FILE__, __LINE__, "enumerator out of range"); | |
444 | + IceInternal::delegateThrowMarshalException(__FILE__, __LINE__, "enumerator out of range"); | |
445 | } | |
446 | outS->write(static_cast<Int>(v)); | |
447 | } | |
448 | @@ -619,7 +622,7 @@ struct StreamReader<StreamTraitTypeIntEnum> | |
449 | inS->read(val); | |
450 | if(val < 0 || val > StreamTrait<T>::enumLimit) | |
451 | { | |
452 | - throw MarshalException(__FILE__, __LINE__, "enumerator out of range"); | |
453 | + IceInternal::delegateThrowMarshalException(__FILE__, __LINE__, "enumerator out of range"); | |
454 | } | |
455 | v = static_cast<T>(val); | |
456 | } | |
457 | diff --git a/cpp/include/Ice/StreamF.h b/cpp/include/Ice/StreamF.h | |
458 | index d94ba2b..f114206 100644 | |
459 | --- a/cpp/include/Ice/StreamF.h | |
460 | +++ b/cpp/include/Ice/StreamF.h | |
461 | @@ -19,12 +19,6 @@ namespace Ice | |
462 | ||
463 | class InputStream; | |
464 | class OutputStream; | |
465 | - | |
466 | -} | |
467 | - | |
468 | -namespace IceInternal | |
469 | -{ | |
470 | - | |
471 | ICE_API IceUtil::Shared* upCast(::Ice::InputStream*); | |
472 | ICE_API IceUtil::Shared* upCast(::Ice::OutputStream*); | |
473 | ||
474 | diff --git a/cpp/include/IceUtil/Mutex.h b/cpp/include/IceUtil/Mutex.h | |
475 | index 2726c74..5d72113 100644 | |
476 | --- a/cpp/include/IceUtil/Mutex.h | |
477 | +++ b/cpp/include/IceUtil/Mutex.h | |
478 | @@ -251,8 +251,11 @@ Mutex::init(MutexProtocol protocol) | |
479 | inline | |
480 | Mutex::~Mutex() | |
481 | { | |
482 | +#ifndef NDEBUG | |
483 | int rc = 0; | |
484 | - rc = pthread_mutex_destroy(&_mutex); | |
485 | + rc = | |
486 | +#endif | |
487 | + pthread_mutex_destroy(&_mutex); | |
488 | assert(rc == 0); | |
489 | } | |
490 | ||
491 | diff --git a/cpp/src/Freeze/MapDb.cpp b/cpp/src/Freeze/MapDb.cpp | |
492 | index ad573cf..397151e 100644 | |
493 | --- a/cpp/src/Freeze/MapDb.cpp | |
494 | +++ b/cpp/src/Freeze/MapDb.cpp | |
495 | @@ -229,7 +229,11 @@ Freeze::MapDb::MapDb(const ConnectionIPtr& connection, | |
496 | #ifndef NDEBUG | |
497 | bool inserted = | |
498 | #endif | |
499 | - _indices.insert(IndexMap::value_type(indexBase->name(), indexI.get())).second; | |
500 | + _indices.insert(IndexMap::value_type(indexBase->name(), indexI.get())) | |
501 | +#ifndef NDEBUG | |
502 | + .second | |
503 | +#endif | |
504 | + ; | |
505 | assert(inserted); | |
506 | ||
507 | indexBase->_impl = indexI.release(); | |
508 | diff --git a/cpp/src/Freeze/MapI.cpp b/cpp/src/Freeze/MapI.cpp | |
509 | index c7f0719..820cef8 100644 | |
510 | --- a/cpp/src/Freeze/MapI.cpp | |
511 | +++ b/cpp/src/Freeze/MapI.cpp | |
512 | @@ -749,8 +749,11 @@ Freeze::IteratorHelperI::set(const Value& value) | |
513 | ||
514 | try | |
515 | { | |
516 | +#ifndef NDEBUG | |
517 | int err; | |
518 | - err = _dbc->put(&dbKey, &dbValue, DB_CURRENT); | |
519 | + err = | |
520 | +#endif | |
521 | + _dbc->put(&dbKey, &dbValue, DB_CURRENT); | |
522 | assert(err == 0); | |
523 | } | |
524 | catch(const ::DbDeadlockException& dx) | |
525 | @@ -1023,7 +1026,11 @@ Freeze::MapHelperI::MapHelperI(const ConnectionIPtr& connection, | |
526 | #ifndef NDEBUG | |
527 | bool inserted = | |
528 | #endif | |
529 | - _indices.insert(IndexMap::value_type(indexBase->name(), indexBase)).second; | |
530 | + _indices.insert(IndexMap::value_type(indexBase->name(), indexBase)) | |
531 | +#ifndef NDEBUG | |
532 | + .second | |
533 | +#endif | |
534 | + ; | |
535 | assert(inserted); | |
536 | indexBase->_map = this; | |
537 | } | |
538 | @@ -1360,8 +1367,11 @@ Freeze::MapHelperI::clear() | |
539 | try | |
540 | { | |
541 | u_int32_t count; | |
542 | +#ifndef NDEBUG | |
543 | int err; | |
544 | - err = _db->truncate(txn, &count, txn != 0 ? 0 : DB_AUTO_COMMIT); | |
545 | + err = | |
546 | +#endif | |
547 | + _db->truncate(txn, &count, txn != 0 ? 0 : DB_AUTO_COMMIT); | |
548 | assert(err == 0); | |
549 | break; | |
550 | } | |
551 | diff --git a/cpp/src/Freeze/SharedDbEnv.cpp b/cpp/src/Freeze/SharedDbEnv.cpp | |
552 | index 1365e7f..8cadc0c 100644 | |
553 | --- a/cpp/src/Freeze/SharedDbEnv.cpp | |
554 | +++ b/cpp/src/Freeze/SharedDbEnv.cpp | |
555 | @@ -336,8 +336,11 @@ void Freeze::SharedDbEnv::__decRef() | |
556 | // Remove from map | |
557 | // | |
558 | ||
559 | +#ifndef NDEBUG | |
560 | size_t one; | |
561 | - one = sharedDbEnvMap->erase(key); | |
562 | + one = | |
563 | +#endif | |
564 | + sharedDbEnvMap->erase(key); | |
565 | assert(one == 1); | |
566 | ||
567 | if(sharedDbEnvMap->size() == 0) | |
568 | diff --git a/cpp/src/Ice/ConnectionI.cpp b/cpp/src/Ice/ConnectionI.cpp | |
569 | index a864509..2577a56 100644 | |
570 | --- a/cpp/src/Ice/ConnectionI.cpp | |
571 | +++ b/cpp/src/Ice/ConnectionI.cpp | |
572 | @@ -32,7 +32,7 @@ using namespace std; | |
573 | using namespace Ice; | |
574 | using namespace IceInternal; | |
575 | ||
576 | -Ice::LocalObject* IceInternal::upCast(ConnectionI* p) { return p; } | |
577 | +Ice::LocalObject* Ice::upCast(ConnectionI* p) { return p; } | |
578 | ||
579 | namespace | |
580 | { | |
581 | @@ -601,6 +601,7 @@ Ice::ConnectionI::sendAsyncRequest(const OutgoingAsyncPtr& out, bool compress, b | |
582 | } | |
583 | catch(const LocalException& ex) | |
584 | { | |
585 | + status = IceInternal::AsyncStatusQueued; // this is only to apeace the compiler | |
586 | setState(StateClosed, ex); | |
587 | assert(_exception.get()); | |
588 | _exception->ice_throw(); | |
589 | @@ -972,6 +973,7 @@ Ice::ConnectionI::flushAsyncBatchRequests(const BatchOutgoingAsyncPtr& outAsync) | |
590 | } | |
591 | catch(const Ice::LocalException& ex) | |
592 | { | |
593 | + status = IceInternal::AsyncStatusQueued; // this is only to apeace the compiler | |
594 | setState(StateClosed, ex); | |
595 | assert(_exception.get()); | |
596 | _exception->ice_throw(); | |
597 | diff --git a/cpp/src/Ice/IncomingAsync.cpp b/cpp/src/Ice/IncomingAsync.cpp | |
598 | index ca108ee..91c0580 100644 | |
599 | --- a/cpp/src/Ice/IncomingAsync.cpp | |
600 | +++ b/cpp/src/Ice/IncomingAsync.cpp | |
601 | @@ -24,7 +24,7 @@ using namespace Ice; | |
602 | using namespace IceInternal; | |
603 | ||
604 | IceUtil::Shared* IceInternal::upCast(IncomingAsync* p) { return p; } | |
605 | -IceUtil::Shared* IceInternal::upCast(AMD_Object_ice_invoke* p) { return p; } | |
606 | +IceUtil::Shared* Ice::upCast(AMD_Object_ice_invoke* p) { return p; } | |
607 | ||
608 | namespace | |
609 | { | |
610 | diff --git a/cpp/src/Ice/LocalObject.cpp b/cpp/src/Ice/LocalObject.cpp | |
611 | index 77bee3d..ee74c0b 100644 | |
612 | --- a/cpp/src/Ice/LocalObject.cpp | |
613 | +++ b/cpp/src/Ice/LocalObject.cpp | |
614 | @@ -13,7 +13,7 @@ using namespace std; | |
615 | using namespace Ice; | |
616 | using namespace IceInternal; | |
617 | ||
618 | -IceUtil::Shared* IceInternal::upCast(LocalObject* obj) { return obj; } | |
619 | +IceUtil::Shared* Ice::upCast(LocalObject* obj) { return obj; } | |
620 | ||
621 | bool | |
622 | Ice::LocalObject::operator==(const LocalObject& r) const | |
623 | diff --git a/cpp/src/Ice/Object.cpp b/cpp/src/Ice/Object.cpp | |
624 | index fa7793a..9705ce9 100644 | |
625 | --- a/cpp/src/Ice/Object.cpp | |
626 | +++ b/cpp/src/Ice/Object.cpp | |
627 | @@ -19,7 +19,7 @@ using namespace std; | |
628 | using namespace Ice; | |
629 | using namespace IceInternal; | |
630 | ||
631 | -IceUtil::Shared* IceInternal::upCast(Object* p) { return p; } | |
632 | +IceUtil::Shared* Ice::upCast(Object* p) { return p; } | |
633 | ||
634 | bool | |
635 | Ice::Object::operator==(const Object& r) const | |
636 | diff --git a/cpp/src/Ice/OutgoingAsync.cpp b/cpp/src/Ice/OutgoingAsync.cpp | |
637 | index 527d29c..d707321 100644 | |
638 | --- a/cpp/src/Ice/OutgoingAsync.cpp | |
639 | +++ b/cpp/src/Ice/OutgoingAsync.cpp | |
640 | @@ -30,7 +30,7 @@ using namespace std; | |
641 | using namespace Ice; | |
642 | using namespace IceInternal; | |
643 | ||
644 | -IceUtil::Shared* IceInternal::upCast(AsyncResult* p) { return p; } | |
645 | +IceUtil::Shared* Ice::upCast(AsyncResult* p) { return p; } | |
646 | ||
647 | IceUtil::Shared* IceInternal::upCast(OutgoingAsyncMessageCallback* p) { return p; } | |
648 | IceUtil::Shared* IceInternal::upCast(OutgoingAsync* p) { return p; } | |
649 | diff --git a/cpp/src/Ice/ProxyFactory.cpp b/cpp/src/Ice/ProxyFactory.cpp | |
650 | index c68b3e3..db0fe72 100644 | |
651 | --- a/cpp/src/Ice/ProxyFactory.cpp | |
652 | +++ b/cpp/src/Ice/ProxyFactory.cpp | |
653 | @@ -229,6 +229,7 @@ IceInternal::ProxyFactory::checkRetryAfterException(const LocalException& ex, | |
654 | } | |
655 | else if(cnt > static_cast<int>(_retryIntervals.size())) | |
656 | { | |
657 | + interval = 0; // apeace compiler | |
658 | if(traceLevels->retry >= 1) | |
659 | { | |
660 | Trace out(logger, traceLevels->retryCat); | |
661 | diff --git a/cpp/src/Ice/Service.cpp b/cpp/src/Ice/Service.cpp | |
662 | index dd28221..cc95541 100644 | |
663 | --- a/cpp/src/Ice/Service.cpp | |
664 | +++ b/cpp/src/Ice/Service.cpp | |
665 | @@ -2136,17 +2136,26 @@ Ice::Service::runDaemon(int argc, char* argv[], const InitializationData& initDa | |
666 | // | |
667 | // Associate stdin, stdout and stderr with /dev/null. | |
668 | // | |
669 | +#ifndef NDEBUG | |
670 | int fd; | |
671 | - fd = open("/dev/null", O_RDWR); | |
672 | + fd = | |
673 | +#endif | |
674 | + open("/dev/null", O_RDWR); | |
675 | assert(fd == 0); | |
676 | if(stdOut.empty()) | |
677 | { | |
678 | - fd = dup2(0, 1); | |
679 | +#ifndef NDEBUG | |
680 | + fd = | |
681 | +#endif | |
682 | + dup2(0, 1); | |
683 | assert(fd == 1); | |
684 | } | |
685 | if(stdErr.empty()) | |
686 | { | |
687 | - fd = dup2(1, 2); | |
688 | +#ifndef NDEBUG | |
689 | + fd = | |
690 | +#endif | |
691 | + dup2(1, 2); | |
692 | assert(fd == 2); | |
693 | } | |
694 | } | |
695 | diff --git a/cpp/src/Ice/Stream.cpp b/cpp/src/Ice/Stream.cpp | |
696 | index 9924da0..2ecdc08 100644 | |
697 | --- a/cpp/src/Ice/Stream.cpp | |
698 | +++ b/cpp/src/Ice/Stream.cpp | |
699 | @@ -8,10 +8,19 @@ | |
700 | // ********************************************************************** | |
701 | ||
702 | #include <Ice/Stream.h> | |
703 | +#include <Ice/LocalException.h> | |
704 | ||
705 | using namespace std; | |
706 | using namespace Ice; | |
707 | using namespace IceInternal; | |
708 | ||
709 | -IceUtil::Shared* IceInternal::upCast(InputStream* p) { return p; } | |
710 | -IceUtil::Shared* IceInternal::upCast(OutputStream* p) { return p; } | |
711 | +IceUtil::Shared* Ice::upCast(InputStream* p) { return p; } | |
712 | +IceUtil::Shared* Ice::upCast(OutputStream* p) { return p; } | |
713 | + | |
714 | +namespace IceInternal | |
715 | +{ | |
716 | + void delegateThrowMarshalException(const char* file, int line , const ::std::string& message) | |
717 | + { | |
718 | + throw Ice::MarshalException(file, line, message); | |
719 | + } | |
720 | +} | |
721 | diff --git a/cpp/src/IceGrid/AdminCallbackRouter.cpp b/cpp/src/IceGrid/AdminCallbackRouter.cpp | |
722 | index e4d21ef..ce63c9f 100644 | |
723 | --- a/cpp/src/IceGrid/AdminCallbackRouter.cpp | |
724 | +++ b/cpp/src/IceGrid/AdminCallbackRouter.cpp | |
725 | @@ -49,7 +49,12 @@ IceGrid::AdminCallbackRouter::addMapping(const string& category, const Connectio | |
726 | #ifndef NDEBUG | |
727 | bool inserted = | |
728 | #endif | |
729 | - _categoryToConnection.insert(map<string, ConnectionPtr>::value_type(category, con)).second; | |
730 | + _categoryToConnection.insert(map<string, ConnectionPtr>::value_type(category, con)) | |
731 | +#ifndef NDEBUG | |
732 | + .second | |
733 | +#endif | |
734 | + ; | |
735 | + | |
736 | ||
737 | assert(inserted == true); | |
738 | } | |
739 | diff --git a/cpp/src/IceGrid/DescriptorHelper.cpp b/cpp/src/IceGrid/DescriptorHelper.cpp | |
740 | index 9126c2f..0bc0111 100644 | |
741 | --- a/cpp/src/IceGrid/DescriptorHelper.cpp | |
742 | +++ b/cpp/src/IceGrid/DescriptorHelper.cpp | |
743 | @@ -198,15 +198,6 @@ updateSeqElts(const Seq& seq, const Seq& update, const Ice::StringSeq& remove, G | |
744 | return result; | |
745 | } | |
746 | ||
747 | -template<typename Dict> Dict | |
748 | -getDictUpdatedElts(const Dict& ldict, const Dict& rdict) | |
749 | -{ | |
750 | -#if defined(_MSC_VER) && (_MSC_VER < 1300) | |
751 | - return getDictUpdatedEltsWithEq(ldict, rdict, equal_to<Dict::mapped_type>()); | |
752 | -#else | |
753 | - return getDictUpdatedEltsWithEq(ldict, rdict, equal_to<typename Dict::mapped_type>()); | |
754 | -#endif | |
755 | -} | |
756 | ||
757 | template<typename EqFunc, typename Dict> Dict | |
758 | getDictUpdatedEltsWithEq(const Dict& ldict, const Dict& rdict, EqFunc eq) | |
759 | @@ -223,6 +214,16 @@ getDictUpdatedEltsWithEq(const Dict& ldict, const Dict& rdict, EqFunc eq) | |
760 | return result; | |
761 | } | |
762 | ||
763 | +template<typename Dict> Dict | |
764 | +getDictUpdatedElts(const Dict& ldict, const Dict& rdict) | |
765 | +{ | |
766 | +#if defined(_MSC_VER) && (_MSC_VER < 1300) | |
767 | + return getDictUpdatedEltsWithEq(ldict, rdict, equal_to<Dict::mapped_type>()); | |
768 | +#else | |
769 | + return getDictUpdatedEltsWithEq(ldict, rdict, equal_to<typename Dict::mapped_type>()); | |
770 | +#endif | |
771 | +} | |
772 | + | |
773 | template <typename Dict> Ice::StringSeq | |
774 | getDictRemovedElts(const Dict& ldict, const Dict& rdict) | |
775 | { | |
776 | diff --git a/cpp/src/IceGrid/ReplicaCache.cpp b/cpp/src/IceGrid/ReplicaCache.cpp | |
777 | index 53ad03e..154853d 100644 | |
778 | --- a/cpp/src/IceGrid/ReplicaCache.cpp | |
779 | +++ b/cpp/src/IceGrid/ReplicaCache.cpp | |
780 | @@ -40,7 +40,7 @@ ReplicaCache::add(const string& name, const ReplicaSessionIPtr& session) | |
781 | Lock sync(*this); | |
782 | ||
783 | ReplicaEntryPtr entry; | |
784 | - while(entry = getImpl(name)) | |
785 | + while((entry = getImpl(name))) | |
786 | { | |
787 | ReplicaSessionIPtr session = entry->getSession(); | |
788 | if(session->isDestroyed()) | |
789 | diff --git a/cpp/src/IceGrid/SessionI.h b/cpp/src/IceGrid/SessionI.h | |
790 | index 3c67e20..f5c1b2e 100644 | |
791 | --- a/cpp/src/IceGrid/SessionI.h | |
792 | +++ b/cpp/src/IceGrid/SessionI.h | |
793 | @@ -35,7 +35,7 @@ typedef IceUtil::Handle<Allocatable> AllocatablePtr; | |
794 | class SessionI; | |
795 | typedef IceUtil::Handle<SessionI> SessionIPtr; | |
796 | ||
797 | -class BaseSessionI : virtual Ice::Object, public IceUtil::Mutex | |
798 | +class BaseSessionI : virtual public Ice::Object, public IceUtil::Mutex | |
799 | { | |
800 | public: | |
801 | ||
802 | diff --git a/cpp/src/IceSSL/Instance.cpp b/cpp/src/IceSSL/Instance.cpp | |
803 | index 5eb4c58..585620c 100644 | |
804 | --- a/cpp/src/IceSSL/Instance.cpp | |
805 | +++ b/cpp/src/IceSSL/Instance.cpp | |
806 | @@ -38,7 +38,7 @@ using namespace std; | |
807 | using namespace Ice; | |
808 | using namespace IceSSL; | |
809 | ||
810 | -IceUtil::Shared* IceInternal::upCast(IceSSL::Instance* p) { return p; } | |
811 | +IceUtil::Shared* IceSSL::upCast(IceSSL::Instance* p) { return p; } | |
812 | ||
813 | namespace | |
814 | { | |
815 | diff --git a/cpp/src/IceSSL/InstanceF.h b/cpp/src/IceSSL/InstanceF.h | |
816 | index d08a3a9..b03d995 100644 | |
817 | --- a/cpp/src/IceSSL/InstanceF.h | |
818 | +++ b/cpp/src/IceSSL/InstanceF.h | |
819 | @@ -18,13 +18,13 @@ namespace IceSSL | |
820 | { | |
821 | ||
822 | class Instance; | |
823 | +IceUtil::Shared* upCast(IceSSL::Instance*); | |
824 | ||
825 | } | |
826 | ||
827 | namespace IceInternal | |
828 | { | |
829 | ||
830 | -IceUtil::Shared* upCast(IceSSL::Instance*); | |
831 | ||
832 | } | |
833 | ||
834 | diff --git a/cpp/src/IceSSL/TrustManager.cpp b/cpp/src/IceSSL/TrustManager.cpp | |
835 | index 0ec6e28..c4549b9 100644 | |
836 | --- a/cpp/src/IceSSL/TrustManager.cpp | |
837 | +++ b/cpp/src/IceSSL/TrustManager.cpp | |
838 | @@ -20,7 +20,7 @@ | |
839 | using namespace std; | |
840 | using namespace IceSSL; | |
841 | ||
842 | -IceUtil::Shared* IceInternal::upCast(IceSSL::TrustManager* p) { return p; } | |
843 | +IceUtil::Shared* IceSSL::upCast(IceSSL::TrustManager* p) { return p; } | |
844 | ||
845 | TrustManager::TrustManager(const Ice::CommunicatorPtr& communicator) : | |
846 | _communicator(communicator) | |
847 | diff --git a/cpp/src/IceSSL/TrustManagerF.h b/cpp/src/IceSSL/TrustManagerF.h | |
848 | index 346775c..e1af0d1 100644 | |
849 | --- a/cpp/src/IceSSL/TrustManagerF.h | |
850 | +++ b/cpp/src/IceSSL/TrustManagerF.h | |
851 | @@ -18,13 +18,13 @@ namespace IceSSL | |
852 | { | |
853 | ||
854 | class TrustManager; | |
855 | +IceUtil::Shared* upCast(IceSSL::TrustManager*); | |
856 | ||
857 | } | |
858 | ||
859 | namespace IceInternal | |
860 | { | |
861 | ||
862 | -IceUtil::Shared* upCast(IceSSL::TrustManager*); | |
863 | ||
864 | } | |
865 | ||
866 | diff --git a/cpp/src/IceSSL/Util.cpp b/cpp/src/IceSSL/Util.cpp | |
867 | index fc7e19c..63f6b44 100644 | |
868 | --- a/cpp/src/IceSSL/Util.cpp | |
869 | +++ b/cpp/src/IceSSL/Util.cpp | |
870 | @@ -175,7 +175,7 @@ convertDH(unsigned char* p, int plen, unsigned char* g, int glen) | |
871 | return dh; | |
872 | } | |
873 | ||
874 | -IceUtil::Shared* IceInternal::upCast(IceSSL::DHParams* p) { return p; } | |
875 | +IceUtil::Shared* IceSSL::upCast(IceSSL::DHParams* p) { return p; } | |
876 | ||
877 | IceSSL::DHParams::DHParams() : | |
878 | _dh512(0), _dh1024(0), _dh2048(0), _dh4096(0) | |
879 | diff --git a/cpp/src/IceSSL/UtilF.h b/cpp/src/IceSSL/UtilF.h | |
880 | index 4c06e1f..5bad4c8 100644 | |
881 | --- a/cpp/src/IceSSL/UtilF.h | |
882 | +++ b/cpp/src/IceSSL/UtilF.h | |
883 | @@ -21,13 +21,13 @@ namespace IceSSL | |
884 | { | |
885 | ||
886 | class DHParams; | |
887 | +IceUtil::Shared* upCast(IceSSL::DHParams*); | |
888 | ||
889 | } | |
890 | ||
891 | namespace IceInternal | |
892 | { | |
893 | ||
894 | -IceUtil::Shared* upCast(IceSSL::DHParams*); | |
895 | ||
896 | } | |
897 | ||
898 | diff --git a/cpp/src/IceStorm/NodeI.cpp b/cpp/src/IceStorm/NodeI.cpp | |
899 | index 0c9511e..b9788f4 100644 | |
900 | --- a/cpp/src/IceStorm/NodeI.cpp | |
901 | +++ b/cpp/src/IceStorm/NodeI.cpp | |
902 | @@ -18,11 +18,6 @@ using namespace std; | |
903 | namespace | |
904 | { | |
905 | ||
906 | -bool operator==(const GroupNodeInfo& info, int id) | |
907 | -{ | |
908 | - return info.id == id; | |
909 | -} | |
910 | - | |
911 | class CheckTask : public IceUtil::TimerTask | |
912 | { | |
913 | const NodeIPtr _node; | |
914 | diff --git a/cpp/src/IceUtil/Cond.cpp b/cpp/src/IceUtil/Cond.cpp | |
915 | index 6a8bd3d..a18fd61 100644 | |
916 | --- a/cpp/src/IceUtil/Cond.cpp | |
917 | +++ b/cpp/src/IceUtil/Cond.cpp | |
918 | @@ -330,8 +330,11 @@ IceUtil::Cond::Cond() | |
919 | ||
920 | IceUtil::Cond::~Cond() | |
921 | { | |
922 | +#ifndef NDEBUG | |
923 | int rc = 0; | |
924 | - rc = pthread_cond_destroy(&_cond); | |
925 | + rc = | |
926 | +#endif | |
927 | + pthread_cond_destroy(&_cond); | |
928 | assert(rc == 0); | |
929 | } | |
930 | ||
931 | diff --git a/cpp/src/IceUtil/CountDownLatch.cpp b/cpp/src/IceUtil/CountDownLatch.cpp | |
932 | index bd60766..86e8d2c 100644 | |
933 | --- a/cpp/src/IceUtil/CountDownLatch.cpp | |
934 | +++ b/cpp/src/IceUtil/CountDownLatch.cpp | |
935 | @@ -44,10 +44,16 @@ IceUtilInternal::CountDownLatch::~CountDownLatch() | |
936 | #ifdef _WIN32 | |
937 | CloseHandle(_event); | |
938 | #else | |
939 | +#ifndef NDEBUG | |
940 | int rc = 0; | |
941 | - rc = pthread_mutex_destroy(&_mutex); | |
942 | + rc = | |
943 | +#endif | |
944 | + pthread_mutex_destroy(&_mutex); | |
945 | assert(rc == 0); | |
946 | - rc = pthread_cond_destroy(&_cond); | |
947 | +#ifndef NDEBUG | |
948 | + rc = | |
949 | +#endif | |
950 | + pthread_cond_destroy(&_cond); | |
951 | assert(rc == 0); | |
952 | #endif | |
953 | } | |
954 | diff --git a/cpp/src/IceUtil/CtrlCHandler.cpp b/cpp/src/IceUtil/CtrlCHandler.cpp | |
955 | index f4d150c..575537a 100644 | |
956 | --- a/cpp/src/IceUtil/CtrlCHandler.cpp | |
957 | +++ b/cpp/src/IceUtil/CtrlCHandler.cpp | |
958 | @@ -219,18 +219,27 @@ CtrlCHandler::CtrlCHandler(CtrlCHandlerCallback callback) | |
959 | sigaddset(&ctrlCLikeSignals, SIGHUP); | |
960 | sigaddset(&ctrlCLikeSignals, SIGINT); | |
961 | sigaddset(&ctrlCLikeSignals, SIGTERM); | |
962 | - int rc = pthread_sigmask(SIG_BLOCK, &ctrlCLikeSignals, 0); | |
963 | +#ifndef NDEBUG | |
964 | + int rc = | |
965 | +#endif | |
966 | + pthread_sigmask(SIG_BLOCK, &ctrlCLikeSignals, 0); | |
967 | assert(rc == 0); | |
968 | ||
969 | // Joinable thread | |
970 | - rc = pthread_create(&_tid, 0, sigwaitThread, 0); | |
971 | +#ifndef NDEBUG | |
972 | + rc = | |
973 | +#endif | |
974 | + pthread_create(&_tid, 0, sigwaitThread, 0); | |
975 | assert(rc == 0); | |
976 | } | |
977 | } | |
978 | ||
979 | CtrlCHandler::~CtrlCHandler() | |
980 | { | |
981 | - int rc = pthread_cancel(_tid); | |
982 | +#ifndef NDEBUG | |
983 | + int rc = | |
984 | +#endif | |
985 | + pthread_cancel(_tid); | |
986 | assert(rc == 0); | |
987 | #if defined(__APPLE__) | |
988 | // | |
989 | @@ -241,7 +250,10 @@ CtrlCHandler::~CtrlCHandler() | |
990 | //assert(rc == 0); For some reaosns, this assert is sometime triggered | |
991 | #endif | |
992 | void* status = 0; | |
993 | - rc = pthread_join(_tid, &status); | |
994 | +#ifndef NDEBUG | |
995 | + rc = | |
996 | +#endif | |
997 | + pthread_join(_tid, &status); | |
998 | assert(rc == 0); | |
999 | #if !defined(__APPLE__) | |
1000 | assert(status == PTHREAD_CANCELED); | |
1001 | diff --git a/cpp/src/IceUtil/FileUtil.cpp b/cpp/src/IceUtil/FileUtil.cpp | |
1002 | index 1c1b974..b861e19 100644 | |
1003 | --- a/cpp/src/IceUtil/FileUtil.cpp | |
1004 | +++ b/cpp/src/IceUtil/FileUtil.cpp | |
1005 | @@ -26,6 +26,10 @@ | |
1006 | # include <dir.h> | |
1007 | #endif | |
1008 | ||
1009 | +#if defined(__FreeBSD__) || defined(__linux) | |
1010 | +# include <unistd.h> | |
1011 | +#endif | |
1012 | + | |
1013 | using namespace std; | |
1014 | ||
1015 | // | |
1016 | diff --git a/cpp/src/IceUtil/RecMutex.cpp b/cpp/src/IceUtil/RecMutex.cpp | |
1017 | index f3b1376..ce719ad 100644 | |
1018 | --- a/cpp/src/IceUtil/RecMutex.cpp | |
1019 | +++ b/cpp/src/IceUtil/RecMutex.cpp | |
1020 | @@ -148,8 +148,11 @@ IceUtil::RecMutex::init(const MutexProtocol protocol) | |
1021 | IceUtil::RecMutex::~RecMutex() | |
1022 | { | |
1023 | assert(_count == 0); | |
1024 | +#ifndef NDEBUG | |
1025 | int rc = 0; | |
1026 | - rc = pthread_mutex_destroy(&_mutex); | |
1027 | + rc = | |
1028 | +#endif | |
1029 | + pthread_mutex_destroy(&_mutex); | |
1030 | assert(rc == 0); | |
1031 | } | |
1032 | ||
1033 | @@ -196,8 +199,11 @@ IceUtil::RecMutex::unlock() const | |
1034 | { | |
1035 | if(--_count == 0) | |
1036 | { | |
1037 | +#ifndef NDEBUG | |
1038 | int rc = 0; // Prevent warnings when NDEBUG is defined. | |
1039 | - rc = pthread_mutex_unlock(&_mutex); | |
1040 | + rc = | |
1041 | +#endif | |
1042 | + pthread_mutex_unlock(&_mutex); | |
1043 | assert(rc == 0); | |
1044 | } | |
1045 | } | |
1046 | diff --git a/cpp/src/Slice/CPlusPlusUtil.cpp b/cpp/src/Slice/CPlusPlusUtil.cpp | |
1047 | index f0d6a51..0d5024d 100644 | |
1048 | --- a/cpp/src/Slice/CPlusPlusUtil.cpp | |
1049 | +++ b/cpp/src/Slice/CPlusPlusUtil.cpp | |
1050 | @@ -631,7 +631,7 @@ Slice::writeMarshalUnmarshalCode(Output& out, const TypePtr& type, const string& | |
1051 | string scope = fixKwd(cl->scope()); | |
1052 | if(marshal) | |
1053 | { | |
1054 | - out << nl << stream << deref << "write(::Ice::ObjectPtr(::IceInternal::upCast(" << fixedParam | |
1055 | + out << nl << stream << deref << "write(::Ice::ObjectPtr(" << scope << "upCast(" << fixedParam | |
1056 | << ".get())));"; | |
1057 | } | |
1058 | else | |
1059 | @@ -649,7 +649,7 @@ Slice::writeMarshalUnmarshalCode(Output& out, const TypePtr& type, const string& | |
1060 | string scope = fixKwd(px->_class()->scope()); | |
1061 | if(marshal) | |
1062 | { | |
1063 | - out << nl << stream << deref << "write(::Ice::ObjectPrx(::IceInternal::upCast(" << fixedParam | |
1064 | + out << nl << stream << deref << "write(::Ice::ObjectPrx(::IceProxy" << scope << "upCast(" << fixedParam | |
1065 | << ".get())));"; | |
1066 | } | |
1067 | else | |
1068 | diff --git a/cpp/src/Slice/FileTracker.cpp b/cpp/src/Slice/FileTracker.cpp | |
1069 | index af009fe..3966934 100644 | |
1070 | --- a/cpp/src/Slice/FileTracker.cpp | |
1071 | +++ b/cpp/src/Slice/FileTracker.cpp | |
1072 | @@ -17,6 +17,10 @@ | |
1073 | # include <direct.h> | |
1074 | #endif | |
1075 | ||
1076 | +#if defined(__FreeBSD__) || defined(__linux) | |
1077 | +# include <unistd.h> | |
1078 | +#endif | |
1079 | + | |
1080 | using namespace std; | |
1081 | ||
1082 | Slice::FileException::FileException(const char* file, int line, const string& r) : | |
1083 | diff --git a/cpp/src/slice2cpp/Gen.cpp b/cpp/src/slice2cpp/Gen.cpp | |
1084 | index 8ec5aa5..63d6c83 100644 | |
1085 | --- a/cpp/src/slice2cpp/Gen.cpp | |
1086 | +++ b/cpp/src/slice2cpp/Gen.cpp | |
1087 | @@ -1952,8 +1952,10 @@ Slice::Gen::ProxyDeclVisitor::visitClassDecl(const ClassDeclPtr& p) | |
1088 | } | |
1089 | ||
1090 | string name = fixKwd(p->name()); | |
1091 | + string scoped = fixKwd(p->scoped()); | |
1092 | ||
1093 | H << sp << nl << "class " << name << ';'; | |
1094 | + H << nl << _dllExport << "::IceProxy::Ice::Object* upCast(::IceProxy" << scoped << "*);"; | |
1095 | } | |
1096 | ||
1097 | Slice::Gen::ProxyVisitor::ProxyVisitor(Output& h, Output& c, const string& dllExport) : | |
1098 | @@ -3699,10 +3701,22 @@ void | |
1099 | Slice::Gen::ObjectDeclVisitor::visitClassDecl(const ClassDeclPtr& p) | |
1100 | { | |
1101 | string name = fixKwd(p->name()); | |
1102 | + string scoped = fixKwd(p->scoped()); | |
1103 | ||
1104 | H << sp << nl << "class " << name << ';'; | |
1105 | H << nl << "bool operator==(const " << name << "&, const " << name << "&);"; | |
1106 | H << nl << "bool operator<(const " << name << "&, const " << name << "&);"; | |
1107 | + | |
1108 | + H << sp; | |
1109 | + | |
1110 | + if(!p->isLocal()) | |
1111 | + { | |
1112 | + H << nl << _dllExport << "::Ice::Object* upCast(" << scoped << "*);"; | |
1113 | + } | |
1114 | + else | |
1115 | + { | |
1116 | + H << nl << _dllExport << "::Ice::LocalObject* upCast(" << scoped << "*);"; | |
1117 | + } | |
1118 | } | |
1119 | ||
1120 | void | |
1121 | @@ -4930,13 +4944,13 @@ Slice::Gen::ObjectVisitor::emitGCInsertCode(const TypePtr& p, const string& pref | |
1122 | { | |
1123 | if((BuiltinPtr::dynamicCast(p) && BuiltinPtr::dynamicCast(p)->kind() == Builtin::KindObject) | |
1124 | || ClassDeclPtr::dynamicCast(p)) | |
1125 | - { | |
1126 | - C << nl << "if(" << prefix << name << ')'; | |
1127 | + { C << nl << "if(" << prefix << name << ')'; | |
1128 | C << sb; | |
1129 | ClassDeclPtr decl = ClassDeclPtr::dynamicCast(p); | |
1130 | if(decl) | |
1131 | { | |
1132 | - C << nl << "::IceInternal::upCast(" << prefix << name << ".get())->__addObject(_c);"; | |
1133 | + string scope = fixKwd(decl->scope()); | |
1134 | + C << nl << scope << "upCast(" << prefix << name << ".get())->__addObject(_c);"; | |
1135 | } | |
1136 | else | |
1137 | { | |
1138 | @@ -4999,9 +5013,10 @@ Slice::Gen::ObjectVisitor::emitGCClearCode(const TypePtr& p, const string& prefi | |
1139 | ClassDeclPtr decl = ClassDeclPtr::dynamicCast(p); | |
1140 | if(decl) | |
1141 | { | |
1142 | - C << nl << "if(" << "::IceInternal::upCast(" << prefix << name << ".get())->__usesClasses())"; | |
1143 | + string scope = fixKwd(decl->scope()); | |
1144 | + C << nl << "if(" << scope << "upCast(" << prefix << name << ".get())->__usesClasses())"; | |
1145 | C << sb; | |
1146 | - C << nl << "::IceInternal::upCast(" << prefix << name << ".get())->__decRefUnsafe();"; | |
1147 | + C << nl << scope << "upCast(" << prefix << name << ".get())->__decRefUnsafe();"; | |
1148 | C << nl << prefix << name << ".__clearHandleUnsafe();"; | |
1149 | ||
1150 | } | |
1151 | @@ -5637,40 +5652,30 @@ Slice::Gen::IceInternalVisitor::visitClassDecl(const ClassDeclPtr& p) | |
1152 | { | |
1153 | string scoped = fixKwd(p->scoped()); | |
1154 | ||
1155 | - H << sp; | |
1156 | - | |
1157 | - if(!p->isLocal()) | |
1158 | - { | |
1159 | - H << nl << _dllExport << "::Ice::Object* upCast(" << scoped << "*);"; | |
1160 | - H << nl << _dllExport << "::IceProxy::Ice::Object* upCast(::IceProxy" << scoped << "*);"; | |
1161 | - } | |
1162 | - else | |
1163 | - { | |
1164 | - H << nl << _dllExport << "::Ice::LocalObject* upCast(" << scoped << "*);"; | |
1165 | - } | |
1166 | } | |
1167 | ||
1168 | bool | |
1169 | Slice::Gen::IceInternalVisitor::visitClassDefStart(const ClassDefPtr& p) | |
1170 | { | |
1171 | string scoped = fixKwd(p->scoped()); | |
1172 | + string scope = fixKwd(p->scope()); | |
1173 | ||
1174 | C << sp; | |
1175 | if(!p->isLocal()) | |
1176 | { | |
1177 | C << nl | |
1178 | << (_dllExport.empty() ? "" : "ICE_DECLSPEC_EXPORT ") | |
1179 | - << "::Ice::Object* IceInternal::upCast(" << scoped << "* p) { return p; }"; | |
1180 | + << "::Ice::Object* " << scope << "upCast(" << scoped << "* p) { return p; }"; | |
1181 | C << nl | |
1182 | << (_dllExport.empty() ? "" : "ICE_DECLSPEC_EXPORT ") | |
1183 | - << "::IceProxy::Ice::Object* IceInternal::upCast(::IceProxy" << scoped | |
1184 | + << "::IceProxy::Ice::Object* IceProxy" << scope << "upCast(::IceProxy" << scoped | |
1185 | << "* p) { return p; }"; | |
1186 | } | |
1187 | else | |
1188 | { | |
1189 | C << nl | |
1190 | << (_dllExport.empty() ? "" : "ICE_DECLSPEC_EXPORT ") | |
1191 | - << "::Ice::LocalObject* IceInternal::upCast(" << scoped << "* p) { return p; }"; | |
1192 | + << "::Ice::LocalObject* " << scope << "upCast(" << scoped << "* p) { return p; }"; | |
1193 | } | |
1194 | ||
1195 | return true; | |
1196 | diff --git a/cpp/src/slice2cs/Gen.cpp b/cpp/src/slice2cs/Gen.cpp | |
1197 | index 90d3136..dd5cf4f 100644 | |
1198 | --- a/cpp/src/slice2cs/Gen.cpp | |
1199 | +++ b/cpp/src/slice2cs/Gen.cpp | |
1200 | @@ -1281,7 +1281,7 @@ Slice::CsVisitor::writeConstantValue(const TypePtr& type, const SyntaxTreeBasePt | |
1201 | { | |
1202 | _out << value << "F"; | |
1203 | } | |
1204 | - else if(ep = EnumPtr::dynamicCast(type)) | |
1205 | + else if((ep = EnumPtr::dynamicCast(type))) | |
1206 | { | |
1207 | string enumName = fixId(ep->scoped()); | |
1208 | string::size_type colon = value.rfind(':'); | |
1209 | @@ -3914,16 +3914,6 @@ Slice::Gen::ProxyVisitor::visitOperation(const OperationPtr& p) | |
1210 | ClassDefPtr cl = ClassDefPtr::dynamicCast(p->container()); | |
1211 | string name = fixId(p->name(), DotNet::ICloneable, true); | |
1212 | vector<string> params = getParams(p); | |
1213 | - bool hasOutParams = false; | |
1214 | - ParamDeclList paramList = p->parameters(); | |
1215 | - for(ParamDeclList::const_iterator pli = paramList.begin(); pli != paramList.end(); ++pli) | |
1216 | - { | |
1217 | - if((*pli)->isOutParam()) | |
1218 | - { | |
1219 | - hasOutParams = true; | |
1220 | - break; | |
1221 | - } | |
1222 | - } | |
1223 | ||
1224 | _out << sp; | |
1225 | ||
1226 | diff --git a/cpp/src/slice2java/Gen.cpp b/cpp/src/slice2java/Gen.cpp | |
1227 | index e0ac391..5dd7226 100644 | |
1228 | --- a/cpp/src/slice2java/Gen.cpp | |
1229 | +++ b/cpp/src/slice2java/Gen.cpp | |
1230 | @@ -1246,7 +1246,7 @@ Slice::JavaVisitor::writeConstantValue(Output& out, const TypePtr& type, const S | |
1231 | { | |
1232 | BuiltinPtr bp; | |
1233 | EnumPtr ep; | |
1234 | - if(bp = BuiltinPtr::dynamicCast(type)) | |
1235 | + if((bp = BuiltinPtr::dynamicCast(type))) | |
1236 | { | |
1237 | switch(bp->kind()) | |
1238 | { | |
1239 | @@ -1349,7 +1349,7 @@ Slice::JavaVisitor::writeConstantValue(Output& out, const TypePtr& type, const S | |
1240 | } | |
1241 | ||
1242 | } | |
1243 | - else if(ep = EnumPtr::dynamicCast(type)) | |
1244 | + else if((ep = EnumPtr::dynamicCast(type))) | |
1245 | { | |
1246 | string val = value; | |
1247 | string::size_type pos = val.rfind(':'); | |
1248 | diff --git a/cpp/test/Glacier2/ssl/Server.cpp b/cpp/test/Glacier2/ssl/Server.cpp | |
1249 | index 4fb14f5..1b0c6a5 100644 | |
1250 | --- a/cpp/test/Glacier2/ssl/Server.cpp | |
1251 | +++ b/cpp/test/Glacier2/ssl/Server.cpp | |
1252 | @@ -31,9 +31,15 @@ void testContext(bool ssl, const Ice::Context& context) | |
1253 | test(ctx["_con.type"] == "ssl"); | |
1254 | test(ctx["_con.localPort"] == "12348"); | |
1255 | } | |
1256 | - test(ctx["_con.localAddress"] == "127.0.0.1"); | |
1257 | + if (!inFreeBSDJail()) | |
1258 | + { | |
1259 | + test(ctx["_con.localAddress"] == "127.0.0.1"); | |
1260 | + } | |
1261 | test(ctx["_con.remotePort"] != ""); | |
1262 | - test(ctx["_con.remoteAddress"] == "127.0.0.1"); | |
1263 | + if (!inFreeBSDJail()) | |
1264 | + { | |
1265 | + test(ctx["_con.remoteAddress"] == "127.0.0.1"); | |
1266 | + } | |
1267 | } | |
1268 | ||
1269 | } | |
1270 | @@ -99,7 +105,7 @@ public: | |
1271 | } | |
1272 | ||
1273 | virtual void | |
1274 | - ice_ping(const Ice::Current& current) | |
1275 | + ice_ping(const Ice::Current& current) const | |
1276 | { | |
1277 | testContext(_ssl, current.ctx); | |
1278 | } | |
1279 | @@ -133,8 +139,11 @@ public: | |
1280 | { | |
1281 | testContext(true, current.ctx); | |
1282 | ||
1283 | - test(info.remoteHost == "127.0.0.1"); | |
1284 | - test(info.localHost == "127.0.0.1"); | |
1285 | + if (!inFreeBSDJail()) | |
1286 | + { | |
1287 | + test(info.remoteHost == "127.0.0.1"); | |
1288 | + test(info.localHost == "127.0.0.1"); | |
1289 | + } | |
1290 | test(info.localPort == 12348); | |
1291 | ||
1292 | try | |
1293 | diff --git a/cpp/test/Ice/background/EndpointI.h b/cpp/test/Ice/background/EndpointI.h | |
1294 | index f38a280..4d35f7d 100644 | |
1295 | --- a/cpp/test/Ice/background/EndpointI.h | |
1296 | +++ b/cpp/test/Ice/background/EndpointI.h | |
1297 | @@ -48,7 +48,7 @@ protected: | |
1298 | ||
1299 | virtual Ice::Int hashInit() const; | |
1300 | #if !defined(_MSC_VER) || _MSC_VER > 1300 | |
1301 | - using IceInternal::EndpointI::connectors; | |
1302 | + using ::IceInternal::EndpointI::connectors; | |
1303 | #endif | |
1304 | ||
1305 | private: | |
1306 | diff --git a/cpp/test/Ice/custom/AllTests.cpp b/cpp/test/Ice/custom/AllTests.cpp | |
1307 | index bf66fa9..9907e6b 100644 | |
1308 | --- a/cpp/test/Ice/custom/AllTests.cpp | |
1309 | +++ b/cpp/test/Ice/custom/AllTests.cpp | |
1310 | @@ -1384,7 +1384,8 @@ public: | |
1311 | const ::Test::ClassStructSeq& seq, | |
1312 | const InParamPtr& cookie) | |
1313 | { | |
1314 | - pair< ::Test::ClassStructPtr, ::Test::ClassStructSeq> in = getIn(in, cookie); | |
1315 | + pair< ::Test::ClassStructPtr, ::Test::ClassStructSeq> in; | |
1316 | + in = getIn(in, cookie); | |
1317 | test(ret == in.first); | |
1318 | test(cs1 == in.first); | |
1319 | test(seq == in.second); | |
1320 | @@ -1432,7 +1433,8 @@ public: | |
1321 | ||
1322 | void throwExcept1(const Ice::AsyncResultPtr& result) | |
1323 | { | |
1324 | - wstring in = getIn(in, InParamPtr::dynamicCast(result->getCookie())); | |
1325 | + wstring in; | |
1326 | + in = getIn(in, InParamPtr::dynamicCast(result->getCookie())); | |
1327 | try | |
1328 | { | |
1329 | Test1::WstringClassPrx t = Test1::WstringClassPrx::uncheckedCast(result->getProxy()); | |
1330 | @@ -1451,7 +1453,8 @@ public: | |
1331 | ||
1332 | void throwExcept2(const Ice::AsyncResultPtr& result) | |
1333 | { | |
1334 | - wstring in = getIn(in, InParamPtr::dynamicCast(result->getCookie())); | |
1335 | + wstring in; | |
1336 | + in = getIn(in, InParamPtr::dynamicCast(result->getCookie())); | |
1337 | try | |
1338 | { | |
1339 | Test2::WstringClassPrx t = Test2::WstringClassPrx::uncheckedCast(result->getProxy()); | |
1340 | diff --git a/cpp/test/Ice/info/AllTests.cpp b/cpp/test/Ice/info/AllTests.cpp | |
1341 | index 3e9c229..7f92b7f 100644 | |
1342 | --- a/cpp/test/Ice/info/AllTests.cpp | |
1343 | +++ b/cpp/test/Ice/info/AllTests.cpp | |
1344 | @@ -141,9 +141,11 @@ allTests(const Ice::CommunicatorPtr& communicator) | |
1345 | test(info->adapterName.empty()); | |
1346 | test(info->localPort > 0); | |
1347 | test(info->remotePort == 12010); | |
1348 | - test(info->remoteAddress == defaultHost); | |
1349 | - test(info->localAddress == defaultHost); | |
1350 | - | |
1351 | + if (!inFreeBSDJail()) | |
1352 | + { | |
1353 | + test(info->remoteAddress == defaultHost); | |
1354 | + test(info->localAddress == defaultHost); | |
1355 | + } | |
1356 | ostringstream os; | |
1357 | ||
1358 | Ice::Context ctx = testIntf->getConnectionInfoAsContext(); | |
1359 | @@ -163,8 +165,11 @@ allTests(const Ice::CommunicatorPtr& communicator) | |
1360 | test(info->adapterName.empty()); | |
1361 | test(info->localPort > 0); | |
1362 | test(info->remotePort == 12010); | |
1363 | - test(info->remoteAddress ==defaultHost); | |
1364 | - test(info->localAddress == defaultHost); | |
1365 | + if (!inFreeBSDJail()) | |
1366 | + { | |
1367 | + test(info->remoteAddress == defaultHost); | |
1368 | + test(info->localAddress == defaultHost); | |
1369 | + } | |
1370 | } | |
1371 | cout << "ok" << endl; | |
1372 | ||
1373 | diff --git a/cpp/test/Ice/properties/run.py b/cpp/test/Ice/properties/run.py | |
1374 | index 18f78f0..955295e 100755 | |
1375 | --- a/cpp/test/Ice/properties/run.py | |
1376 | +++ b/cpp/test/Ice/properties/run.py | |
1377 | @@ -26,7 +26,7 @@ client = os.path.join(os.getcwd(), "client") | |
1378 | # | |
1379 | # Write config | |
1380 | # | |
1381 | -configPath = u"./config/中国_client.config" | |
1382 | +configPath = u"./config/中国_client.config".encode("utf-8") | |
1383 | ||
1384 | TestUtil.createConfig(configPath, | |
1385 | ["# Automatically generated by Ice test driver.", | |
1386 | diff --git a/cpp/test/IceUtil/unicode/Client.cpp b/cpp/test/IceUtil/unicode/Client.cpp | |
1387 | index 6370c9e..c5b73fb 100644 | |
1388 | --- a/cpp/test/IceUtil/unicode/Client.cpp | |
1389 | +++ b/cpp/test/IceUtil/unicode/Client.cpp | |
1390 | @@ -15,6 +15,10 @@ | |
1391 | # include <io.h> | |
1392 | #endif | |
1393 | ||
1394 | +#if defined(__FreeBSD__) || defined(__linux) | |
1395 | +# include <unistd.h> | |
1396 | +#endif | |
1397 | + | |
1398 | using namespace IceUtil; | |
1399 | using namespace std; | |
1400 | ||
1401 | diff --git a/cpp/test/Slice/keyword/Client.cpp b/cpp/test/Slice/keyword/Client.cpp | |
1402 | index 0714a17..edcfe00 100644 | |
1403 | --- a/cpp/test/Slice/keyword/Client.cpp | |
1404 | +++ b/cpp/test/Slice/keyword/Client.cpp | |
1405 | @@ -73,6 +73,9 @@ public: | |
1406 | virtual void ice_response(Ice::Int) {} | |
1407 | virtual void ice_exception(const ::Ice::Exception&) {} | |
1408 | }; | |
1409 | + | |
1410 | +template<typename T> | |
1411 | +void unused(T const &) { } | |
1412 | ||
1413 | // | |
1414 | // This section of the test is present to ensure that the C++ types | |
1415 | @@ -86,6 +89,7 @@ testtypes() | |
1416 | ||
1417 | _cpp_and::_cpp_auto b; | |
1418 | b._cpp_default = 0; | |
1419 | + unused(b); | |
1420 | ||
1421 | _cpp_and::deletePtr c = new _cpp_and::_cpp_delete(); | |
1422 | c->_cpp_else = ""; | |
1423 | diff --git a/cpp/test/include/TestCommon.h b/cpp/test/include/TestCommon.h | |
1424 | index 651a885..ca603d4 100644 | |
1425 | --- a/cpp/test/include/TestCommon.h | |
1426 | +++ b/cpp/test/include/TestCommon.h | |
1427 | @@ -17,6 +17,22 @@ | |
1428 | #include <stdlib.h> | |
1429 | #endif | |
1430 | ||
1431 | +#if defined(__FreeBSD__) | |
1432 | +# include <sys/types.h> | |
1433 | +# include <sys/sysctl.h> | |
1434 | +inline bool inFreeBSDJail() | |
1435 | +{ | |
1436 | + int jailed; | |
1437 | + size_t size = sizeof(jailed); | |
1438 | + return (sysctlbyname("security.jail.jailed", &jailed, &size, NULL, 0) != -1 || jailed); | |
1439 | +} | |
1440 | +#else | |
1441 | +inline bool inFreeBSDJail() | |
1442 | +{ | |
1443 | + return false; | |
1444 | +} | |
1445 | +#endif | |
1446 | + | |
1447 | void | |
1448 | inline testFailed(const char* expr, const char* file, unsigned int line) | |
1449 | { | |
1450 | diff --git a/scripts/TestUtil.py b/scripts/TestUtil.py | |
1451 | index e02da06..9b5f497 100755 | |
1452 | --- a/scripts/TestUtil.py | |
1453 | +++ b/scripts/TestUtil.py | |
1454 | @@ -74,6 +74,25 @@ def isDarwin(): | |
1455 | def isLinux(): | |
1456 | return sys.platform.startswith("linux") | |
1457 | ||
1458 | +def isFreeBSD(): | |
1459 | + return sys.platform.startswith("freebsd") | |
1460 | + | |
1461 | +def sysctl(key): | |
1462 | + p = subprocess.Popen("sysctl "+key, shell=1, stdout=subprocess.PIPE) | |
1463 | + try: | |
1464 | + result = p.communicate()[0].strip().split()[1] | |
1465 | + except IndexError: | |
1466 | + return 0 | |
1467 | + if sys.version_info >= (3,): | |
1468 | + result = str(result, sys.stdout.encoding) | |
1469 | + try: | |
1470 | + return int(result) | |
1471 | + except ValueError: | |
1472 | + return result | |
1473 | + | |
1474 | +def isFreeBSDJail(): | |
1475 | + return isFreeBSD() and sysctl("security.jail.jailed") | |
1476 | + | |
1477 | def getCppCompiler(): | |
1478 | compiler = "" | |
1479 | if os.environ.get("CPP_COMPILER", "") != "": | |
1480 | @@ -1590,7 +1609,15 @@ def runTests(start, expanded, num = 0, script = False): | |
1481 | if isDarwin() and "nodarwin" in config: | |
1482 | print "%s*** test not supported under Darwin%s" % (prefix, suffix) | |
1483 | continue | |
1484 | + | |
1485 | + if isFreeBSD() and "nofreebsd" in config: | |
1486 | + print "%s*** test not supported under FreeBSD%s" % (prefix, suffix) | |
1487 | + continue | |
1488 | ||
1489 | + if isFreeBSDJail() and "nofreebsdjail" in config: | |
1490 | + print "%s*** test not supported within a FreeBSD Jail%s" % (prefix, suffix) | |
1491 | + continue | |
1492 | + | |
1493 | if not isWin32() and "win32only" in config: | |
1494 | print "%s*** test only supported under Win32%s" % (prefix, suffix) | |
1495 | continue | |
1496 | -- | |
1497 | 1.7.10.2 | |
1498 |