1<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 2<html> 3<head> 4<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 5<title>Release Notes</title> 6<link rel="stylesheet" href="../../../doc/src/boostbook.css" type="text/css"> 7<meta name="generator" content="DocBook XSL Stylesheets V1.79.1"> 8<link rel="home" href="../index.html" title="The Boost C++ Libraries BoostBook Documentation Subset"> 9<link rel="up" href="../container.html" title="Chapter 9. Boost.Container"> 10<link rel="prev" href="acknowledgements_notes.html" title="Acknowledgements, notes and links"> 11<link rel="next" href="../hash.html" title="Chapter 10. Boost.ContainerHash"> 12</head> 13<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> 14<table cellpadding="2" width="100%"><tr> 15<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../boost.png"></td> 16<td align="center"><a href="../../../index.html">Home</a></td> 17<td align="center"><a href="../../../libs/libraries.htm">Libraries</a></td> 18<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td> 19<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td> 20<td align="center"><a href="../../../more/index.htm">More</a></td> 21</tr></table> 22<hr> 23<div class="spirit-nav"> 24<a accesskey="p" href="acknowledgements_notes.html"><img src="../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../container.html"><img src="../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../hash.html"><img src="../../../doc/src/images/next.png" alt="Next"></a> 25</div> 26<div class="section"> 27<div class="titlepage"><div><div><h2 class="title" style="clear: both"> 28<a name="container.release_notes"></a><a class="link" href="release_notes.html" title="Release Notes">Release Notes</a> 29</h2></div></div></div> 30<div class="toc"><dl class="toc"> 31<dt><span class="section"><a href="release_notes.html#container.release_notes.release_notes_boost_1_74_00">Boost 32 1.74 Release</a></span></dt> 33<dt><span class="section"><a href="release_notes.html#container.release_notes.release_notes_boost_1_72_00">Boost 34 1.72 Release</a></span></dt> 35<dt><span class="section"><a href="release_notes.html#container.release_notes.release_notes_boost_1_71_00">Boost 36 1.71 Release</a></span></dt> 37<dt><span class="section"><a href="release_notes.html#container.release_notes.release_notes_boost_1_70_00">Boost 38 1.70 Release</a></span></dt> 39<dt><span class="section"><a href="release_notes.html#container.release_notes.release_notes_boost_1_69_00">Boost 40 1.69 Release</a></span></dt> 41<dt><span class="section"><a href="release_notes.html#container.release_notes.release_notes_boost_1_68_00">Boost 42 1.68 Release</a></span></dt> 43<dt><span class="section"><a href="release_notes.html#container.release_notes.release_notes_boost_1_67_00">Boost 44 1.67 Release</a></span></dt> 45<dt><span class="section"><a href="release_notes.html#container.release_notes.release_notes_boost_1_66_00">Boost 46 1.66 Release</a></span></dt> 47<dt><span class="section"><a href="release_notes.html#container.release_notes.release_notes_boost_1_65_00">Boost 48 1.65 Release</a></span></dt> 49<dt><span class="section"><a href="release_notes.html#container.release_notes.release_notes_boost_1_64_00">Boost 50 1.64 Release</a></span></dt> 51<dt><span class="section"><a href="release_notes.html#container.release_notes.release_notes_boost_1_63_00">Boost 52 1.63 Release</a></span></dt> 53<dt><span class="section"><a href="release_notes.html#container.release_notes.release_notes_boost_1_62_00">Boost 54 1.62 Release</a></span></dt> 55<dt><span class="section"><a href="release_notes.html#container.release_notes.release_notes_boost_1_61_00">Boost 56 1.61 Release</a></span></dt> 57<dt><span class="section"><a href="release_notes.html#container.release_notes.release_notes_boost_1_60_00">Boost 58 1.60 Release</a></span></dt> 59<dt><span class="section"><a href="release_notes.html#container.release_notes.release_notes_boost_1_59_00">Boost 60 1.59 Release</a></span></dt> 61<dt><span class="section"><a href="release_notes.html#container.release_notes.release_notes_boost_1_58_00">Boost 62 1.58 Release</a></span></dt> 63<dt><span class="section"><a href="release_notes.html#container.release_notes.release_notes_boost_1_57_00">Boost 64 1.57 Release</a></span></dt> 65<dt><span class="section"><a href="release_notes.html#container.release_notes.release_notes_boost_1_56_00">Boost 66 1.56 Release</a></span></dt> 67<dt><span class="section"><a href="release_notes.html#container.release_notes.release_notes_boost_1_55_00">Boost 68 1.55 Release</a></span></dt> 69<dt><span class="section"><a href="release_notes.html#container.release_notes.release_notes_boost_1_54_00">Boost 70 1.54 Release</a></span></dt> 71<dt><span class="section"><a href="release_notes.html#container.release_notes.release_notes_boost_1_53_00">Boost 72 1.53 Release</a></span></dt> 73<dt><span class="section"><a href="release_notes.html#container.release_notes.release_notes_boost_1_52_00">Boost 74 1.52 Release</a></span></dt> 75<dt><span class="section"><a href="release_notes.html#container.release_notes.release_notes_boost_1_51_00">Boost 76 1.51 Release</a></span></dt> 77<dt><span class="section"><a href="release_notes.html#container.release_notes.release_notes_boost_1_50_00">Boost 78 1.50 Release</a></span></dt> 79<dt><span class="section"><a href="release_notes.html#container.release_notes.release_notes_boost_1_49_00">Boost 80 1.49 Release</a></span></dt> 81<dt><span class="section"><a href="release_notes.html#container.release_notes.release_notes_boost_1_48_00">Boost 82 1.48 Release</a></span></dt> 83</dl></div> 84<div class="section"> 85<div class="titlepage"><div><div><h3 class="title"> 86<a name="container.release_notes.release_notes_boost_1_74_00"></a><a class="link" href="release_notes.html#container.release_notes.release_notes_boost_1_74_00" title="Boost 1.74 Release">Boost 87 1.74 Release</a> 88</h3></div></div></div> 89<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"> 90 Fixed bugs/issues: 91 <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "> 92<li class="listitem"> 93 <a href="https://github.com/boostorg/container/issues/125" target="_top">GitHub 94 #125: <span class="emphasis"><em>"flat_map doc misleading complexity"</em></span></a>. 95 </li> 96<li class="listitem"> 97 <a href="https://github.com/boostorg/container/issues/126" target="_top">GitHub 98 #126: <span class="emphasis"><em>"flat_set.hpp and set.hpp in pmr have the 99 same header guard"</em></span></a>. 100 </li> 101<li class="listitem"> 102 <a href="https://github.com/boostorg/container/issues/128" target="_top">GitHub 103 #128: <span class="emphasis"><em>"moved from small_vector and static_vector 104 calls destructor on elements in static part"</em></span></a>. 105 </li> 106<li class="listitem"> 107 <a href="https://github.com/boostorg/container/issues/129" target="_top">GitHub 108 #129: <span class="emphasis"><em>"Alias templates for small_flat_[multi</em></span>{set|map} 109 using small_vector as container"</a>]. 110 </li> 111<li class="listitem"> 112 <a href="https://github.com/boostorg/container/pull/135" target="_top">GitHub 113 #135: <span class="emphasis"><em>"Missing BOOST_NORETURN for user defined functions"</em></span></a>. 114 </li> 115<li class="listitem"> 116 <a href="https://github.com/boostorg/container/pull/137" target="_top">GitHub 117 #137: <span class="emphasis"><em>"RandomAccessIterator + 0"</em></span></a>. 118 </li> 119<li class="listitem"> 120 <a href="https://github.com/boostorg/container/pull/138" target="_top">GitHub 121 #138: <span class="emphasis"><em>"Remove Classes from Global Namespace"</em></span></a>. 122 </li> 123<li class="listitem"> 124 <a href="https://github.com/boostorg/container/issues/142" target="_top">GitHub 125 #142: <span class="emphasis"><em>"memset called with null pointer"</em></span></a>. 126 </li> 127<li class="listitem"> 128 <a href="https://github.com/boostorg/container/issues/144" target="_top">GitHub 129 #144: <span class="emphasis"><em>"GCC suggest-override warnings"</em></span></a>. 130 </li> 131<li class="listitem"> 132 <a href="https://github.com/boostorg/container/issues/145" target="_top">GitHub 133 #145: <span class="emphasis"><em>"Allocations not handled correctly in some 134 cases of vector move with unequal allocators"</em></span></a>. 135 </li> 136<li class="listitem"> 137 <a href="https://github.com/boostorg/container/pull/146" target="_top">GitHub 138 #146: <span class="emphasis"><em>"Changes for Embarcadero C++ clang-based compilers, 139 targeting Boost 1.74. Addition needed for Embarcardero clang-based 140 compilers"</em></span></a>. 141 </li> 142<li class="listitem"> 143 <a href="https://github.com/boostorg/container/pull/148" target="_top">GitHub 144 #148: <span class="emphasis"><em>"Fix static initialization issues in pmr global 145 resources"</em></span></a>. 146 </li> 147<li class="listitem"> 148 <a href="https://github.com/boostorg/container/pull/149" target="_top">GitHub 149 #149: <span class="emphasis"><em>"InitializeCriticalSectionEx returns "BOOL" 150 (int)"</em></span></a>. 151 </li> 152<li class="listitem"> 153 <a href="https://github.com/boostorg/container/issues/151" target="_top">GitHub 154 #151: <span class="emphasis"><em>"Buffer overflow in monotonic_buffer_resource::do_allocate"</em></span></a>. 155 </li> 156</ul></div> 157 </li></ul></div> 158</div> 159<div class="section"> 160<div class="titlepage"><div><div><h3 class="title"> 161<a name="container.release_notes.release_notes_boost_1_72_00"></a><a class="link" href="release_notes.html#container.release_notes.release_notes_boost_1_72_00" title="Boost 1.72 Release">Boost 162 1.72 Release</a> 163</h3></div></div></div> 164<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"> 165 Fixed bugs: 166 <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "> 167<li class="listitem"> 168 <a href="https://github.com/boostorg/container/issues/127" target="_top">GitHub 169 #127: <span class="emphasis"><em>"Fix docs for static_vector::max_size() and 170 capacity()"</em></span></a>. 171 </li> 172<li class="listitem"> 173 <a href="https://github.com/boostorg/container/issues/132" target="_top">GitHub 174 #132: <span class="emphasis"><em>"flat_map::lower_bound and upper_bound have 175 wrong/misleading docs"</em></span></a>. 176 </li> 177<li class="listitem"> 178 <a href="https://github.com/boostorg/container/issues/133" target="_top">GitHub 179 #133: <span class="emphasis"><em>"basic_string move constructor with allocator 180 argument has incorrect allocator check"</em></span></a>. 181 </li> 182</ul></div> 183 </li></ul></div> 184</div> 185<div class="section"> 186<div class="titlepage"><div><div><h3 class="title"> 187<a name="container.release_notes.release_notes_boost_1_71_00"></a><a class="link" href="release_notes.html#container.release_notes.release_notes_boost_1_71_00" title="Boost 1.71 Release">Boost 188 1.71 Release</a> 189</h3></div></div></div> 190<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> 191<li class="listitem"> 192 Fixed bugs: 193 <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "> 194<li class="listitem"> 195 <a href="https://github.com/boostorg/container/pull/47" target="_top">GitHub 196 #47: <span class="emphasis"><em>"added alignment specification for small_vector"</em></span></a>. 197 </li> 198<li class="listitem"> 199 <a href="https://github.com/boostorg/container/issues/88" target="_top">GitHub 200 #88: <span class="emphasis"><em>"Implement C++17 MoveAssignable requirements 201 for self-move assignments"</em></span></a>. 202 </li> 203<li class="listitem"> 204 <a href="https://github.com/boostorg/container/issues/107" target="_top">GitHub 205 #107: <span class="emphasis"><em>"Alignment ignored in resource_adaptor"</em></span></a>. 206 </li> 207<li class="listitem"> 208 <a href="https://github.com/boostorg/container/pull/109" target="_top">GitHub 209 #109: <span class="emphasis"><em>"Get rid of integer overflow in copy_move_algo.hpp 210 (-fsanitize=integer)"</em></span></a>. 211 </li> 212<li class="listitem"> 213 <a href="https://github.com/boostorg/container/pull/110" target="_top">GitHub 214 #110: <span class="emphasis"><em>"Avoid gcc 9 deprecated copy warnings in new_allocator.hpp"</em></span></a>. 215 </li> 216<li class="listitem"> 217 <a href="https://github.com/boostorg/container/issues/112" target="_top">GitHub 218 #112: <span class="emphasis"><em>"vector::resize() compilation error with msvc-10..12: 219 data is not a member of boost::detail::aligned_storage"</em></span></a>. 220 </li> 221<li class="listitem"> 222 <a href="https://github.com/boostorg/container/issues/114" target="_top">GitHub 223 #114: <span class="emphasis"><em>"Fix small_vector noexcept specification"</em></span></a>. 224 </li> 225<li class="listitem"> 226 <a href="https://github.com/boostorg/container/issues/116" target="_top">GitHub 227 #116: <span class="emphasis"><em>"MSVC + boost 1.70 compilation error when 228 windows.h is already included (detail/thread_mutex.hpp)"</em></span></a>. 229 </li> 230<li class="listitem"> 231 <a href="https://github.com/boostorg/container/issues/117" target="_top">GitHub 232 #117: <span class="emphasis"><em>"flat_map/map::insert_or_assign with hint 233 has wrong return types"</em></span></a>. 234 </li> 235<li class="listitem"> 236 <a href="https://github.com/boostorg/container/issues/118" target="_top">GitHub 237 #118: <span class="emphasis"><em>"Non-unique inplace_set_difference used in 238 in flat_tree_merge_unique and iterator invalidation in insert_unique"</em></span></a>. 239 </li> 240<li class="listitem"> 241 <a href="https://github.com/boostorg/container/issues/122" target="_top">GitHub 242 #122: <span class="emphasis"><em>"Fix has_trivial_destructor_after_move"</em></span></a>. 243 </li> 244<li class="listitem"> 245 <a href="https://github.com/boostorg/container/issues/123" target="_top">GitHub 246 #123: <span class="emphasis"><em>"With heterogeneous lookup, <code class="computeroutput"><span class="identifier">equal_range</span></code> can result in a range 247 with length greater than 1"</em></span></a>. 248 </li> 249</ul></div> 250 </li> 251<li class="listitem"> 252 <code class="computeroutput"><a class="link" href="../boost/container/deque.html" title="Class template deque">deque</a></code> can now have 253 options, using <code class="computeroutput"><a class="link" href="../boost/container/deque_options.html" title="Struct template deque_options">deque_options</a></code>. 254 The block size/bytes can be be specified. 255 </li> 256<li class="listitem"> 257 <code class="computeroutput"><a class="link" href="../boost/container/static_vector.html" title="Class template static_vector">static_vector</a></code> 258 can now have options, using <code class="computeroutput"><a class="link" href="../boost/container/static_vector_options.html" title="Struct template static_vector_options">static_vector_options</a></code>. 259 Alignment and throwing behaviour can be be specified. 260 </li> 261<li class="listitem"> 262 <code class="computeroutput"><a class="link" href="../boost/container/small_vector.html" title="Class template small_vector">small_vector</a></code> 263 can now have options, using <code class="computeroutput"><a class="link" href="../boost/container/small_vector_options.html" title="Struct template small_vector_options">small_vector_options</a></code>. 264 Alignment and growth factor can be be specified. 265 </li> 266</ul></div> 267</div> 268<div class="section"> 269<div class="titlepage"><div><div><h3 class="title"> 270<a name="container.release_notes.release_notes_boost_1_70_00"></a><a class="link" href="release_notes.html#container.release_notes.release_notes_boost_1_70_00" title="Boost 1.70 Release">Boost 271 1.70 Release</a> 272</h3></div></div></div> 273<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> 274<li class="listitem"> 275 Removed support for already deprecated GCC < 4.3 and MSVC < 9.0 276 (Visual 2008) compilers. 277 </li> 278<li class="listitem"> 279 Default allocator parameter changed form <code class="computeroutput"><span class="identifier">new_allocator</span><span class="special"><</span><span class="identifier">T</span><span class="special">></span></code> to <code class="computeroutput"><span class="keyword">void</span></code> 280 to reduce symbol lenghts. 281 </li> 282<li class="listitem"> 283 Fixed bugs: 284 <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "> 285<li class="listitem"> 286 <a href="https://github.com/boostorg/container/pull/96" target="_top">GitHub 287 #96: <span class="emphasis"><em>"Workaround: Intel compilers do not offer CTAD 288 yet"</em></span></a>. 289 </li> 290<li class="listitem"> 291 <a href="https://github.com/boostorg/container/issues/97" target="_top">GitHub 292 #97: <span class="emphasis"><em>"buffer overflow in boost::container::flat_map 293 on FreeBSD"</em></span></a>. 294 </li> 295<li class="listitem"> 296 <a href="https://github.com/boostorg/container/issues/98" target="_top">GitHub 297 #98: <span class="emphasis"><em>"flat_map: insert_or_assign does not work with 298 hint"</em></span></a>. 299 </li> 300<li class="listitem"> 301 <a href="https://github.com/boostorg/container/issues/100" target="_top">GitHub 302 #100: <span class="emphasis"><em>"Compile error on Green Hills: container_detail::flat_tree 303 has no member insert"</em></span></a>. 304 </li> 305<li class="listitem"> 306 <a href="https://github.com/boostorg/container/pull/103" target="_top">GitHub 307 #103: <span class="emphasis"><em>"Fix deallocating never-allocated storage 308 in vector.merge()"</em></span></a>. 309 </li> 310<li class="listitem"> 311 <a href="https://github.com/boostorg/container/pull/104" target="_top">GitHub 312 #104: <span class="emphasis"><em>"Fix -Wmissing-noreturn clang warnings"</em></span></a>. 313 </li> 314<li class="listitem"> 315 <a href="https://github.com/boostorg/container/pull/105" target="_top">GitHub 316 #105: <span class="emphasis"><em>"Fix gcc -Wdeprecated-copy"</em></span></a>. 317 </li> 318<li class="listitem"> 319 <a href="https://github.com/boostorg/container/issues/111" target="_top">GitHub 320 #111: <span class="emphasis"><em>"container::vector of interprocess::offset_ptrs 321 to variants holding incomplete type"</em></span></a>. 322 </li> 323</ul></div> 324 </li> 325</ul></div> 326</div> 327<div class="section"> 328<div class="titlepage"><div><div><h3 class="title"> 329<a name="container.release_notes.release_notes_boost_1_69_00"></a><a class="link" href="release_notes.html#container.release_notes.release_notes_boost_1_69_00" title="Boost 1.69 Release">Boost 330 1.69 Release</a> 331</h3></div></div></div> 332<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> 333<li class="listitem"> 334 Deprecated GCC < 4.3 and MSVC < 9.0 (Visual 2008) compilers. 335 </li> 336<li class="listitem"> 337 Implemented C++20 <code class="computeroutput"><span class="identifier">contains</span><span class="special">()</span></code> for associative containers as specified 338 in <a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p0458r2.html" target="_top">P0458R2: 339 Checking for Existence of an Element in Associative Containers</a>. 340 </li> 341<li class="listitem"> 342 Fixed serious bug in heterogeneous lookup functions (is_transparent was 343 broken). 344 </li> 345<li class="listitem"> 346 Fixed bugs: 347 <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "> 348<li class="listitem"> 349 <a href="https://github.com/boostorg/container/issues/77" target="_top">GitHub 350 #77: <span class="emphasis"><em>"warning: 'sbrk' is deprecated"</em></span></a>. 351 </li> 352<li class="listitem"> 353 <a href="https://github.com/boostorg/container/issues/79" target="_top">GitHub 354 #79: <span class="emphasis"><em>"Mark small_vector move operations noexcept"</em></span></a>. 355 </li> 356<li class="listitem"> 357 <a href="https://github.com/boostorg/container/issues/80" target="_top">GitHub 358 #80: <span class="emphasis"><em>"flat_map deduction guides are ambiguous"</em></span></a>. 359 </li> 360<li class="listitem"> 361 <a href="https://github.com/boostorg/container/issues/81" target="_top">GitHub 362 #81: <span class="emphasis"><em>"Vector with custom allocator does not support 363 value types with operator&"</em></span></a>. 364 </li> 365<li class="listitem"> 366 <a href="https://github.com/boostorg/container/issues/82" target="_top">GitHub 367 #82: <span class="emphasis"><em>"Function definition in header file"</em></span></a>. 368 </li> 369<li class="listitem"> 370 <a href="https://github.com/boostorg/container/issues/83" target="_top">GitHub 371 #83: <span class="emphasis"><em>"Iterator zero incrementing leads to assert 372 on empty vector"</em></span></a>. 373 </li> 374<li class="listitem"> 375 <a href="https://github.com/boostorg/container/pull/84" target="_top">GitHub 376 #84: <span class="emphasis"><em>"Allow vector to be assigned to itself"</em></span></a>. 377 </li> 378<li class="listitem"> 379 <a href="https://github.com/boostorg/container/pull/85" target="_top">GitHub 380 #85: <span class="emphasis"><em>"container: misc-typos"</em></span></a>. 381 </li> 382<li class="listitem"> 383 <a href="https://github.com/boostorg/container/pull/86" target="_top">GitHub 384 #86: <span class="emphasis"><em>"Add missing warning re-enabling include"</em></span></a>. 385 </li> 386<li class="listitem"> 387 <a href="https://github.com/boostorg/container/issues/89" target="_top">GitHub 388 #89: <span class="emphasis"><em>"UBSAN failures detected in preflight CI PR"</em></span></a>. 389 </li> 390<li class="listitem"> 391 <a href="https://github.com/boostorg/container/issues/90" target="_top">GitHub 392 #90: <span class="emphasis"><em>"Build fails on clang-5 with libstdc++7-dev 393 (C++17 issue)"</em></span></a>. 394 </li> 395<li class="listitem"> 396 <a href="https://github.com/boostorg/container/issues/93" target="_top">GitHub 397 #93: <span class="emphasis"><em>"vector::erase memory leak"</em></span></a>. 398 </li> 399</ul></div> 400 </li> 401</ul></div> 402</div> 403<div class="section"> 404<div class="titlepage"><div><div><h3 class="title"> 405<a name="container.release_notes.release_notes_boost_1_68_00"></a><a class="link" href="release_notes.html#container.release_notes.release_notes_boost_1_68_00" title="Boost 1.68 Release">Boost 406 1.68 Release</a> 407</h3></div></div></div> 408<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> 409<li class="listitem"> 410 Improved correctness of <code class="computeroutput"><a class="link" href="../boost/container/adaptive_pool.html" title="Class template adaptive_pool">adaptive_pool</a></code> 411 and many parameters are now compile-time constants instead of runtime 412 constants. 413 </li> 414<li class="listitem"> 415 Implemented C++14's heterogeneous lookup functions for <code class="computeroutput"><span class="special">[</span><span class="identifier">multi</span><span class="special">]</span><span class="identifier">map</span><span class="special">/[</span><span class="identifier">multi</span><span class="special">]</span><span class="identifier">set</span><span class="special">/</span><span class="identifier">flat_</span><span class="special">[</span><span class="identifier">multi</span><span class="special">]</span><span class="identifier">map</span><span class="special">/</span><span class="identifier">flat_</span><span class="special">[</span><span class="identifier">multi</span><span class="special">]</span><span class="identifier">set</span></code>. 416 </li> 417<li class="listitem"> 418 Added <a href="https://github.com/boostorg/container/pull/71" target="_top">GitHub 419 #71: <span class="emphasis"><em>"Constructor Template Auto Deduction guides "</em></span></a>. 420 </li> 421<li class="listitem"> 422 Fixed bugs: 423 <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "> 424<li class="listitem"> 425 <a href="https://svn.boost.org/trac/boost/ticket/13533" target="_top">Trac 426 #13533: <span class="emphasis"><em>"Boost vector resize causes assert(false)"</em></span></a>. 427 </li> 428<li class="listitem"> 429 <a href="https://github.com/boostorg/container/issues/73" target="_top">GitHub 430 #73: <span class="emphasis"><em>"triviality of pair"</em></span></a>. 431 </li> 432<li class="listitem"> 433 <a href="https://github.com/boostorg/container/issues/74" target="_top">GitHub 434 #74: <span class="emphasis"><em>"vector assignment not using memcpy"</em></span></a>. 435 </li> 436<li class="listitem"> 437 <a href="https://github.com/boostorg/container/issues/75" target="_top">GitHub 438 #75: <span class="emphasis"><em>"flat_set: Heap overflow"</em></span></a>. 439 </li> 440<li class="listitem"> 441 <a href="https://github.com/boostorg/container/issues/76" target="_top">GitHub 442 #76: <span class="emphasis"><em>"flat_set: undefined behaviour on empty range"</em></span></a>. 443 </li> 444<li class="listitem"> 445 Fixed race condition bug in <code class="computeroutput"><a class="link" href="../boost/container/pmr/unsynchr_idm45641212301584.html" title="Class unsynchronized_pool_resource">unsynchronized_pool_resource</a></code> 446 found by Arthur O'Dowyer in his blog post <a href="https://quuxplusone.github.io/blog/2018/06/05/libcpp-memory-resource/" target="_top"><memory_resource> 447 for libc++</a> 448 </li> 449</ul></div> 450 </li> 451<li class="listitem"> 452 Implemented proposed resolution for <a href="https://cplusplus.github.io/LWG/issue3120" target="_top"><span class="emphasis"><em>"LWG 453 3120 Unclear behavior of monotonic_buffer_resource::release()"</em></span></a>. 454 After <code class="computeroutput"><span class="identifier">release</span><span class="special">()</span></code> 455 the original buffer is recovered for the next allocation. 456 </li> 457</ul></div> 458</div> 459<div class="section"> 460<div class="titlepage"><div><div><h3 class="title"> 461<a name="container.release_notes.release_notes_boost_1_67_00"></a><a class="link" href="release_notes.html#container.release_notes.release_notes_boost_1_67_00" title="Boost 1.67 Release">Boost 462 1.67 Release</a> 463</h3></div></div></div> 464<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> 465<li class="listitem"> 466 <span class="emphasis"><em>vector</em></span> can now have options, using <code class="computeroutput"><a class="link" href="../boost/container/vector_options.html" title="Struct template vector_options">vector_options</a></code>. 467 The growth factor and the stored size type can be specified. 468 </li> 469<li class="listitem"> 470 Improved range insertion in <span class="emphasis"><em>flat_[multi</em></span>map/set] 471 containers overall complexity is reduced to O(NlogN). 472 </li> 473<li class="listitem"> 474 Fixed bugs: 475 <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "> 476<li class="listitem"> 477 <a href="https://github.com/boostorg/container/pull/61" target="_top">GitHub 478 #61: <span class="emphasis"><em>"Compile problems on Android ndk r16 beta 1"</em></span></a>. 479 </li> 480<li class="listitem"> 481 <a href="https://github.com/boostorg/container/pull/64" target="_top">GitHub 482 #64: <span class="emphasis"><em>"Fix splice for slist"</em></span></a>. 483 </li> 484<li class="listitem"> 485 <a href="https://github.com/boostorg/container/issues/58" target="_top">GitHub 486 #65: <span class="emphasis"><em>"<code class="computeroutput"><span class="identifier">pmr</span><span class="special">::</span><span class="identifier">monotonic_buffer_resource</span><span class="special">::</span><span class="identifier">allocate</span><span class="special">()</span></code> can return a pointer to freed 487 memory after <code class="computeroutput"><span class="identifier">release</span><span class="special">()</span></code> is called"</em></span></a>. 488 </li> 489<li class="listitem"> 490 <a href="https://svn.boost.org/trac/boost/ticket/13500" target="_top">Trac 491 #13500: <span class="emphasis"><em>"Memory leak when using erase on string 492 vectors"</em></span></a>. 493 </li> 494</ul></div> 495 </li> 496</ul></div> 497</div> 498<div class="section"> 499<div class="titlepage"><div><div><h3 class="title"> 500<a name="container.release_notes.release_notes_boost_1_66_00"></a><a class="link" href="release_notes.html#container.release_notes.release_notes_boost_1_66_00" title="Boost 1.66 Release">Boost 501 1.66 Release</a> 502</h3></div></div></div> 503<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> 504<li class="listitem"> 505 <span class="emphasis"><em>flat_[multi</em></span>map/set] can now work as container adaptors, 506 as proposed in <a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2017/p0429r1.pdf" target="_top">P0429R1</a>. 507 The allocator argument is checked for <span class="emphasis"><em>size()</em></span> and 508 <span class="emphasis"><em>empty()</em></span> members. If so, the argument is interpreted 509 as the required underlying container. This means that <span class="emphasis"><em>static_vector</em></span>, 510 <span class="emphasis"><em>stable_vector</em></span> and <span class="emphasis"><em>small_vector</em></span> 511 can be used now with flat associative containers. 512 </li> 513<li class="listitem"> 514 Fixed bugs: 515 <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "> 516<li class="listitem"> 517 <a href="https://github.com/boostorg/container/pull/54" target="_top">GitHub 518 #54: <span class="emphasis"><em>"no sbrk() in VxWorks, configure dlmalloc to 519 use only mmap"</em></span></a>. 520 </li> 521<li class="listitem"> 522 <a href="https://github.com/boostorg/container/issues/58" target="_top">GitHub 523 #58: <span class="emphasis"><em>"Comparing strings does not compile in gcc 524 7+ in C++17 mode"</em></span></a>. 525 </li> 526<li class="listitem"> 527 <a href="https://github.com/boostorg/container/issues/59" target="_top">GitHub 528 #59: <span class="emphasis"><em>"basic_string::npos is missing its definition"</em></span></a>. 529 </li> 530</ul></div> 531 </li> 532</ul></div> 533</div> 534<div class="section"> 535<div class="titlepage"><div><div><h3 class="title"> 536<a name="container.release_notes.release_notes_boost_1_65_00"></a><a class="link" href="release_notes.html#container.release_notes.release_notes_boost_1_65_00" title="Boost 1.65 Release">Boost 537 1.65 Release</a> 538</h3></div></div></div> 539<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> 540<li class="listitem"> 541 Implemented <code class="computeroutput"><span class="identifier">extract_sequence</span></code>, 542 <code class="computeroutput"><span class="identifier">adopt_sequence</span></code> functions 543 for flat_[multi]map/set associative containers. 544 </li> 545<li class="listitem"> 546 Fixed bugs: 547 <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "> 548<li class="listitem"> 549 <a href="https://github.com/boostorg/container/pull/48" target="_top">GitHub 550 #48: <span class="emphasis"><em>"Replace deprecated/removed C++98 binders"</em></span></a>. 551 </li> 552<li class="listitem"> 553 <a href="https://github.com/boostorg/container/pull/49" target="_top">GitHub 554 #49: <span class="emphasis"><em>"Remove useless allocator copy in map"</em></span></a>. 555 </li> 556<li class="listitem"> 557 <a href="https://github.com/boostorg/container/pull/50" target="_top">GitHub 558 #50: <span class="emphasis"><em>"Fixed bug Trac #13038"</em></span></a>. 559 </li> 560<li class="listitem"> 561 <a href="https://github.com/boostorg/container/pull/51" target="_top">GitHub 562 #51: <span class="emphasis"><em>"Fix integer rollover that triggers clang ubsan 563 when U is unsigned"</em></span></a>. 564 </li> 565</ul></div> 566 </li> 567</ul></div> 568</div> 569<div class="section"> 570<div class="titlepage"><div><div><h3 class="title"> 571<a name="container.release_notes.release_notes_boost_1_64_00"></a><a class="link" href="release_notes.html#container.release_notes.release_notes_boost_1_64_00" title="Boost 1.64 Release">Boost 572 1.64 Release</a> 573</h3></div></div></div> 574<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"> 575 Fixed bugs: 576 <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "> 577<li class="listitem"> 578 <a href="https://svn.boost.org/trac/boost/ticket/11333" target="_top">Trac 579 #11333: <span class="emphasis"><em>"boost::basic_string_ref should interop 580 with boost::container::basic_string"</em></span></a>. 581 </li> 582<li class="listitem"> 583 <a href="https://svn.boost.org/trac/boost/ticket/12749" target="_top">Trac 584 #12749: <span class="emphasis"><em>"container::pmr::polymorphic_allocator compilation 585 error"</em></span></a>. 586 </li> 587<li class="listitem"> 588 <a href="https://svn.boost.org/trac/boost/ticket/12915" target="_top">Trac 589 #12915: <span class="emphasis"><em>"Buffer overflow in boost::container::vector 590 (affects flat_set)"</em></span></a>. 591 </li> 592<li class="listitem"> 593 <a href="https://github.com/boostorg/container/pull/45" target="_top">GitHub 594 #45: <span class="emphasis"><em>"emplace_back must return reference to back(), 595 not to *end()"</em></span></a>. 596 </li> 597<li class="listitem"> 598 <a href="https://github.com/boostorg/container/pull/46" target="_top">GitHub 599 #46: <span class="emphasis"><em>"Fix use of propagate_on_container_swap"</em></span></a>. 600 </li> 601</ul></div> 602 </li></ul></div> 603</div> 604<div class="section"> 605<div class="titlepage"><div><div><h3 class="title"> 606<a name="container.release_notes.release_notes_boost_1_63_00"></a><a class="link" href="release_notes.html#container.release_notes.release_notes_boost_1_63_00" title="Boost 1.63 Release">Boost 607 1.63 Release</a> 608</h3></div></div></div> 609<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"> 610 Fixed bugs: 611 <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "> 612<li class="listitem"> 613 <a href="https://svn.boost.org/trac/boost/ticket/12534" target="_top">Trac 614 #12534: <span class="emphasis"><em>"flat_map fails to compile if included after 615 type_traits is instantiated under gcc"</em></span></a>. 616 </li> 617<li class="listitem"> 618 <a href="https://svn.boost.org/trac/boost/ticket/12577" target="_top">Trac 619 #12577: <span class="emphasis"><em>"Null reference in pair.hpp triggers runtime 620 warning with -fsanitize=undefined"</em></span></a>. 621 </li> 622<li class="listitem"> 623 <a href="https://github.com/boostorg/container/pull/41" target="_top">GitHub 624 #40: <span class="emphasis"><em>Fix parameter types in copy_move_algo.hpp: iterator_traits::difference_type 625 -> allocator_traits::size_type</em></span></a>. 626 </li> 627<li class="listitem"> 628 <a href="https://github.com/boostorg/container/pull/41" target="_top">GitHub 629 #41: <span class="emphasis"><em>Avoid -Wunreachable-code in do_allocate()</em></span></a>. 630 </li> 631</ul></div> 632 </li></ul></div> 633</div> 634<div class="section"> 635<div class="titlepage"><div><div><h3 class="title"> 636<a name="container.release_notes.release_notes_boost_1_62_00"></a><a class="link" href="release_notes.html#container.release_notes.release_notes_boost_1_62_00" title="Boost 1.62 Release">Boost 637 1.62 Release</a> 638</h3></div></div></div> 639<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> 640<li class="listitem"> 641 Fixed bugs: 642 <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "> 643<li class="listitem"> 644 <a href="https://svn.boost.org/trac/boost/ticket/9481" target="_top">Trac 645 #9481: <span class="emphasis"><em>"Minor comment typo in Boost.Container"</em></span></a>. 646 </li> 647<li class="listitem"> 648 <a href="https://svn.boost.org/trac/boost/ticket/9689" target="_top">Trac 649 #9689: <span class="emphasis"><em>"Add piecewise_construct to boost::container"</em></span></a>. 650 </li> 651<li class="listitem"> 652 <a href="https://svn.boost.org/trac/boost/ticket/11170" target="_top">Trac 653 #11170: <span class="emphasis"><em>"Doc slip for index_of"</em></span></a>. 654 </li> 655<li class="listitem"> 656 <a href="https://svn.boost.org/trac/boost/ticket/11802" target="_top">Trac 657 #11802: <span class="emphasis"><em>"Incorrect ordering after using insert() 658 with ordered_range_t on a flat_multiset with a non-default sort 659 order"</em></span></a>. 660 </li> 661<li class="listitem"> 662 <a href="https://svn.boost.org/trac/boost/ticket/12117" target="_top">Trac 663 #12117: <span class="emphasis"><em>"flat_set constructor with ordered_unique_range"</em></span></a>. 664 </li> 665<li class="listitem"> 666 <a href="https://svn.boost.org/trac/boost/ticket/12177" target="_top">Trac 667 #12177: <span class="emphasis"><em>"vector::priv_merge uses unqualified uintptr_t"</em></span></a>. 668 </li> 669<li class="listitem"> 670 <a href="https://svn.boost.org/trac/boost/ticket/12183" target="_top">Trac 671 #12183: <span class="emphasis"><em>"GCC 6.1 thinks boost::container::string 672 violates strict aliasing"</em></span></a>. 673 </li> 674<li class="listitem"> 675 <a href="https://svn.boost.org/trac/boost/ticket/12256" target="_top">Trac 676 #12256: <span class="emphasis"><em>"set<std::pair<int,int>>::insert 677 cause compilation error in debug configuration in Visual Studio 678 2012"</em></span></a>. 679 </li> 680<li class="listitem"> 681 <a href="https://svn.boost.org/trac/boost/ticket/12273" target="_top">Trac 682 #12273: <span class="emphasis"><em>"static_vector max_size() and capacity() 683 should be constant expressions"</em></span></a>. Added 684 constant <code class="computeroutput"><span class="identifier">static_vector</span><span class="special"><>::</span><span class="identifier">static_capacity</span></code> 685 to use the configured capacity in constant expressions. 686 </li> 687<li class="listitem"> 688 <a href="https://svn.boost.org/trac/boost/ticket/12286" target="_top">Trac 689 #12286: <span class="emphasis"><em>"PMR flat_map from Boost Container does 690 not compile"</em></span></a>. 691 </li> 692<li class="listitem"> 693 <a href="https://svn.boost.org/trac/boost/ticket/12296" target="_top">Trac 694 #12296: <span class="emphasis"><em>"{deque,string} combine for a memory leak"</em></span></a>. 695 </li> 696<li class="listitem"> 697 <a href="https://svn.boost.org/trac/boost/ticket/12319" target="_top">Trac 698 #12319: <span class="emphasis"><em>"flat_set` should be nothrow move constructible"</em></span></a>. 699 </li> 700</ul></div> 701 </li> 702<li class="listitem"> 703 Revised noexcept expressions of default and move constructors in all 704 containers. 705 </li> 706<li class="listitem"> 707 Implemented C++17's <code class="computeroutput"><span class="identifier">insert_or_assign</span></code>/<code class="computeroutput"><span class="identifier">try_emplace</span></code> for <code class="computeroutput"><a class="link" href="../boost/container/map.html" title="Class template map">map</a></code> 708 and <code class="computeroutput"><a class="link" href="../boost/container/flat_map.html" title="Class template flat_map">flat_map</a></code>. 709 </li> 710<li class="listitem"> 711 Implemented C++17's <a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/p0083r3.pdf" target="_top"><span class="emphasis"><em>Splicing 712 Maps and Sets (Revision 5)</em></span></a> for <code class="computeroutput"><a class="link" href="../boost/container/map.html" title="Class template map">map</a></code>, 713 <code class="computeroutput"><a class="link" href="../boost/container/multimap.html" title="Class template multimap">multimap</a></code>, <code class="computeroutput"><a class="link" href="../boost/container/set.html" title="Class template set">set</a></code>, <code class="computeroutput"><a class="link" href="../boost/container/multiset.html" title="Class template multiset">multiset</a></code>. 714 </li> 715<li class="listitem"> 716 Implemented C++17's <a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/p0084r2.pdf" target="_top"><span class="emphasis"><em>P0084R2 717 Emplace Return Type</em></span></a> in <code class="computeroutput"><span class="identifier">deque</span></code>, 718 <code class="computeroutput"><span class="identifier">vector</span></code>, <code class="computeroutput"><span class="identifier">stable_vector</span></code>, <code class="computeroutput"><span class="identifier">small_vector</span></code>, 719 <code class="computeroutput"><span class="identifier">static_vector</span></code>, <code class="computeroutput"><span class="identifier">list</span></code> and <code class="computeroutput"><span class="identifier">slist</span></code>. 720 </li> 721</ul></div> 722</div> 723<div class="section"> 724<div class="titlepage"><div><div><h3 class="title"> 725<a name="container.release_notes.release_notes_boost_1_61_00"></a><a class="link" href="release_notes.html#container.release_notes.release_notes_boost_1_61_00" title="Boost 1.61 Release">Boost 726 1.61 Release</a> 727</h3></div></div></div> 728<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> 729<li class="listitem"> 730 <code class="computeroutput"><a class="link" href="../boost/container/small_vector.html" title="Class template small_vector">boost::container::small_vector</a></code> 731 supports more constructors and assignments. 732 </li> 733<li class="listitem"> 734 Fixed bugs: 735 <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "> 736<li class="listitem"> 737 <a href="https://svn.boost.org/trac/boost/ticket/11820" target="_top">Trac 738 #11820: <span class="emphasis"><em>"compiler error when using operator[</em></span> 739 of map"</a>]. 740 </li> 741<li class="listitem"> 742 <a href="https://svn.boost.org/trac/boost/ticket/11856" target="_top">Trac 743 #11856: <span class="emphasis"><em>"pool_resource.cpp error: declaration changes 744 meaning"</em></span></a>. 745 </li> 746<li class="listitem"> 747 <a href="https://svn.boost.org/trac/boost/ticket/11866" target="_top">Trac 748 #11866: <span class="emphasis"><em>"small_vector does not have range constructor"</em></span></a>. 749 </li> 750<li class="listitem"> 751 <a href="https://svn.boost.org/trac/boost/ticket/11867" target="_top">Trac 752 #11867: <span class="emphasis"><em>"small_vector should have constructor and 753 assignment operator taking other small_vector"</em></span></a>. 754 </li> 755<li class="listitem"> 756 <a href="https://svn.boost.org/trac/boost/ticket/11912" target="_top">Trac 757 #11912: <span class="emphasis"><em>"flat_map use of vector::priv_forward_range_insert_expand_backwards 758 may cause move with same source"</em></span></a>. 759 </li> 760<li class="listitem"> 761 <a href="https://svn.boost.org/trac/boost/ticket/11957" target="_top">Trac 762 #11957: <span class="emphasis"><em>"static_vector::max_size() is higher than 763 the capacity"</em></span></a>. 764 </li> 765<li class="listitem"> 766 <a href="https://svn.boost.org/trac/boost/ticket/12014" target="_top">Trac 767 #12014: <span class="emphasis"><em>"boost::container::set can not insert const 768 (ref) range"</em></span></a>. 769 </li> 770<li class="listitem"> 771 <a href="https://github.com/boostorg/container/pull/33" target="_top">GitHub 772 #33: <span class="emphasis"><em>Make sure std::string constructor is available</em></span></a>. 773 </li> 774</ul></div> 775 </li> 776</ul></div> 777</div> 778<div class="section"> 779<div class="titlepage"><div><div><h3 class="title"> 780<a name="container.release_notes.release_notes_boost_1_60_00"></a><a class="link" href="release_notes.html#container.release_notes.release_notes_boost_1_60_00" title="Boost 1.60 Release">Boost 781 1.60 Release</a> 782</h3></div></div></div> 783<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> 784<li class="listitem"> 785 Implemented <a class="link" href="cpp_conformance.html#container.cpp_conformance.polymorphic_memory_resources" title="Polymorphic Memory Resources">Polymorphic 786 Memory Resources</a>. 787 </li> 788<li class="listitem"> 789 Add more BOOST_ASSERT checks to test preconditions in some operations 790 (like <code class="computeroutput"><span class="identifier">pop_back</span></code>, <code class="computeroutput"><span class="identifier">pop_front</span></code>, <code class="computeroutput"><span class="identifier">back</span></code>, 791 <code class="computeroutput"><span class="identifier">front</span></code>, etc.) 792 </li> 793<li class="listitem"> 794 Added C++11 <code class="computeroutput"><span class="identifier">back</span></code>/<code class="computeroutput"><span class="identifier">front</span></code> operations to <code class="computeroutput"><a class="link" href="../boost/container/basic_string.html" title="Class template basic_string">basic_string</a></code>. 795 </li> 796<li class="listitem"> 797 Fixed bugs: 798 <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "> 799<li class="listitem"> 800 <a href="https://svn.boost.org/trac/boost/ticket/11627" target="_top">Trac 801 #11627: <span class="emphasis"><em>"small_vector<T,n>::swap() appears 802 to be broken"</em></span></a>. 803 </li> 804<li class="listitem"> 805 <a href="https://svn.boost.org/trac/boost/ticket/11628" target="_top">Trac 806 #11628: <span class="emphasis"><em>"small_vector<int,n> iterates over 807 elements in destructor"</em></span></a>. 808 </li> 809<li class="listitem"> 810 <a href="https://svn.boost.org/trac/boost/ticket/11697" target="_top">Trac 811 #11697: <span class="emphasis"><em>"Wrong initialization order in tuple copy-constructor"</em></span></a>. 812 </li> 813<li class="listitem"> 814 <a href="https://svn.boost.org/trac/boost/ticket/11698" target="_top">Trac 815 #11698: <span class="emphasis"><em>"Missing return statement in static_storage_allocator"</em></span></a>. 816 </li> 817<li class="listitem"> 818 <a href="https://github.com/boostorg/container/pull/29" target="_top">GitHub 819 #29: <span class="emphasis"><em>Doc fixes for flap_map complexity requirements</em></span></a>. 820 </li> 821<li class="listitem"> 822 <a href="https://github.com/boostorg/container/pull/31" target="_top">GitHub 823 #31: <span class="emphasis"><em>DL_SIZE_IMPL also dereference addr</em></span></a>. 824 </li> 825</ul></div> 826 </li> 827</ul></div> 828</div> 829<div class="section"> 830<div class="titlepage"><div><div><h3 class="title"> 831<a name="container.release_notes.release_notes_boost_1_59_00"></a><a class="link" href="release_notes.html#container.release_notes.release_notes_boost_1_59_00" title="Boost 1.59 Release">Boost 832 1.59 Release</a> 833</h3></div></div></div> 834<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> 835<li class="listitem"> 836 <a href="https://github.com/boostorg/container/pull/26" target="_top">GitHub #26: 837 <span class="emphasis"><em>Fix bug in stable_vector::capacity()</em></span></a>. Thanks 838 to timsong-cpp/Arindam Mukerjee. 839 </li> 840<li class="listitem"> 841 <a href="https://github.com/boostorg/container/pull/27" target="_top">GitHub #27: 842 <span class="emphasis"><em>fix stable_vector's index_of's doxygen comment</em></span></a>. 843 Thanks to kariya-mitsuru. 844 </li> 845<li class="listitem"> 846 <a href="https://svn.boost.org/trac/boost/ticket/11380" target="_top">Trac #11380: 847 <span class="emphasis"><em>"Container library std forward declarations incorrect 848 in std_fwd.hpp on libc++ with gcc"</em></span></a>. 849 </li> 850<li class="listitem"> 851 <a href="https://svn.boost.org/trac/boost/ticket/11388" target="_top">Trac #11388: 852 <span class="emphasis"><em>"boost::container::list::emplace_back broken on Visual 853 Studio 2010"</em></span></a>. 854 </li> 855<li class="listitem"> 856 <a href="https://svn.boost.org/trac/boost/ticket/11339" target="_top">Trac #11339: 857 <span class="emphasis"><em>"VC12 LNK2005 error with boost::container::adaptive_pool"</em></span></a>. 858 </li> 859</ul></div> 860</div> 861<div class="section"> 862<div class="titlepage"><div><div><h3 class="title"> 863<a name="container.release_notes.release_notes_boost_1_58_00"></a><a class="link" href="release_notes.html#container.release_notes.release_notes_boost_1_58_00" title="Boost 1.58 Release">Boost 864 1.58 Release</a> 865</h3></div></div></div> 866<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> 867<li class="listitem"> 868 Experimental <code class="computeroutput"><a class="link" href="../boost/container/small_vector.html" title="Class template small_vector">small_vector</a></code> 869 container. 870 </li> 871<li class="listitem"> 872 Massive dependency reorganization. Now <span class="bold"><strong>Boost.Container</strong></span> 873 depends on very basic utilities like Boost.Core and <span class="bold"><strong>Boost.Intrusive</strong></span>. 874 Preprocessed code size have decreased considerably and compilation times 875 have improved. 876 </li> 877<li class="listitem"> 878 Added <code class="computeroutput"><span class="identifier">nth</span></code> and <code class="computeroutput"><span class="identifier">index_of</span></code> functions to containers with 879 random-access iterators (except <code class="computeroutput"><span class="identifier">basic_string</span></code>). 880 </li> 881<li class="listitem"> 882 Added C++17's <code class="computeroutput"><span class="identifier">allocator_traits</span><span class="special"><</span><span class="identifier">Allocator</span><span class="special">>::</span><span class="identifier">is_always_equal</span></code>. 883 </li> 884<li class="listitem"> 885 Updated containers to implement new constructors as specified in <a href="http://www.open-std.org/jtc1/sc22/wg21/docs/lwg-defects.html#2210" target="_top">2210. 886 Missing allocator-extended constructor for allocator-aware containers</a>. 887 </li> 888<li class="listitem"> 889 Fixed bugs: 890 <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "> 891<li class="listitem"> 892 <a href="https://svn.boost.org/trac/boost/ticket/9931" target="_top">Trac 893 #9931: <span class="emphasis"><em>"flat_map::insert(ordered_unique_range_t...) 894 fails with move_iterators"</em></span></a> (reopened). 895 </li> 896<li class="listitem"> 897 <a href="https://svn.boost.org/trac/boost/ticket/11076" target="_top">Trac 898 #11076: <span class="emphasis"><em>"Unqualified calls to memmove/memcpy in 899 container/detail/copy_move_algo.hpp"</em></span></a>. 900 </li> 901<li class="listitem"> 902 <a href="https://svn.boost.org/trac/boost/ticket/10790" target="_top">Trac 903 #10790 (<span class="emphasis"><em>"long long errors from container"</em></span>)</a>. 904 </li> 905<li class="listitem"> 906 <a href="https://svn.boost.org/trac/boost/ticket/10808" target="_top">Trac 907 #10808 (<span class="emphasis"><em>"compare equal operator of vector is broken"</em></span>)</a>. 908 </li> 909<li class="listitem"> 910 <a href="https://svn.boost.org/trac/boost/ticket/10930" target="_top">Trac 911 #10930 (<span class="emphasis"><em>"container std_fwd.hpp neglects custom std 912 namespaces"</em></span>)</a>. 913 </li> 914<li class="listitem"> 915 <a href="https://svn.boost.org/trac/boost/ticket/11139" target="_top">Trac 916 #11139 (<span class="emphasis"><em>"boost::container::vector<std::shared_ptr<const 917 T>...>::const_iterator allows changing dereferenced elements"</em></span>)</a>. 918 </li> 919</ul></div> 920 </li> 921<li class="listitem"> 922 <span class="bold"><strong>Source Breaking</strong></span>: <code class="computeroutput"><a class="link" href="../boost/container/scoped_allocator_adaptor.html" title="Class template scoped_allocator_adaptor">scoped_allocator_adaptor</a></code>'s 923 <code class="computeroutput"><span class="identifier">propagate_on_container_copy_assignment</span></code>, 924 <code class="computeroutput"><span class="identifier">propagate_on_container_move_assignment</span></code> 925 and <code class="computeroutput"><span class="identifier">propagate_on_container_swap</span></code> 926 are no longer <code class="computeroutput"><span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">integral_constant</span><span class="special"><</span><span class="keyword">bool</span><span class="special">,</span> <span class="keyword">true</span><span class="special">/</span><span class="keyword">false</span><span class="special">></span></code> types. The dependency reorganization 927 needed to break with those classes to avoid MPL dependencies, and interoperability 928 with <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">integral_constant</span></code> was not guaranteed. 929 Code assumming <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">true_type</span><span class="special">/</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">false_type</span></code> 930 on this will not compile. As a workaround, use the guaranteed internal 931 <code class="computeroutput"><span class="special">::</span><span class="identifier">value</span></code> 932 constant: <code class="computeroutput"><span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">integral_constant</span><span class="special"><</span><span class="keyword">bool</span><span class="special">,</span> <span class="identifier">scoped_allocator_adaptor</span><span class="special"><</span><span class="identifier">Allocator</span><span class="special">>::</span><span class="identifier">propagate_on_container_move_assignment</span><span class="special">::</span><span class="identifier">value</span><span class="special">></span></code>. 933 </li> 934</ul></div> 935</div> 936<div class="section"> 937<div class="titlepage"><div><div><h3 class="title"> 938<a name="container.release_notes.release_notes_boost_1_57_00"></a><a class="link" href="release_notes.html#container.release_notes.release_notes_boost_1_57_00" title="Boost 1.57 Release">Boost 939 1.57 Release</a> 940</h3></div></div></div> 941<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> 942<li class="listitem"> 943 Added support for <code class="computeroutput"><span class="identifier">initializer_list</span></code>. 944 Contributed by Robert Matusewicz. 945 </li> 946<li class="listitem"> 947 Fixed double destruction bugs in vector and backward expansion capable 948 allocators. 949 </li> 950<li class="listitem"> 951 Fixed bugs: 952 <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "> 953<li class="listitem"> 954 <a href="https://svn.boost.org/trac/boost/ticket/10263" target="_top">Trac 955 #10263 (<span class="emphasis"><em>"AIX 6.1 bug with sched_yield() function 956 out of scope"</em></span>)</a>. 957 </li> 958<li class="listitem"> 959 <a href="https://github.com/boostorg/container/pull/16" target="_top">GitHub 960 #16: <span class="emphasis"><em>Fix iterators of incomplete type containers</em></span></a>. 961 Thanks to Mikael Persson. 962 </li> 963</ul></div> 964 </li> 965</ul></div> 966</div> 967<div class="section"> 968<div class="titlepage"><div><div><h3 class="title"> 969<a name="container.release_notes.release_notes_boost_1_56_00"></a><a class="link" href="release_notes.html#container.release_notes.release_notes_boost_1_56_00" title="Boost 1.56 Release">Boost 970 1.56 Release</a> 971</h3></div></div></div> 972<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> 973<li class="listitem"> 974 Added DlMalloc-based <a class="link" href="extended_allocators.html" title="Extended functionality: Extended allocators">Extended 975 Allocators</a>. 976 </li> 977<li class="listitem"> 978 <a class="link" href="configurable_containers.html#container.configurable_containers.configurable_tree_based_associative_containers" title="Configurable tree-based associative ordered containers">Improved 979 configurability</a> of tree-based ordered associative containers. 980 AVL, Scapegoat and Splay trees are now available to implement <code class="computeroutput"><a class="link" href="../boost/container/set.html" title="Class template set">set</a></code>, <code class="computeroutput"><a class="link" href="../boost/container/multiset.html" title="Class template multiset">multiset</a></code>, 981 <code class="computeroutput"><a class="link" href="../boost/container/map.html" title="Class template map">map</a></code> and <code class="computeroutput"><a class="link" href="../boost/container/multimap.html" title="Class template multimap">multimap</a></code>. 982 </li> 983<li class="listitem"> 984 Fixed bugs: 985 <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "> 986<li class="listitem"> 987 <a href="https://svn.boost.org/trac/boost/ticket/9338" target="_top">#9338: 988 <span class="emphasis"><em>"VS2005 compiler errors in swap() definition after 989 including container/memory_util.hpp"</em></span></a>. 990 </li> 991<li class="listitem"> 992 <a href="https://svn.boost.org/trac/boost/ticket/9637" target="_top">#9637: 993 <span class="emphasis"><em>"Boost.Container vector::resize() performance issue"</em></span></a>. 994 </li> 995<li class="listitem"> 996 <a href="https://svn.boost.org/trac/boost/ticket/9648" target="_top">#9648: 997 <span class="emphasis"><em>"string construction optimization - char_traits::copy 998 could be used ..."</em></span></a>. 999 </li> 1000<li class="listitem"> 1001 <a href="https://svn.boost.org/trac/boost/ticket/9801" target="_top">#9801: 1002 <span class="emphasis"><em>"I can no longer create and iterator_range from 1003 a stable_vector"</em></span></a>. 1004 </li> 1005<li class="listitem"> 1006 <a href="https://svn.boost.org/trac/boost/ticket/9915" target="_top">#9915: 1007 <span class="emphasis"><em>"Documentation issues regarding vector constructors 1008 and resize methods - value/default initialization"</em></span></a>. 1009 </li> 1010<li class="listitem"> 1011 <a href="https://svn.boost.org/trac/boost/ticket/9916" target="_top">#9916: 1012 <span class="emphasis"><em>"Allocator propagation incorrect in the assignment 1013 operator of most"</em></span></a>. 1014 </li> 1015<li class="listitem"> 1016 <a href="https://svn.boost.org/trac/boost/ticket/9931" target="_top">#9931: 1017 <span class="emphasis"><em>"flat_map::insert(ordered_unique_range_t...) fails 1018 with move_iterators"</em></span></a>. 1019 </li> 1020<li class="listitem"> 1021 <a href="https://svn.boost.org/trac/boost/ticket/9955" target="_top">#9955: 1022 <span class="emphasis"><em>"Using memcpy with overlapped buffers in vector"</em></span></a>. 1023 </li> 1024</ul></div> 1025 </li> 1026</ul></div> 1027</div> 1028<div class="section"> 1029<div class="titlepage"><div><div><h3 class="title"> 1030<a name="container.release_notes.release_notes_boost_1_55_00"></a><a class="link" href="release_notes.html#container.release_notes.release_notes_boost_1_55_00" title="Boost 1.55 Release">Boost 1031 1.55 Release</a> 1032</h3></div></div></div> 1033<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> 1034<li class="listitem"> 1035 Implemented <a class="link" href="main_features.html#container.main_features.scary_iterators" title="SCARY iterators">SCARY 1036 iterators</a>. 1037 </li> 1038<li class="listitem"> 1039 Fixed bugs <a href="https://svn.boost.org/trac/boost/ticket/8269" target="_top">#8269</a>, 1040 <a href="https://svn.boost.org/trac/boost/ticket/8473" target="_top">#8473</a>, 1041 <a href="https://svn.boost.org/trac/boost/ticket/8892" target="_top">#8892</a>, 1042 <a href="https://svn.boost.org/trac/boost/ticket/9009" target="_top">#9009</a>, 1043 <a href="https://svn.boost.org/trac/boost/ticket/9064" target="_top">#9064</a>, 1044 <a href="https://svn.boost.org/trac/boost/ticket/9092" target="_top">#9092</a>, 1045 <a href="https://svn.boost.org/trac/boost/ticket/9108" target="_top">#9108</a>, 1046 <a href="https://svn.boost.org/trac/boost/ticket/9166" target="_top">#9166</a>. 1047 </li> 1048<li class="listitem"> 1049 Added <code class="computeroutput"><span class="keyword">default</span> <span class="identifier">initialization</span></code> 1050 insertion functions to vector-like containers with new overloads taking 1051 <code class="computeroutput"><span class="identifier">default_init_t</span></code> as an 1052 argument instead of <code class="computeroutput"><span class="keyword">const</span> <span class="identifier">value_type</span> <span class="special">&</span></code>. 1053 </li> 1054</ul></div> 1055</div> 1056<div class="section"> 1057<div class="titlepage"><div><div><h3 class="title"> 1058<a name="container.release_notes.release_notes_boost_1_54_00"></a><a class="link" href="release_notes.html#container.release_notes.release_notes_boost_1_54_00" title="Boost 1.54 Release">Boost 1059 1.54 Release</a> 1060</h3></div></div></div> 1061<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> 1062<li class="listitem"> 1063 Added experimental <code class="computeroutput"><span class="identifier">static_vector</span></code> 1064 class, based on Andrew Hundt's and Adam Wulkiewicz's high performance 1065 <code class="computeroutput"><span class="identifier">varray</span></code> class. 1066 </li> 1067<li class="listitem"> 1068 Speed improvements in <code class="computeroutput"><span class="identifier">vector</span></code> 1069 constructors/copy/move/swap, dispatching to memcpy when possible. 1070 </li> 1071<li class="listitem"> 1072 Support for <code class="computeroutput"><span class="identifier">BOOST_NO_EXCEPTIONS</span></code> 1073 <a href="https://svn.boost.org/trac/boost/ticket/7227" target="_top">#7227</a>. 1074 </li> 1075<li class="listitem"> 1076 Fixed bugs <a href="https://svn.boost.org/trac/boost/ticket/7921" target="_top">#7921</a>, 1077 <a href="https://svn.boost.org/trac/boost/ticket/7969" target="_top">#7969</a>, 1078 <a href="https://svn.boost.org/trac/boost/ticket/8118" target="_top">#8118</a>, 1079 <a href="https://svn.boost.org/trac/boost/ticket/8294" target="_top">#8294</a>, 1080 <a href="https://svn.boost.org/trac/boost/ticket/8553" target="_top">#8553</a>, 1081 <a href="https://svn.boost.org/trac/boost/ticket/8724" target="_top">#8724</a>. 1082 </li> 1083</ul></div> 1084</div> 1085<div class="section"> 1086<div class="titlepage"><div><div><h3 class="title"> 1087<a name="container.release_notes.release_notes_boost_1_53_00"></a><a class="link" href="release_notes.html#container.release_notes.release_notes_boost_1_53_00" title="Boost 1.53 Release">Boost 1088 1.53 Release</a> 1089</h3></div></div></div> 1090<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> 1091<li class="listitem"> 1092 Fixed bug <a href="https://svn.boost.org/trac/boost/ticket/7650" target="_top">#7650</a>. 1093 </li> 1094<li class="listitem"> 1095 Improved <code class="computeroutput"><span class="identifier">vector</span></code>'s insertion 1096 performance. 1097 </li> 1098<li class="listitem"> 1099 Changed again experimental multiallocation interface for better performance 1100 (still experimental). 1101 </li> 1102<li class="listitem"> 1103 Added no exception support for those willing to disable exceptions in 1104 their compilers. 1105 </li> 1106<li class="listitem"> 1107 Fixed GCC -Wshadow warnings. 1108 </li> 1109<li class="listitem"> 1110 Replaced deprecated BOOST_NO_XXXX with newer BOOST_NO_CXX11_XXX macros. 1111 </li> 1112</ul></div> 1113</div> 1114<div class="section"> 1115<div class="titlepage"><div><div><h3 class="title"> 1116<a name="container.release_notes.release_notes_boost_1_52_00"></a><a class="link" href="release_notes.html#container.release_notes.release_notes_boost_1_52_00" title="Boost 1.52 Release">Boost 1117 1.52 Release</a> 1118</h3></div></div></div> 1119<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> 1120<li class="listitem"> 1121 Improved <code class="computeroutput"><span class="identifier">stable_vector</span></code>'s 1122 template code bloat and type safety. 1123 </li> 1124<li class="listitem"> 1125 Changed typedefs and reordered functions of sequence containers to improve 1126 doxygen documentation. 1127 </li> 1128<li class="listitem"> 1129 Fixed bugs <a href="https://svn.boost.org/trac/boost/ticket/6615" target="_top">#6615</a>, 1130 <a href="https://svn.boost.org/trac/boost/ticket/7139" target="_top">#7139</a>, 1131 <a href="https://svn.boost.org/trac/boost/ticket/7215" target="_top">#7215</a>, 1132 <a href="https://svn.boost.org/trac/boost/ticket/7232" target="_top">#7232</a>, 1133 <a href="https://svn.boost.org/trac/boost/ticket/7269" target="_top">#7269</a>, 1134 <a href="https://svn.boost.org/trac/boost/ticket/7439" target="_top">#7439</a>. 1135 </li> 1136<li class="listitem"> 1137 Implemented LWG Issue #149 (range insertion now returns an iterator) 1138 & cleaned up insertion code in most containers 1139 </li> 1140<li class="listitem"> 1141 Corrected aliasing errors. 1142 </li> 1143</ul></div> 1144</div> 1145<div class="section"> 1146<div class="titlepage"><div><div><h3 class="title"> 1147<a name="container.release_notes.release_notes_boost_1_51_00"></a><a class="link" href="release_notes.html#container.release_notes.release_notes_boost_1_51_00" title="Boost 1.51 Release">Boost 1148 1.51 Release</a> 1149</h3></div></div></div> 1150<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"> 1151 Fixed bugs <a href="https://svn.boost.org/trac/boost/ticket/6763" target="_top">#6763</a>, 1152 <a href="https://svn.boost.org/trac/boost/ticket/6803" target="_top">#6803</a>, 1153 <a href="https://svn.boost.org/trac/boost/ticket/7114" target="_top">#7114</a>, 1154 <a href="https://svn.boost.org/trac/boost/ticket/7103" target="_top">#7103</a>. 1155 <a href="https://svn.boost.org/trac/boost/ticket/7123" target="_top">#7123</a>, 1156 </li></ul></div> 1157</div> 1158<div class="section"> 1159<div class="titlepage"><div><div><h3 class="title"> 1160<a name="container.release_notes.release_notes_boost_1_50_00"></a><a class="link" href="release_notes.html#container.release_notes.release_notes_boost_1_50_00" title="Boost 1.50 Release">Boost 1161 1.50 Release</a> 1162</h3></div></div></div> 1163<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> 1164<li class="listitem"> 1165 Added Scoped Allocator Model support. 1166 </li> 1167<li class="listitem"> 1168 Fixed bugs <a href="https://svn.boost.org/trac/boost/ticket/6606" target="_top">#6606</a>, 1169 <a href="https://svn.boost.org/trac/boost/ticket/6533" target="_top">#6533</a>, 1170 <a href="https://svn.boost.org/trac/boost/ticket/6536" target="_top">#6536</a>, 1171 <a href="https://svn.boost.org/trac/boost/ticket/6566" target="_top">#6566</a>, 1172 <a href="https://svn.boost.org/trac/boost/ticket/6575" target="_top">#6575</a>, 1173 </li> 1174</ul></div> 1175</div> 1176<div class="section"> 1177<div class="titlepage"><div><div><h3 class="title"> 1178<a name="container.release_notes.release_notes_boost_1_49_00"></a><a class="link" href="release_notes.html#container.release_notes.release_notes_boost_1_49_00" title="Boost 1.49 Release">Boost 1179 1.49 Release</a> 1180</h3></div></div></div> 1181<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> 1182<li class="listitem"> 1183 Fixed bugs <a href="https://svn.boost.org/trac/boost/ticket/6540" target="_top">#6540</a>, 1184 <a href="https://svn.boost.org/trac/boost/ticket/6499" target="_top">#6499</a>, 1185 <a href="https://svn.boost.org/trac/boost/ticket/6336" target="_top">#6336</a>, 1186 <a href="https://svn.boost.org/trac/boost/ticket/6335" target="_top">#6335</a>, 1187 <a href="https://svn.boost.org/trac/boost/ticket/6287" target="_top">#6287</a>, 1188 <a href="https://svn.boost.org/trac/boost/ticket/6205" target="_top">#6205</a>, 1189 <a href="https://svn.boost.org/trac/boost/ticket/4383" target="_top">#4383</a>. 1190 </li> 1191<li class="listitem"> 1192 Added <code class="computeroutput"><span class="identifier">allocator_traits</span></code> 1193 support for both C++11 and C++03 compilers through an internal <code class="computeroutput"><span class="identifier">allocator_traits</span></code> clone. 1194 </li> 1195</ul></div> 1196</div> 1197<div class="section"> 1198<div class="titlepage"><div><div><h3 class="title"> 1199<a name="container.release_notes.release_notes_boost_1_48_00"></a><a class="link" href="release_notes.html#container.release_notes.release_notes_boost_1_48_00" title="Boost 1.48 Release">Boost 1200 1.48 Release</a> 1201</h3></div></div></div> 1202<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"> 1203 First release. Container code from <span class="bold"><strong>Boost.Interprocess</strong></span> 1204 was deleted and redirected to <span class="bold"><strong>Boost.Container 1205 </strong></span> via using directives. 1206 </li></ul></div> 1207</div> 1208</div> 1209<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr> 1210<td align="left"></td> 1211<td align="right"><div class="copyright-footer">Copyright © 2009-2018 Ion Gaztanaga<p> 1212 Distributed under the Boost Software License, Version 1.0. (See accompanying 1213 file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>) 1214 </p> 1215</div></td> 1216</tr></table> 1217<hr> 1218<div class="spirit-nav"> 1219<a accesskey="p" href="acknowledgements_notes.html"><img src="../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../container.html"><img src="../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../hash.html"><img src="../../../doc/src/images/next.png" alt="Next"></a> 1220</div> 1221</body> 1222</html> 1223