-
-
Notifications
You must be signed in to change notification settings - Fork 7.2k
Closed as not planned
Labels
kind: bugstate: stalethe issue has not been updated in a while and will be closed automatically soon unless it is updatedthe issue has not been updated in a while and will be closed automatically soon unless it is updated
Description
Description
The non-recursive destruction implementation uses a std::vector as a stack to avoid recursive destruction of nested objects.
The vector that is used does not use the provided allocator type.
Reproduction steps
json j = {
{"object", {
{"currency", "USD"},
{"value", 42.99}
}}
};
// j goes out of scope
basic_json::destroy is called from ~basic_json and uses a vector as a stack for the "object".
Expected vs. actual results
I expected the operation to use the given allocator to allocate the vector of basic_json, but it just uses new/delete.
Minimal code example
Error messages
Compiler and operating system
Apple clang version 15.0.0 / macOS
Library version
v3.12.0
Validation
- The bug also occurs if the latest version from the
developbranch is used. - I can successfully compile and run the unit tests.
Metadata
Metadata
Assignees
Labels
kind: bugstate: stalethe issue has not been updated in a while and will be closed automatically soon unless it is updatedthe issue has not been updated in a while and will be closed automatically soon unless it is updated