Add patch for C++20 compatibility in Boost.Test (#1832639)

This commit is contained in:
Jonathan Wakely 2020-05-11 13:03:48 +01:00
parent 434963c709
commit 5d6038484f
2 changed files with 58 additions and 1 deletions

View File

@ -0,0 +1,50 @@
From 8ac88c62dcc809d42daf8b6bef10f7adecc46dd1 Mon Sep 17 00:00:00 2001
From: Laurent Stacul <laurent.stacul@amadeus.com>
Date: Mon, 17 Feb 2020 08:57:49 +0000
Subject: [PATCH] Fix compilation issue due to deleted
std::basic_ostream::operator<< overload
---
include/boost/test/impl/test_tools.ipp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/include/boost/test/impl/test_tools.ipp b/include/boost/test/impl/test_tools.ipp
index 40f24e6399..e4d61660b8 100644
--- a/include/boost/test/impl/test_tools.ipp
+++ b/include/boost/test/impl/test_tools.ipp
@@ -124,7 +124,7 @@ print_log_value<char const*>::operator()( std::ostream& ostr, char const* t )
void
print_log_value<wchar_t const*>::operator()( std::ostream& ostr, wchar_t const* t )
{
- ostr << ( t ? t : L"null string" );
+ ostr << ( t ? reinterpret_cast<const void*>(t) : "null string" );
}
//____________________________________________________________________________//
From db6b98c72783351e0acd3c558691323a7a103ba9 Mon Sep 17 00:00:00 2001
From: Raffi Enficiaud <raffi.enficiaud@mines-paris.org>
Date: Sat, 9 May 2020 10:42:38 +0200
Subject: [PATCH] Fixing cast issue when logging wchar_t
---
include/boost/test/impl/test_tools.ipp | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/include/boost/test/impl/test_tools.ipp b/include/boost/test/impl/test_tools.ipp
index 025cd1a92a..bbee21fbbc 100644
--- a/include/boost/test/impl/test_tools.ipp
+++ b/include/boost/test/impl/test_tools.ipp
@@ -124,7 +124,12 @@ print_log_value<char const*>::operator()( std::ostream& ostr, char const* t )
void
print_log_value<wchar_t const*>::operator()( std::ostream& ostr, wchar_t const* t )
{
- ostr << ( t ? reinterpret_cast<const void*>(t) : "null string" );
+ if(t) {
+ ostr << static_cast<const void*>(t);
+ }
+ else {
+ ostr << "null w-string";
+ }
}
//____________________________________________________________________________//

View File

@ -42,7 +42,7 @@ Name: boost
%global real_name boost
Summary: The free peer-reviewed portable C++ source libraries
Version: 1.69.0
Release: 16%{?dist}
Release: 17%{?dist}
License: Boost and MIT and Python
# Replace each . with _ in %%{version}
@ -150,6 +150,9 @@ Patch85: boost-1.69-mpi-c_data.patch
# https://bugzilla.redhat.com/show_bug.cgi?id=1818723
Patch86: boost-1.69-format-allocator.patch
# https://bugzilla.redhat.com/show_bug.cgi?id=1832639
Patch87: boost-1.69.0-test-cxx20.patch
%bcond_with tests
%bcond_with docs_generated
@ -654,6 +657,7 @@ find ./boost -name '*.hpp' -perm /111 | xargs chmod a-x
%patch84 -p2
%patch85 -p2
%patch86 -p1
%patch87 -p2
%build
# Dump the versions being used into the build logs.
@ -1239,6 +1243,9 @@ fi
%{_mandir}/man1/bjam.1*
%changelog
* Mon May 11 2020 Jonathan Wakely <jwakely@redhat.com> - 1.69.0-17
- Add patch for C++20 compatibility in Boost.Test (#1832639)
* Thu Apr 02 2020 Jonathan Wakely <jwakely@redhat.com> - 1.69.0-16
- Drop boost-1.57.0-mpl-print.patch patch that doesn't work
- Remove vestigial parts of separate python2/python3 build