Compare commits

...

4 Commits

Author SHA1 Message Date
Peter Dimov
4d1fd43d72 Update supported compilers in documentation and README 2022-10-27 21:25:57 +03:00
Peter Dimov
376925a209 Work around msvc-14.1 /permissive- failure 2022-10-24 15:47:09 +03:00
Peter Dimov
bcb8796225 Add /permissive- jobs to Drone and Appveyor 2022-10-24 15:27:05 +03:00
Peter Dimov
a948b85c74 Update revision history 2022-10-18 17:38:59 +03:00
7 changed files with 33 additions and 5 deletions

View File

@@ -249,12 +249,24 @@ local windows_pipeline(name, image, environment, arch = "amd64") =
{ TOOLSET: 'msvc-14.1', CXXSTD: '14,17,latest' },
),
windows_pipeline(
"Windows VS2017 msvc-14.1 Strict",
"cppalliance/dronevs2017",
{ TOOLSET: 'msvc-14.1', CXXSTD: '14,17,latest', CXXFLAGS: '/permissive-' },
),
windows_pipeline(
"Windows VS2019 msvc-14.2",
"cppalliance/dronevs2019",
{ TOOLSET: 'msvc-14.2', CXXSTD: '14,17,20,latest' },
),
windows_pipeline(
"Windows VS2019 msvc-14.2 Strict",
"cppalliance/dronevs2019",
{ TOOLSET: 'msvc-14.2', CXXSTD: '14,17,20,latest', CXXFLAGS: '/permissive-' },
),
windows_pipeline(
"Windows VS2022 msvc-14.3",
"cppalliance/dronevs2022:1",

View File

@@ -20,4 +20,5 @@ b2 -d0 headers
if not "%CXXSTD%" == "" set CXXSTD=cxxstd=%CXXSTD%
if not "%ADDRMD%" == "" set ADDRMD=address-model=%ADDRMD%
b2 -j3 libs/%LIBRARY%/test toolset=%TOOLSET% %CXXSTD% %ADDRMD% variant=debug,release embed-manifest-via=linker
if not "%CXXFLAGS%" == "" set CXXFLAGS=cxxflags=%CXXFLAGS%
b2 -j3 libs/%LIBRARY%/test toolset=%TOOLSET% %CXXSTD% %ADDRMD% %CXXFLAGS% variant=debug,release embed-manifest-via=linker

View File

@@ -12,7 +12,7 @@ Supported compilers:
* g++ 4.8 or later with `-std=c++11` or above
* clang++ 3.9 or later with `-std=c++11` or above
* Visual Studio 2015, 2017, 2019
* Visual Studio 2015 or later
Tested on [Github Actions](https://github.com/boostorg/variant2/actions) and
[Appveyor](https://ci.appveyor.com/project/pdimov/variant2-fkab9).

View File

@@ -21,6 +21,11 @@ environment:
TOOLSET: msvc-14.1
ADDRMD: 32,64
CXXSTD: 14,17,latest
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
TOOLSET: msvc-14.1
ADDRMD: 32,64
CXXSTD: 14,17,latest
CXXFLAGS: /permissive-
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
TOOLSET: clang-win
ADDRMD: 64
@@ -51,4 +56,5 @@ build: off
test_script:
- if not "%CXXSTD%" == "" set CXXSTD=cxxstd=%CXXSTD%
- if not "%ADDRMD%" == "" set ADDRMD=address-model=%ADDRMD%
- b2 -j3 libs/variant2/test toolset=%TOOLSET% %CXXSTD% %ADDRMD% variant=debug,release embed-manifest-via=linker
- if not "%CXXFLAGS%" == "" set CXXFLAGS=cxxflags=%CXXFLAGS%
- b2 -j3 libs/variant2/test toolset=%TOOLSET% %CXXSTD% %ADDRMD% %CXXFLAGS% variant=debug,release embed-manifest-via=linker

View File

@@ -1,5 +1,5 @@
////
Copyright 2019-2021 Peter Dimov
Copyright 2019-2022 Peter Dimov
Distributed under the Boost Software License, Version 1.0.
https://www.boost.org/LICENSE_1_0.txt
////
@@ -8,6 +8,10 @@ https://www.boost.org/LICENSE_1_0.txt
# Revision History
:idprefix: changelog_
## Changes in 1.81.0
* Added support for `boost::json::value_from` and `boost::json::value_to`.
## Changes in 1.79.0
* Added `operator<<` for `monostate`.

View File

@@ -16,7 +16,7 @@ This implementation only depends on Boost.Config, Boost.Assert, and Boost.Mp11.
* GCC 4.8 or later with `-std=c++11` or above
* Clang 3.9 or later with `-std=c++11` or above
* Visual Studio 2015, 2017, 2019
* Visual Studio 2015 or later
Tested on https://github.com/boostorg/variant2/actions[Github Actions] and
https://ci.appveyor.com/project/pdimov/variant2-fkab9[Appveyor].

View File

@@ -2448,6 +2448,11 @@ struct tag_invoke_L1
{
boost::json::value& v;
#if defined(BOOST_MSVC) && BOOST_MSVC / 10 == 191
// msvc-14.1 with /permissive- needs this
explicit tag_invoke_L1( boost::json::value& v_ ): v( v_ ) {}
#endif
template<class T> void operator()( T const& t ) const
{
boost::json::value_from( t, v );