Commit Graph

903 Commits

Author SHA1 Message Date
Ion Gaztañaga
aa479c8eee Merge branch 'master' of github.com:boostorg/container into develop boost-1.77.0.beta1 boost-1.77.0 2021-06-25 23:40:06 +02:00
Peter Dimov
a1565bc439 Do not define BOOST_CONTAINER_SOURCE in CMakeLists.txt 2021-06-09 19:03:00 +03:00
Peter Dimov
ed042107dd Do not define BOOST_CONTAINER_SOURCE in CMakeLists.txt 2021-06-09 18:50:22 +03:00
Peter Dimov
ff0a6b8aae Remove unnecessary source files 2021-06-08 21:50:24 +03:00
Peter Dimov
498aa83f20 Regenerate CMakeLists.txt 2021-06-08 21:50:13 +03:00
Peter Dimov
0ea8ff0275 Remove unnecessary source files 2021-05-28 02:19:00 +03:00
Peter Dimov
820379293f Regenerate CMakeLists.txt 2021-05-28 02:18:12 +03:00
Ion Gaztañaga
15bed478eb Fixes #185 ("Including headers adds exports"), replacing BOOST_SYMBOL_EXPORT with BOOST_SYMBOL_VISIBLE. 2021-05-03 09:18:51 +02:00
Ion Gaztañaga
b7d48f1e08 Fixes #180: ("polymorphic_allocator's copy special member functions are not noexcept") 2021-04-21 00:53:43 +02:00
Ion Gaztañaga
ad7167c564 Fixes #150 ("Use std::contiguous_iterator_tag if available"), tested in MSVC and GCC. 2021-04-21 00:43:31 +02:00
Ion Gaztañaga
c0bfb40f55 Don't use allocator::rebind as it is not present on recent c++ standards 2021-04-21 00:39:43 +02:00
Ion Gaztañaga
a5cc4f1eef Fix find/replace bug in test name 2021-04-19 21:53:54 +02:00
Ion Gaztañaga
249d537b58 Add BOOST_NOEXCEPT macro to doxygen 2021-04-19 21:53:32 +02:00
Ion Gaztañaga
16cada57ea Fixes #184 ("Issues with custom exceptions implementation") 2021-04-19 21:52:55 +02:00
Ion Gaztañaga
2073b125f4 Merge pull request #174 from sdarwin/drone
Drone config
2021-04-18 13:48:29 +02:00
Ion Gaztañaga
cbfc02c230 Merge pull request #179 from sdarwin/githubactions
GitHub Actions config
2021-04-18 13:48:04 +02:00
Ion Gaztañaga
244d02f380 Merge pull request #177 from eldiener/develop
[skip ci] Add "cxxstd" json field
2021-03-14 08:12:11 +01:00
sdarwin
abdbc580a2 Add GitHub Actions config [ci skip] 2021-03-01 15:32:18 +00:00
sdarwin
88fa1c158e add drone config [ci skip] 2021-01-21 19:30:35 +00:00
Edward Diener
02e5597d5b [skip ci] Add "cxxstd" json field. The "cxxstd" json field is being added to each Boost library's meta json information for libraries in order to specify the minumum C++ standard compilation level. The value of this field matches one of the values for 'cxxstd' in Boost.Build. The purpose of doing this is to provide information for the Boost website documentation for each library which will specify the minimum C++ standard compilation that an end-user must employ in order to use the particular library. This will aid end-users who want to know if they can successfully use a Boost library based on their C++ compiler's compilation level, without having to search the library's documentation to find this out. 2021-01-19 12:39:23 -05:00
Ion Gaztañaga
1dc1e74668 Remove std::pair dependency for multiallocation_chain boost-1.76.0.beta1 boost-1.76.0 2021-01-15 20:43:27 +01:00
Ion Gaztañaga
dc4cf460a7 Add missing <functional> for std::less 2021-01-15 18:05:33 +01:00
Ion Gaztañaga
d2587837eb Use <boost/detail/interlocked.hpp> for interlocked operations 2021-01-15 18:05:15 +01:00
Ion Gaztañaga
26bf1d68be Add missing header for std::pair usage 2021-01-15 18:04:58 +01:00
Ion Gaztañaga
cce50a153d Use #include <boost/intrusive/detail/value_functors.hpp> instead of own value_functor.hpp 2021-01-05 10:10:57 +01:00
Ion Gaztañaga
482f0911e1 Use #include <boost/intrusive/detail/hash_combine.hpp> instead of #include <boost/container_hash/hash.hpp> to avoid pulling unneeded STL headers. 2021-01-05 00:07:02 +01:00
Ion Gaztañaga
95538bfdc2 Update static assert test and remove unneeded <string> include. 2021-01-02 22:47:19 +01:00
Ion Gaztañaga
2bd1a6f906 Add find_end algorithm and use it in string. 2021-01-02 17:03:15 +01:00
Ion Gaztañaga
150569375f <boost/static_string.hpp> include is not needed. 2021-01-02 17:02:47 +01:00
Ion Gaztañaga
5430c15ad9 Correct includes: <algorithm> is not used and <string> is needed for char_traits 2021-01-02 16:25:25 +01:00
Ion Gaztañaga
22f34b7b02 Silence warnings in tests 2021-01-02 16:24:56 +01:00
Ion Gaztañaga
d6a270e8e1 Correct "throws" part of several operations as the library by default throws its own exception types. 2021-01-02 16:24:37 +01:00
Ion Gaztañaga
ba23ac1a5a Merge branch 'palebedev-noexcept-swap' into develop 2021-01-02 01:04:11 +01:00
Ion Gaztañaga
c476113411 Merge branch 'noexcept-swap' of https://github.com/palebedev/container into palebedev-noexcept-swap 2021-01-02 00:38:31 +01:00
Ion Gaztañaga
0153ee1920 Rewrite [flat_]map/set insert overloads to be more standard compliant. Fixes #102 ("flat_map::insert ambiguous with initializer list & pairs that need to convert"). 2021-01-02 00:37:44 +01:00
Ion Gaztañaga
d7e99e56c6 Rewrite [flat_]map/set insert overloads to be more standard compliant. Fixes #102 ("flat_map::insert ambiguous with initializer list & pairs that need to convert"). 2021-01-01 23:50:50 +01:00
Ion Gaztañaga
621cd3a0ab Avoid using inheriting constructors and initializer_list::cbegin/cend to be nicer with older compilers 2021-01-01 23:44:56 +01:00
Ion Gaztañaga
6c23ce8b42 Avoid including windows.h 2021-01-01 23:44:07 +01:00
Ion Gaztañaga
80697e7c0f #pragma GCC diagnostic push is available from GCC 4.6, not from GCC 4.5 2021-01-01 23:43:44 +01:00
Ion Gaztañaga
d5a830434e - Replaced default standard exception classes with Boost.Container own classes, reducing considerably the included files overhead 2020-12-30 15:07:32 +01:00
Pavel A. Lebedev
cb1e6af53d Add conditional noexcept forwarding from free to member swap functions.
This allows std::is_nothrow_swappable{,_with} to work properly.
This only touches user-facing classes, with the following exceptions:
- map,set: only doc changes (with a drive-by missing semicolon fix),
  detail::tree which they derive from already forwards noexcept for swap.
- flat_set: only doc changes for flat_set and a change for
  detail::flat_tree, which it derives from to get swap.
- static_vector: while this adds the forwarding, member static_vector::swap
  is currently never noexcept, although it could be for noexcept-swappable
  and noexcept-move-constructible elements.
- small_vector: there is no free swap, and member swap is never noexcept,
  although it could be for noexcept-swappable and noexcept-move-
  constructible elements. Swapping small_vectors of exact same type goes
  through std::swap, which seems to get noexcept right, and small_vectors
  of different sizes use swap for boost::container::vector, which fails
  to detect when such swap could be noexcept. This patch doesn't touch
  small_vector.
- scoped_allocator: neither member nor free swap are noexcept, although
  they should be, and all other constructions/assignments/comparisons too,
  as they only forward these operations to underlying allocators, which
  are required to not throw exceptions for them. Only static_vector's
  static_storage_allocator might throw for these and it shouldn't appear
  in scoped_allocator. Unsure of the scope of changes needed or whether it
  is even worth it, this patch doesn't touch scoped_allocator.
2020-12-30 08:28:06 +03:00
Ion Gaztañaga
b17dabf47a Fixes #141 ('small_vector does not propagate no throw properties of move operation of contained type') 2020-12-30 00:19:22 +01:00
Ion Gaztañaga
f50195524f As described in #139, fixed complexity of "merge", as a O(n) inplace merge is used and explicitly state all iterators are invalidated. 2020-11-14 23:31:30 +01:00
Ion Gaztañaga
93bbf37dad Fixes #139 ("flat_map merge and iterators"). 2020-11-14 00:10:46 +01:00
Ion Gaztañaga
ae93df82ea Fixes #164 ("Compile error when using pmr::map with a std::pair; works when using a std::tuple") 2020-11-13 23:43:02 +01:00
Ion Gaztañaga
0b59dadd8b Fix PreprocessToFile property 2020-11-13 23:42:42 +01:00
Ion Gaztañaga
c98a5396c4 Erase unneeded test 2020-11-13 23:42:02 +01:00
Ion Gaztañaga
2a458005d9 Fixes #171 ("deque::clear() uses undefined behaviour") 2020-11-10 10:08:03 +01:00
Ion Gaztañaga
220ab147ad Add VS2019 project files 2020-11-05 14:30:58 +01:00
Ion Gaztañaga
6100bcfdeb Update changelog for 1.76 2020-11-05 14:30:41 +01:00