diff --git a/include/internal/catch_test_case_registry_impl.hpp b/include/internal/catch_test_case_registry_impl.hpp index 9e3ef11b..5d24b15c 100644 --- a/include/internal/catch_test_case_registry_impl.hpp +++ b/include/internal/catch_test_case_registry_impl.hpp @@ -22,6 +22,13 @@ namespace Catch { class TestRegistry : public ITestCaseRegistry { + struct LexSort { + bool operator() (TestCase i,TestCase j) const { return (i& matchingTestCases ) const { - struct LexSort { - bool operator() (TestCase i,TestCase j) const { return (i::const_iterator it = m_functionsInOrder.begin(), itEnd = m_functionsInOrder.end(); @@ -82,7 +81,10 @@ namespace Catch { std::sort( matchingTestCases.begin(), matchingTestCases.end(), LexSort() ); break; case RunTests::InRandomOrder: - std::random_shuffle( matchingTestCases.begin(), matchingTestCases.end(), RandomNumberGenerator() ); + { + RandomNumberGenerator rng; + std::random_shuffle( matchingTestCases.begin(), matchingTestCases.end(), rng ); + } break; case RunTests::InDeclarationOrder: // already in declaration order