Clean-up code to satisfy GCC's pedantic mode requirements. Add fix for Clang not working with GCC 5 C++ library (https://llvm.org/bugs/show_bug.cgi?id=23529)
This commit is contained in:
+1
-1
@@ -19,7 +19,7 @@ endif()
|
||||
|
||||
if(UNIX)
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Werror -Wextra -pedantic")
|
||||
add_definitions(-std=c++11)
|
||||
add_definitions(-std=c++14)
|
||||
endif()
|
||||
|
||||
if(WIN32)
|
||||
|
||||
@@ -0,0 +1,2 @@
|
||||
*
|
||||
!.gitignore
|
||||
+3
-3
@@ -136,9 +136,9 @@ namespace version {
|
||||
/// Copy version data from another Basic_version to this one.
|
||||
Basic_version& operator=(const Basic_version&);
|
||||
|
||||
const int major() const; ///< Get major version.
|
||||
const int minor() const; ///< Get minor version.
|
||||
const int patch() const; ///< Get patch version.
|
||||
int major() const; ///< Get major version.
|
||||
int minor() const; ///< Get minor version.
|
||||
int patch() const; ///< Get patch version.
|
||||
const std::string prerelease() const; ///< Get prerelease version string.
|
||||
const std::string build() const; ///< Get build version string.
|
||||
|
||||
|
||||
+7
-6
@@ -24,6 +24,7 @@ SOFTWARE.
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <sstream>
|
||||
#include "version.h"
|
||||
|
||||
namespace version {
|
||||
@@ -46,11 +47,11 @@ namespace version {
|
||||
|
||||
template<typename Parser, typename Comparator>
|
||||
Basic_version<Parser, Comparator>::Basic_version(Parser p, Comparator c)
|
||||
: parser_(p), comparator_(c), ver_(parser_.parse("0.0.0")) {};
|
||||
: parser_(p), comparator_(c), ver_(parser_.parse("0.0.0")) {}
|
||||
|
||||
template<typename Parser, typename Comparator>
|
||||
Basic_version<Parser, Comparator>::Basic_version(const std::string& v, Parser p, Comparator c)
|
||||
: parser_(p), comparator_(c), ver_(parser_.parse(v)) {};
|
||||
: parser_(p), comparator_(c), ver_(parser_.parse(v)) {}
|
||||
|
||||
template<typename Parser, typename Comparator>
|
||||
Basic_version<Parser, Comparator>::Basic_version(const Basic_version<Parser, Comparator>&) = default;
|
||||
@@ -60,17 +61,17 @@ namespace version {
|
||||
const Basic_version<Parser, Comparator>&) = default;
|
||||
|
||||
template<typename Parser, typename Comparator>
|
||||
const int Basic_version<Parser, Comparator>::major() const {
|
||||
int Basic_version<Parser, Comparator>::major() const {
|
||||
return ver_.major;
|
||||
}
|
||||
|
||||
template<typename Parser, typename Comparator>
|
||||
const int Basic_version<Parser, Comparator>::minor() const {
|
||||
int Basic_version<Parser, Comparator>::minor() const {
|
||||
return ver_.minor;
|
||||
}
|
||||
|
||||
template<typename Parser, typename Comparator>
|
||||
const int Basic_version<Parser, Comparator>::patch() const {
|
||||
int Basic_version<Parser, Comparator>::patch() const {
|
||||
return ver_.patch;
|
||||
}
|
||||
|
||||
@@ -139,4 +140,4 @@ namespace version {
|
||||
const Basic_version<Parser, Comparator>& r) {
|
||||
return !(l > r);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -72,7 +72,7 @@ namespace version {
|
||||
};
|
||||
|
||||
// Compare prerelease identifiers based on their types.
|
||||
int compare_prerel_identifiers(const Prerelease_identifier& l, const Prerelease_identifier& r) {
|
||||
inline int compare_prerel_identifiers(const Prerelease_identifier& l, const Prerelease_identifier& r) {
|
||||
auto cmp = comparators.at({ l.second, r.second });
|
||||
return cmp(l.first, r.first);
|
||||
}
|
||||
@@ -107,4 +107,4 @@ namespace version {
|
||||
return l.prerelease_ids.size() > r.prerelease_ids.size() ? 1 : -1;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
+3
-3
@@ -9,19 +9,19 @@ include_directories(
|
||||
${Boost_INCLUDE_DIRS}
|
||||
)
|
||||
|
||||
add_executable(semver200_parser_tests semver200_parser_tests.cpp)
|
||||
add_executable(semver200_parser_tests semver200_parser_tests.cpp clang_fixes.cpp)
|
||||
target_link_libraries(semver200_parser_tests
|
||||
${Boost_UNIT_TEST_FRAMEWORK_LIBRARY}
|
||||
semver
|
||||
)
|
||||
|
||||
add_executable(semver200_comparator_tests semver200_comparator_tests.cpp)
|
||||
add_executable(semver200_comparator_tests semver200_comparator_tests.cpp clang_fixes.cpp)
|
||||
target_link_libraries(semver200_comparator_tests
|
||||
${Boost_UNIT_TEST_FRAMEWORK_LIBRARY}
|
||||
semver
|
||||
)
|
||||
|
||||
add_executable(semver200_version_tests semver200_version_tests.cpp)
|
||||
add_executable(semver200_version_tests semver200_version_tests.cpp clang_fixes.cpp)
|
||||
target_link_libraries(semver200_version_tests
|
||||
${Boost_UNIT_TEST_FRAMEWORK_LIBRARY}
|
||||
semver
|
||||
|
||||
@@ -0,0 +1,14 @@
|
||||
#ifdef __clang__
|
||||
|
||||
#include <string>
|
||||
#include <boost/test/unit_test.hpp>
|
||||
|
||||
namespace boost { namespace unit_test { namespace ut_detail {
|
||||
std::string normalize_test_case_name(const_string name) {
|
||||
return ( name[0] == '&' ? std::string(name.begin()+1, name.size()-1) : std::string(name.begin(), name.size() ));
|
||||
}
|
||||
}}}
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
@@ -102,4 +102,4 @@ BOOST_AUTO_TEST_CASE(compare_build) {
|
||||
EQ("1.0.0", "1.0.0+build.1.2.3");
|
||||
EQ("1.0.0+ZZZ", "1.0.0+build.1.2.3");
|
||||
EQ("1.0.0+100", "1.0.0+200");
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user