diff --git a/include/internal/catch_generators.cpp b/include/internal/catch_generators.cpp index caf5a0df..786da736 100644 --- a/include/internal/catch_generators.cpp +++ b/include/internal/catch_generators.cpp @@ -9,6 +9,7 @@ #include "catch_random_number_generator.h" #include "catch_interfaces_capture.h" +#include #include namespace Catch { @@ -40,6 +41,10 @@ namespace Generators { return getResultCapture().acquireGeneratorTracker( lineInfo ); } + template<> + auto all() -> Generator { + return range( std::numeric_limits::min(), std::numeric_limits::max() ); + } } // namespace Generators } // namespace Catch diff --git a/include/internal/catch_generators.hpp b/include/internal/catch_generators.hpp index 26a310c2..74fa5922 100644 --- a/include/internal/catch_generators.hpp +++ b/include/internal/catch_generators.hpp @@ -13,7 +13,6 @@ #include #include #include -#include #include @@ -123,16 +122,14 @@ namespace Generators { template auto all() -> Generator { return RequiresASpecialisationFor(); } + template<> + auto all() -> Generator; + template auto range( T const& first, T const& last ) -> Generator { return Generator( (last-first), pf::make_unique>( first, last ) ); } - template<> - inline auto all() -> Generator { - return range( std::numeric_limits::min(), std::numeric_limits::max()-1 ); - } - template auto random( T const& first, T const& last ) -> Generator {