diff options
author | Johnny Willemsen <jwillemsen@remedy.nl> | 2017-08-01 11:49:42 +0200 |
---|---|---|
committer | Johnny Willemsen <jwillemsen@remedy.nl> | 2017-08-01 11:49:42 +0200 |
commit | 81dc0cd3c3e79cc20dc4fc8aa74c2efef5e12d03 (patch) | |
tree | de0a32c639de5ca8d97229a6b3fed9b5fea6c9e1 /ACE/ace/Array_Map.cpp | |
parent | 277d69d4c1f71a874d34e135a684debf70b4c9c2 (diff) | |
download | ATCD-81dc0cd3c3e79cc20dc4fc8aa74c2efef5e12d03.tar.gz |
Add workaround for broken bcc32, see RSP-15011
* ACE/ace/Array_Map.cpp:
* ACE/ace/Array_Map.h:
Diffstat (limited to 'ACE/ace/Array_Map.cpp')
-rw-r--r-- | ACE/ace/Array_Map.cpp | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/ACE/ace/Array_Map.cpp b/ACE/ace/Array_Map.cpp index ad441a65cad..4917c51e42f 100644 --- a/ACE/ace/Array_Map.cpp +++ b/ACE/ace/Array_Map.cpp @@ -43,8 +43,15 @@ ACE_Array_Map<Key, Value, EqualTo, Alloc>::ACE_Array_Map ( template<typename Key, typename Value, class EqualTo, class Alloc> ACE_Array_Map<Key, Value, EqualTo, Alloc>::~ACE_Array_Map (void) { - for (size_t idx = 0; idx != capacity_; ++idx) { + for (size_t idx = 0; idx != capacity_; ++idx) + { +#if defined (ACE_HAS_BCC32) + using std::pair; + (nodes_ + idx)->~pair<key_type, mapped_type>(); +#else (nodes_ + idx)->~value_type(); +#endif + } alloc_.deallocate(this->nodes_, capacity_); |