diff options
author | Andrew Chow <github@achow101.com> | 2023-07-25 18:44:15 -0400 |
---|---|---|
committer | Andrew Chow <github@achow101.com> | 2023-07-25 18:54:29 -0400 |
commit | 32c15237b656209b932c5d6d2e20736c0e3d5a34 (patch) | |
tree | 1eb4873f9c49cc0a3fa2f78fe12fcafd0099398c /src/secp256k1/cmake/CheckStringOptionValue.cmake | |
parent | 1ed8a0f8d26439820554213f8ffead2d5d8ea864 (diff) | |
parent | 07c59eda00841aafaafd8fd648217b56b1e907c9 (diff) |
Merge bitcoin/bitcoin#27930: util: Don't derive secure_allocator from std::allocator
07c59eda00841aafaafd8fd648217b56b1e907c9 Don't derive secure_allocator from std::allocator (Casey Carter)
Pull request description:
Giving the C++ Standard Committee control of the public interface of your type means they will break it. C++23 adds a new `allocate_at_least` member to `std::allocator`. Very bad things happen when, say, `std::vector` uses `allocate_at_least` from `secure_allocator`'s base to allocate memory which it then tries to free with `secure_allocator::deallocate`.
(Discovered by microsoft/STL#3712, which will be reverted by microsoft/STL#3819 before it ships.)
ACKs for top commit:
jonatack:
re-ACK 07c59eda00841aafaafd8fd648217b56b1e907c9 no change since my previous ACK apart from squashing the commits
achow101:
ACK 07c59eda00841aafaafd8fd648217b56b1e907c9
john-moffett:
ACK 07c59eda00841aafaafd8fd648217b56b1e907c9 Reviewed and tested. Performance appears unaffected in my environment.
Tree-SHA512: 23606c40414d325f5605a9244d4dd50907fdf5f2fbf70f336accb3a2cb98baa8acd2972f46eab1b7fdec1d28a843a96b06083cd2d09791cda7c90ee218e5bbd5
Diffstat (limited to 'src/secp256k1/cmake/CheckStringOptionValue.cmake')
0 files changed, 0 insertions, 0 deletions