* Fix the build of develop: tests from #5997 and #5991
- unit-msgpack-cpp17: assign the result of json::parse in
CHECK_THROWS_WITH_AS (GCC -Werror=unused-result)
- unit-json_view: failing_allocator::allocate is [[noreturn]]
(clang -Wmissing-noreturn)
- unit-class_lexer: build the quoted string once
(clang-tidy performance-inefficient-string-concatenation)
- unit-allocator: sweep_allocator provides pointer, reference and size
typedefs, which GCC 4.8's std::map takes from the allocator
- unit-allocator: skip the "sax_parse into an existing value" sweep with
iterator debugging, like the parser callback sweep: MSVC's std::vector
default constructor is noexcept but allocates its debug proxy through
the allocator, so a failing allocation in create<array_t>() terminates
Signed-off-by: Niels Lohmann <mail@nlohmann.me>
* Fix the remaining CI failures of the tests from #5997 and #5991
- unit-custom-object-key-type: drop the redundant member initializer and
return a braced init list (clang-tidy); direct-initialize the converted
value, as copy-initialization makes GCC 4.8 instantiate the copy
constructor, which needs a range constructor strict_object lacks
- unit-stream-bulk-scan: pick the claimed get area size by tag dispatch
instead of a constant condition (MSVC C4127)
- unit-allocator: skip the parser callback and sax_parse sweeps with
Clang 3.4 and 3.5, which leak memory when an element constructor throws
inside a libstdc++ std::map copy or std::vector reallocation
Signed-off-by: Niels Lohmann <mail@nlohmann.me>
* Fix the CI failures that the first failing TU of each job hid
- unit-stream-bulk-scan: compute the claimed size without a condition;
the tag-dispatched template was unused with a 64-bit std::size_t
(-Wunused-template)
- unit-json_view: give failing_allocator the typedefs, rebind and
members that GCC 4.8's std::map takes from the allocator directly
- clang-tidy hits in the tests from #5997: raw string literals
(unit-json_view), redundant c_str() and a NOLINT for &text[0]
(unit-locale-cpp), reserve() before a loop (unit-ordered_json), and a
NOLINT for a return that a braced list would turn into an array
(unit-regression1)
Signed-off-by: Niels Lohmann <mail@nlohmann.me>
* Skip the 3 GiB get-area test with a 32-bit std::size_t in the preprocessor
The claimed size was a constant 0 on Win32, so `claimed == 0 || ...` was a
constant condition and MSVC reported C4127. Guard the section with
`#if SIZE_MAX > UINT32_MAX` instead, as unit-msgpack-custom-types.cpp does.
Signed-off-by: Niels Lohmann <mail@nlohmann.me>
* Silence modernize-use-transparent-functors for failing_map in unit-json_view
std::less<> needs C++14, and the test is also built as C++11.
Signed-off-by: Niels Lohmann <mail@nlohmann.me>
---------
Signed-off-by: Niels Lohmann <mail@nlohmann.me>