Skip to content

Update to Doctest 2.5.3#5243

Closed
nlohmann wants to merge 1 commit into
developfrom
upgrade_doctest
Closed

Update to Doctest 2.5.3#5243
nlohmann wants to merge 1 commit into
developfrom
upgrade_doctest

Conversation

@nlohmann

@nlohmann nlohmann commented Jul 8, 2026

Copy link
Copy Markdown
Owner

Also try to remove flag exclusions.

Signed-off-by: Niels Lohmann <mail@nlohmann.me>
@nlohmann

nlohmann commented Jul 8, 2026

Copy link
Copy Markdown
Owner Author

Closing unmerged — hit a hard upstream blocker.

Full-matrix CI surfaced two real regressions from the doctest 2.5.3 bump itself (not from the CI-flag cleanup in this PR, which was independently verified safe):

  1. GCC 4.8/4.9 permanently broken. doctest's filldata<T> stringification hits an ambiguous template instantiation on GCC 4.8/4.9 (confirmed via our unit-bjdata failure on std::vector<unsigned char>). This is doctest#1112, "introduced in 2.5.0, and is present in all subsequent versions" — and doctest maintainer mitchgrout confirmed GCC 4.x support was intentionally and permanently dropped in doctest#1075, not a bug they intend to fix. Our ci_test_compilers_gcc_old matrix tests 4.8/4.9/5/6 to back the README's claimed GCC 4.8–14.2 support range.

  2. Clang 22 (dev) -Wshadow failure, lower priority: doctest #1079 deliberately swaps DOCTEST_COUNTER from __COUNTER__ to __LINE__ on Clang ≥22, breaking anonymous-symbol uniqueness for our SETUP_TESTCASES() macro pattern. silkeh/clang:dev is an unpinned nightly, so treating this as toolchain churn rather than blocking.

Any future doctest 2.5.x bump needs an explicit decision on dropping GCC 4.8/4.9 from officially-tested support first — that's a project support-policy call, not something to fold into a test-framework version bump. Tracked in the project todo list.

🤖 Generated with Claude Code

@nlohmann nlohmann closed this Jul 8, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant