memory_resource.cc
41.9 KB
-
libstdc++: Fix incorrect size calculation in PMR resource (PR 94906) · dc103060
Calculating the size of a chunk being returned to the upstream allocator was done with a 32-bit type, so it wrapped if the chunk was 4GB or larger. I don't know how to test this without allocating 4GB, so there's no test in the testsuite. It has been tested manually of course. Backport from mainline 2020-05-04 Jonathan Wakely <jwakely@redhat.com> PR libstdc++/94906 * src/c++17/memory_resource.cc (monotonic_buffer_resource::_Chunk::release): Use size_t for shift operands.
Jonathan Wakely committed