Compare commits

...

3 Commits

Author SHA1 Message Date
Niels Lohmann
41c94e06fc 👷 build ci_module_cpp20 with MSVC
Signed-off-by: Niels Lohmann <mail@nlohmann.me>
2025-04-28 23:18:35 +02:00
Niels Lohmann
c17c7a8bd8 👷 build ci_module_cpp20 with MSVC
Signed-off-by: Niels Lohmann <mail@nlohmann.me>
2025-04-28 23:03:35 +02:00
Niels Lohmann
1415eb4cb5 👷 build ci_module_cpp20 with MSVC
Signed-off-by: Niels Lohmann <mail@nlohmann.me>
2025-04-28 22:02:57 +02:00
4 changed files with 20 additions and 6 deletions

View File

@@ -111,3 +111,12 @@ jobs:
run: cmake --build build --config Debug --parallel 10
- name: Test
run: cd build ; ctest -j 10 -C Debug --exclude-regex "test-unicode" --output-on-failure
ci_module_cpp20:
runs-on: windows-latest
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Run CMake (Debug)
run: cmake -S . -B build -G "Visual Studio 17 2022" -DJSON_CI=ON -DCMAKE_CXX_FLAGS="/permissive- /std:c++latest /utf-8 /W4 /WX"
- name: Build
run: cmake --build build --config Debug --target ci_module_cpp20

View File

@@ -39,6 +39,7 @@
#include <nlohmann/detail/hash.hpp>
#include <nlohmann/detail/input/binary_reader.hpp>
#include <nlohmann/detail/input/input_adapters.hpp>
#include <nlohmann/detail/input/json_sax.hpp>
#include <nlohmann/detail/input/lexer.hpp>
#include <nlohmann/detail/input/parser.hpp>
#include <nlohmann/detail/iterators/internal_iterator.hpp>

View File

@@ -12889,6 +12889,8 @@ NLOHMANN_JSON_NAMESPACE_END
// #include <nlohmann/detail/input/input_adapters.hpp>
// #include <nlohmann/detail/input/json_sax.hpp>
// #include <nlohmann/detail/input/lexer.hpp>
// #include <nlohmann/detail/input/parser.hpp>

View File

@@ -1914,10 +1914,12 @@ TEST_CASE("MessagePack with std::byte")
SECTION("empty vector")
{
const std::vector<std::byte> empty_data;
CHECK_THROWS_WITH_AS([&]() {
[[maybe_unused]] auto result = json::from_msgpack(empty_data);
return true;
}(),
CHECK_THROWS_WITH_AS([&]()
{
[[maybe_unused]] auto result = json::from_msgpack(empty_data);
return true;
}
(),
"[json.exception.parse_error.110] parse error at byte 1: syntax error while parsing MessagePack value: unexpected end of input",
json::parse_error&);
}
@@ -1946,8 +1948,8 @@ TEST_CASE("MessagePack with std::byte")
json direct_result = json::from_msgpack(msgpack_data);
// Test the workaround approach: reinterpret as unsigned char* and use iterator range
const auto *const char_start = reinterpret_cast<unsigned char const*>(msgpack_data.data());
const auto *const char_end = char_start + msgpack_data.size();
const auto* const char_start = reinterpret_cast<unsigned char const*>(msgpack_data.data());
const auto* const char_end = char_start + msgpack_data.size();
json workaround_result = json::from_msgpack(char_start, char_end);
// Verify that the final deserialized JSON matches the original JSON