Merge pull request #289 from boostorg/gcc9

Add gcc-9, clang-8, xcode-10 to test matrix.
This commit is contained in:
jzmaddock
2019-06-28 18:24:33 +01:00
committed by GitHub
5 changed files with 109 additions and 82 deletions

View File

@@ -124,6 +124,17 @@ matrix:
sources:
- ubuntu-toolchain-r-test
- os: linux
dist: trusty
compiler: g++-9
env: TOOLSET=gcc COMPILER=g++-9 CXXSTD=03,11,14,17,2a
addons:
apt:
packages:
- g++-9
sources:
- ubuntu-toolchain-r-test
- os: linux
env: TOOLSET=clang COMPILER=clang++ CXXSTD=03,11
@@ -250,9 +261,24 @@ matrix:
- ubuntu-toolchain-r-test
- llvm-toolchain-xenial-7
- os: linux
compiler: clang++-8
env: TOOLSET=clang COMPILER=clang++-8 CXXSTD=03,11,14,17,2a
addons:
apt:
packages:
- clang-8
sources:
- ubuntu-toolchain-r-test
- llvm-toolchain-xenial-8
- os: osx
env: TOOLSET=clang COMPILER=clang++ CXXSTD=03,11,14,17,2a
osx_image: xcode10.2
- os: osx
env: TOOLSET=clang COMPILER=clang++ CXXSTD=03,11,14,1z
osx_image: xcode9.1
osx_image: xcode9.4
- os: osx
env: TOOLSET=clang COMPILER=clang++ CXXSTD=03,11,14,1z

View File

@@ -999,7 +999,7 @@ namespace std{ using ::type_info; }
#if __has_cpp_attribute(nodiscard)
# define BOOST_ATTRIBUTE_NODISCARD [[nodiscard]]
#endif
#if __has_cpp_attribute(no_unique_address)
#if __has_cpp_attribute(no_unique_address) && !(defined(__GNUC__) && (__cplusplus < 201100))
# define BOOST_ATTRIBUTE_NO_UNIQUE_ADDRESS [[no_unique_address]]
#endif
#endif

View File

@@ -21,11 +21,17 @@
namespace boost_no_cxx11_hdr_atomic {
void consume(std::memory_order)
{}
int test()
{
std::memory_order m = static_cast<std::memory_order>(std::memory_order_relaxed | std::memory_order_consume | std::memory_order_acquire | std::memory_order_release
| std::memory_order_acq_rel | std::memory_order_seq_cst);
(void)m;
consume(std::memory_order_relaxed);
consume(std::memory_order_consume);
consume(std::memory_order_acquire);
consume(std::memory_order_release);
consume(std::memory_order_acq_rel);
consume(std::memory_order_seq_cst);
std::atomic<int> a1;
std::atomic<unsigned> a2;

View File

@@ -17,7 +17,7 @@ void quiet_warning(const CharT*){}
int test()
{
#ifdef __cpp_char8_type
#if defined(__cpp_char8_type) || defined(__cpp_char8_t)
// The change to char8_t in C++20 is a breaking change to the std:
const char8_t* c8 = u8"";
#else

View File

@@ -1231,25 +1231,6 @@ void print_boost_macros()
PRINT_MACRO(BOOST_NO_USING_TEMPLATE);
PRINT_MACRO(BOOST_NO_VOID_RETURNS);
// END GENERATED BLOCK
PRINT_MACRO(BOOST_INTEL);
@@ -1267,12 +1248,26 @@ void print_boost_macros()
PRINT_MACRO(BOOST_FALLTHROUGH);
PRINT_MACRO(BOOST_MAY_ALIAS);
PRINT_MACRO(BOOST_NO_MAY_ALIAS);
PRINT_MACRO(BOOST_ATTRIBUTE_NO_UNIQUE_ADDRESS);
PRINT_MACRO(BOOST_ATTRIBUTE_UNUSED);
PRINT_MACRO(BOOST_UNLIKELY);
PRINT_MACRO(BOOST_NORETURN);
}
void print_sd6_macros()
{
// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2017/p0096r5.html
// C++20:
PRINT_MACRO(__cpp_aggregate_paren_init);
PRINT_MACRO(__cpp_char8_t);
PRINT_MACRO(__cpp_char8_type);
PRINT_MACRO(__cpp_conditional_explicit);
PRINT_MACRO(__cpp_coroutines);
PRINT_MACRO(__cpp_impl_destroying_delete);
PRINT_MACRO(__cpp_impl_three_way_comparison);
PRINT_MACRO(__cpp_nontype_template_parameter_class);
// C++17:
PRINT_MACRO(__cpp_hex_float);
PRINT_MACRO(__cpp_inline_variables);