From 85889e8843c6d783855d152d8effc6c2835b0e77 Mon Sep 17 00:00:00 2001 From: Niels Lohmann Date: Tue, 4 Aug 2026 08:43:59 +0200 Subject: [PATCH] docs: use HTTPS for the astyle and cppcheck links in README (#5351) * docs: use HTTPS for the astyle and cppcheck links in README Both links were still `http://`. `astyle.sourceforge.net` serves HTTPS directly; `cppcheck.sourceforge.net` redirects to `https://cppcheck.sourceforge.io`, which is also the URL already used in `docs/mkdocs/docs/community/quality_assurance.md`, so the redirect is skipped here. Signed-off-by: Niels Lohmann * CI: suppress -Wc2y-extensions for Clang Clang 22.1 (now shipped by silkeh/clang:latest) diagnoses __COUNTER__ as a C2y extension, and does so in C++ mode as well. Under -Weverything -Werror this breaks every ci_test_clang_cxx* / ci_test_clang_libcxx_cxx* target, independently of the code under test. The library itself does not use __COUNTER__; all diagnostics originate in vendored Doctest (DOCTEST_ANONYMOUS, used by TEST_CASE and SECTION). Signed-off-by: Niels Lohmann --------- Signed-off-by: Niels Lohmann --- README.md | 4 ++-- cmake/clang_flags.cmake | 4 ++++ 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index c63c512f4..d4d2394a2 100644 --- a/README.md +++ b/README.md @@ -1801,13 +1801,13 @@ The library itself consists of a single header file licensed under the MIT licen - [**amalgamate.py - Amalgamate C source and header files**](https://github.com/edlund/amalgamate) to create a single header file - [**American fuzzy lop**](https://lcamtuf.coredump.cx/afl/) for fuzz testing - [**AppVeyor**](https://www.appveyor.com) for [continuous integration](https://ci.appveyor.com/project/nlohmann/json) on Windows -- [**Artistic Style**](http://astyle.sourceforge.net) for automatic source code indentation +- [**Artistic Style**](https://astyle.sourceforge.net) for automatic source code indentation - [**Clang**](https://clang.llvm.org) for compilation with code sanitizers - [**CMake**](https://cmake.org) for build automation - [**Codacy**](https://www.codacy.com) for further [code analysis](https://app.codacy.com/gh/nlohmann/json/dashboard) - [**Coveralls**](https://coveralls.io) to measure [code coverage](https://coveralls.io/github/nlohmann/json) - [**Coverity Scan**](https://scan.coverity.com) for [static analysis](https://scan.coverity.com/projects/nlohmann-json) -- [**cppcheck**](http://cppcheck.sourceforge.net) for static analysis +- [**cppcheck**](https://cppcheck.sourceforge.io) for static analysis - [**doctest**](https://github.com/onqtam/doctest) for the unit tests - [**GitHub Changelog Generator**](https://github.com/skywinder/github-changelog-generator) to generate the [ChangeLog](https://github.com/nlohmann/json/blob/develop/ChangeLog.md) - [**Google Benchmark**](https://github.com/google/benchmark) to implement the benchmarks diff --git a/cmake/clang_flags.cmake b/cmake/clang_flags.cmake index aea17820c..0619545ec 100644 --- a/cmake/clang_flags.cmake +++ b/cmake/clang_flags.cmake @@ -5,6 +5,9 @@ # -Wno-extra-semi-stmt The library uses assert which triggers this warning. # -Wno-padded We do not care about padding warnings. # -Wno-covered-switch-default All switches list all cases and a default case. +# -Wno-c2y-extensions Clang 22.1 diagnoses __COUNTER__ as a C2y extension, also in +# C++ mode. The library does not use __COUNTER__; the warnings +# all come from vendored Doctest (SECTION/TEST_CASE macros). # -Wno-unsafe-buffer-usage Pervasive: the library's own low-level numeric/buffer code # (to_chars, serializer, lexer, binary reader/writer, input # adapters, json_pointer) plus vendored Doctest itself (~208 @@ -20,5 +23,6 @@ set(CLANG_CXXFLAGS -Wno-extra-semi-stmt -Wno-padded -Wno-covered-switch-default + -Wno-c2y-extensions -Wno-unsafe-buffer-usage )