From b606bc280226d9b34a42ad82f66cbfcc89209d9e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20Ho=C5=99e=C5=88ovsk=C3=BD?= Date: Sun, 10 Dec 2023 21:45:21 +0100 Subject: [PATCH] Remove obsolete section in limitations.md We no longer use `std::shuffle` to implement random test order, so a debug mode bug in old versions of libstdc++ cannot apply to us. --- docs/limitations.md | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/docs/limitations.md b/docs/limitations.md index cc0ed05d..099dd82a 100644 --- a/docs/limitations.md +++ b/docs/limitations.md @@ -173,13 +173,3 @@ TEST_CASE("b") { If you are seeing a problem like this, i.e. weird test paths that trigger only under Clang with `libc++`, or only under very specific version of `libstdc++`, it is very likely you are seeing this. The only known workaround is to use a fixed version of your standard library. - -### libstdc++, `_GLIBCXX_DEBUG` macro and random ordering of tests - -Running a Catch2 binary compiled against libstdc++ with `_GLIBCXX_DEBUG` -macro defined with `--order rand` will cause a debug check to trigger and -abort the run due to self-assignment. -[This is a known bug inside libstdc++](https://stackoverflow.com/questions/22915325/avoiding-self-assignment-in-stdshuffle/23691322) - -Workaround: Don't use `--order rand` when compiling against debug-enabled -libstdc++.