From e04dc5105b537fb980f9d9d4aefb3d236433f9cb Mon Sep 17 00:00:00 2001 From: Kevin Ushey Date: Thu, 16 Mar 2017 11:17:45 -0700 Subject: [PATCH] use inline 'libraryVersion()' function (closes #858) --- include/catch_session.hpp | 2 +- include/internal/catch_version.h | 2 +- include/internal/catch_version.hpp | 5 ++++- include/reporters/catch_reporter_console.hpp | 2 +- scripts/releaseCommon.py | 2 +- 5 files changed, 8 insertions(+), 5 deletions(-) diff --git a/include/catch_session.hpp b/include/catch_session.hpp index a9c33664..be51bef8 100644 --- a/include/catch_session.hpp +++ b/include/catch_session.hpp @@ -125,7 +125,7 @@ namespace Catch { } void showHelp( std::string const& processName ) { - Catch::cout() << "\nCatch v" << libraryVersion << "\n"; + Catch::cout() << "\nCatch v" << libraryVersion() << "\n"; m_cli.usage( Catch::cout(), processName ); Catch::cout() << "For more detail usage please see the project docs\n" << std::endl; diff --git a/include/internal/catch_version.h b/include/internal/catch_version.h index 1a79c5c5..09032d68 100644 --- a/include/internal/catch_version.h +++ b/include/internal/catch_version.h @@ -32,7 +32,7 @@ namespace Catch { void operator=( Version const& ); }; - extern Version libraryVersion; + inline Version libraryVersion(); } #endif // TWOBLUECUBES_CATCH_VERSION_H_INCLUDED diff --git a/include/internal/catch_version.hpp b/include/internal/catch_version.hpp index e8e2f764..2af86348 100644 --- a/include/internal/catch_version.hpp +++ b/include/internal/catch_version.hpp @@ -37,7 +37,10 @@ namespace Catch { return os; } - Version libraryVersion( 1, 8, 2, "", 0 ); + inline Version libraryVersion() { + static Version version(1, 8, 2, "", 0); + return version; + } } diff --git a/include/reporters/catch_reporter_console.hpp b/include/reporters/catch_reporter_console.hpp index 711d7fbe..fed97072 100644 --- a/include/reporters/catch_reporter_console.hpp +++ b/include/reporters/catch_reporter_console.hpp @@ -254,7 +254,7 @@ namespace Catch { stream << '\n' << getLineOfChars<'~'>() << '\n'; Colour colour( Colour::SecondaryText ); stream << currentTestRunInfo->name - << " is a Catch v" << libraryVersion << " host application.\n" + << " is a Catch v" << libraryVersion() << " host application.\n" << "Run with -? for options\n\n"; if( m_config->rngSeed() != 0 ) diff --git a/scripts/releaseCommon.py b/scripts/releaseCommon.py index 91a90628..c49f7461 100644 --- a/scripts/releaseCommon.py +++ b/scripts/releaseCommon.py @@ -7,7 +7,7 @@ import string from scriptCommon import catchPath -versionParser = re.compile( r'(\s*Version\slibraryVersion)\s*\(\s*(.*)\s*,\s*(.*)\s*,\s*(.*)\s*,\s*\"(.*)\"\s*,\s*(.*)\s*\).*' ) +versionParser = re.compile( r'(\s*static\sVersion\sversion)\s*\(\s*(.*)\s*,\s*(.*)\s*,\s*(.*)\s*,\s*\"(.*)\"\s*,\s*(.*)\s*\).*' ) rootPath = os.path.join( catchPath, 'include/' ) versionPath = os.path.join( rootPath, "internal/catch_version.hpp" ) readmePath = os.path.join( catchPath, "README.md" )