Skip to content

Commit 71f83c3

Browse files
committed
Merge remote-tracking branch 'upstream/develop' into feature/basic_string
2 parents 28964a8 + 4536973 commit 71f83c3

File tree

5 files changed

+39
-24
lines changed

5 files changed

+39
-24
lines changed

Diff for: .travis.yml

+25-7
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,15 @@ matrix:
4848

4949
# Clang 5.0
5050
- env: UNIT_TESTS=true COMPILER=clang++-5.0 BOOST_VERSION=default ENABLE_MEMCHECK=true
51-
addons: &defaults { apt: { packages: ["clang-5.0", "valgrind"], sources: ["ubuntu-toolchain-r-test", "llvm-toolchain-trusty-5.0"] } }
51+
addons: { apt: { packages: ["clang-5.0", "valgrind"], sources: ["ubuntu-toolchain-r-test", "llvm-toolchain-trusty-5.0"] } }
52+
53+
# Clang 6.0
54+
- env: UNIT_TESTS=true COMPILER=clang++-6.0 BOOST_VERSION=default ENABLE_MEMCHECK=true
55+
addons: { apt: { packages: ["clang-6.0", "valgrind"], sources: ["ubuntu-toolchain-r-test", "llvm-toolchain-trusty-6.0"] } }
56+
57+
# Clang 7.0
58+
- env: UNIT_TESTS=true COMPILER=clang++-7 BOOST_VERSION=default ENABLE_MEMCHECK=true
59+
addons: &defaults { apt: { packages: ["clang-7", "valgrind"], sources: ["ubuntu-toolchain-r-test", "llvm-toolchain-trusty-7"] } }
5260

5361
# GCC 6
5462
- env: UNIT_TESTS=true COMPILER=g++-6 BOOST_VERSION=default ENABLE_MEMCHECK=true
@@ -58,6 +66,10 @@ matrix:
5866
- env: UNIT_TESTS=true COMPILER=g++-7 BOOST_VERSION=default ENABLE_MEMCHECK=true
5967
addons: { apt: { packages: ["g++-7", "valgrind"], sources: ["ubuntu-toolchain-r-test"] } }
6068

69+
# GCC 8
70+
- env: UNIT_TESTS=true COMPILER=g++-8 BOOST_VERSION=default ENABLE_MEMCHECK=true
71+
addons: { apt: { packages: ["g++-8", "valgrind"], sources: ["ubuntu-toolchain-r-test"] } }
72+
6173
# Xcode 6.4
6274
- os: osx
6375
env: UNIT_TESTS=true BOOST_VERSION=default
@@ -81,12 +93,16 @@ matrix:
8193
##########################################################################
8294
# Build with variations in the configuration
8395
##########################################################################
84-
# With C++17 instead of C++14, on Clang
85-
- env: UNIT_TESTS=true COMPILER=default BOOST_VERSION=default CMAKE_OPTIONS="-DBOOST_HANA_ENABLE_CPP17=ON"
96+
# With C++17, on Clang
97+
- env: UNIT_TESTS=true COMPILER=default BOOST_VERSION=default CMAKE_OPTIONS="-DCMAKE_CXX_STANDARD=17 -DCMAKE_CXX_STANDARD_REQUIRED=ON"
98+
addons: *defaults
99+
100+
# With C++20, on Clang
101+
- env: UNIT_TESTS=true COMPILER=default BOOST_VERSION=default CMAKE_OPTIONS="-DCMAKE_CXX_STANDARD=20 -DCMAKE_CXX_STANDARD_REQUIRED=ON"
86102
addons: *defaults
87103

88-
# With C++17 instead of C++14, on GCC
89-
- env: UNIT_TESTS=true COMPILER=g++-6 BOOST_VERSION=default CMAKE_OPTIONS="-DBOOST_HANA_ENABLE_CPP17=ON"
104+
# With C++17, on GCC
105+
- env: UNIT_TESTS=true COMPILER=g++-6 BOOST_VERSION=default CMAKE_OPTIONS="-DCMAKE_CXX_STANDARD=17 -DCMAKE_CXX_STANDARD_REQUIRED=ON"
90106
addons: { apt: { packages: ["g++-6", "valgrind"], sources: ["ubuntu-toolchain-r-test"] } }
91107

92108
# Without concept checks
@@ -161,7 +177,7 @@ install:
161177
############################################################################
162178
# Setup default versions and override CXX set by Travis if needed
163179
############################################################################
164-
- if [[ "${COMPILER}" == "default" ]]; then COMPILER=clang++-5.0; fi
180+
- if [[ "${COMPILER}" == "default" ]]; then COMPILER=clang++-7; fi
165181
- if [[ "${BOOST_VERSION}" == "default" ]]; then BOOST_VERSION=1.66.0; fi
166182

167183
- if [[ "${COMPILER}" != "" ]]; then export CXX=${COMPILER}; fi
@@ -222,7 +238,9 @@ install:
222238
elif [[ "${CXX}" == "clang++-3.8" ]]; then LLVM_VERSION="3.8.1";
223239
elif [[ "${CXX}" == "clang++-3.9" ]]; then LLVM_VERSION="3.9.1";
224240
elif [[ "${CXX}" == "clang++-4.0" ]]; then LLVM_VERSION="4.0.1";
225-
elif [[ "${CXX}" == "clang++-5.0" ]]; then LLVM_VERSION="5.0.1";
241+
elif [[ "${CXX}" == "clang++-5.0" ]]; then LLVM_VERSION="5.0.2";
242+
elif [[ "${CXX}" == "clang++-6.0" ]]; then LLVM_VERSION="6.0.1";
243+
elif [[ "${CXX}" == "clang++-7" ]]; then LLVM_VERSION="7.0.1";
226244
fi
227245
228246
LLVM_URL="http://llvm.org/releases/${LLVM_VERSION}/llvm-${LLVM_VERSION}.src.tar.xz"

Diff for: CMakeLists.txt

+10-14
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@ list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake")
1010
##############################################################################
1111
option(BOOST_HANA_ENABLE_CONCEPT_CHECKS "Enable concept checking in the interface methods." ON)
1212
option(BOOST_HANA_ENABLE_DEBUG_MODE "Enable Hana's debug mode." OFF)
13-
option(BOOST_HANA_ENABLE_CPP17 "Build with C++17 instead of usual required C++ standard. Useful for testing." OFF)
1413

1514
option(BOOST_HANA_ENABLE_STRING_UDL
1615
"Enable the GNU extension allowing the special string literal operator\
@@ -50,11 +49,7 @@ include(CheckCxxCompilerSupport)
5049
include(CheckCXXCompilerFlag)
5150
add_library(hana INTERFACE)
5251
target_include_directories(hana INTERFACE "$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>")
53-
if (BOOST_HANA_ENABLE_CPP17)
54-
target_compile_features(hana INTERFACE cxx_std_17)
55-
else()
56-
target_compile_features(hana INTERFACE cxx_std_14)
57-
endif()
52+
target_compile_features(hana INTERFACE cxx_std_14)
5853

5954
# Export the `hana` library into a HanaConfig.cmake file
6055
install(TARGETS hana
@@ -86,14 +81,15 @@ function(boost_hana_set_test_properties target)
8681
endmacro()
8782

8883
if (NOT MSVC)
89-
setflag(BOOST_HANA_HAS_FDIAGNOSTICS_COLOR -fdiagnostics-color)
90-
setflag(BOOST_HANA_HAS_FTEMPLATE_BACKTRACE_LIMIT -ftemplate-backtrace-limit=0)
91-
setflag(BOOST_HANA_HAS_PEDANTIC -pedantic)
92-
setflag(BOOST_HANA_HAS_WALL -Wall)
93-
setflag(BOOST_HANA_HAS_WERROR -Werror)
94-
setflag(BOOST_HANA_HAS_WEXTRA -Wextra)
95-
setflag(BOOST_HANA_HAS_WNO_UNUSED_LOCAL_TYPEDEFS -Wno-unused-local-typedefs)
96-
setflag(BOOST_HANA_HAS_WWRITE_STRINGS -Wwrite-strings)
84+
setflag(BOOST_HANA_HAS_FDIAGNOSTICS_COLOR -fdiagnostics-color)
85+
setflag(BOOST_HANA_HAS_FTEMPLATE_BACKTRACE_LIMIT -ftemplate-backtrace-limit=0)
86+
setflag(BOOST_HANA_HAS_PEDANTIC -pedantic)
87+
setflag(BOOST_HANA_HAS_WALL -Wall)
88+
setflag(BOOST_HANA_HAS_WERROR -Werror)
89+
setflag(BOOST_HANA_HAS_WEXTRA -Wextra)
90+
setflag(BOOST_HANA_HAS_WNO_SELF_ASSIGN_OVERLOADED -Wno-self-assign-overloaded)
91+
setflag(BOOST_HANA_HAS_WNO_UNUSED_LOCAL_TYPEDEFS -Wno-unused-local-typedefs)
92+
setflag(BOOST_HANA_HAS_WWRITE_STRINGS -Wwrite-strings)
9793
else()
9894
setflag(BOOST_HANA_HAS_MSVC_EHSC -EHsc)
9995
setflag(BOOST_HANA_HAS_MSVC_BIGOBJ -bigobj)

Diff for: doc/tutorial.hpp

+2-2
Original file line numberDiff line numberDiff line change
@@ -846,7 +846,7 @@ constexpr auto operator"" _c() {
846846
// parse the digits and return an integral_constant
847847
}
848848
849-
auto three = 1_c + 3_c;
849+
auto three = 1_c + 2_c;
850850
@endcode
851851
852852
Hana provides its own `integral_constant`s, which define arithmetic operators
@@ -860,7 +860,7 @@ your namespace before using it:
860860
@code{cpp}
861861
using namespace hana::literals;
862862
863-
auto three = 1_c + 3_c;
863+
auto three = 1_c + 2_c;
864864
@endcode
865865
866866
This way, you may do compile-time arithmetic without having to struggle with

Diff for: include/boost/hana/version.hpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ Distributed under the Boost Software License, Version 1.0.
2424

2525
//! @ingroup group-config
2626
//! Macro expanding to the minor version of the library, i.e. the `y` in `x.y.z`.
27-
#define BOOST_HANA_MINOR_VERSION 5
27+
#define BOOST_HANA_MINOR_VERSION 6
2828

2929
//! @ingroup group-config
3030
//! Macro expanding to the patch level of the library, i.e. the `z` in `x.y.z`.

Diff for: test/functional.cpp

+1
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ template <int i = 0>
2222
struct undefined { };
2323

2424
struct move_only {
25+
move_only() = default;
2526
move_only(move_only&&) = default;
2627
move_only(move_only const&) = delete;
2728
};

0 commit comments

Comments
 (0)