mirror of
https://github.com/boostorg/atomic.git
synced 2026-02-02 20:32:09 +00:00
0b94a7d65552ba503da135a84dda06e0c0bb7b65
Due to BOOST_ATOMIC_DETAIL_ALIGNED_VAR_TPL macro expansion, the aligner data member was made an array, which increased the size of the resulting buffer_storage. This caused memory corruption with atomic_ref, which requires the storage type to be of the same size as the value. To protect against such mistakes in the future, changed BOOST_ATOMIC_DETAIL_ALIGNED_VAR_TPL and BOOST_ATOMIC_DETAIL_ALIGNED_VAR definitions to prohibit their direct use with arrays.
Boost.Atomic, part of collection of the Boost C++ Libraries, implements atomic operations for various CPU architectures, reflecting and extending the standard interface defined in C++11 and later.
Directories
- build - Boost.Atomic build scripts
- doc - QuickBook documentation sources
- include - Interface headers of Boost.Atomic
- src - Compilable source code of Boost.Atomic
- test - Boost.Atomic unit tests
More information
- Documentation
- Report bugs. Be sure to mention Boost version, platform and compiler you're using. A small compilable code sample to reproduce the problem is always good as well.
- Submit your patches as pull requests against develop branch. Note that by submitting patches you agree to license your modifications under the Boost Software License, Version 1.0.
Build status
| Branch | Travis CI | AppVeyor | Test Matrix | Dependencies |
|---|---|---|---|---|
master |
||||
develop |
License
Distributed under the Boost Software License, Version 1.0.
Description
Languages
C++
99.3%
CMake
0.7%
