diff --git a/boost-1.81-phoenix-Update-avoid-placeholders-uarg1.10-ODR-violates.patch b/boost-1.81-phoenix-Update-avoid-placeholders-uarg1.10-ODR-violates.patch new file mode 100644 index 0000000000000000000000000000000000000000..da21d4102d652598c282428b72f91fc8f870aed8 --- /dev/null +++ b/boost-1.81-phoenix-Update-avoid-placeholders-uarg1.10-ODR-violates.patch @@ -0,0 +1,27 @@ +From 50973dc10ea16931245ea61a00b2ce9041acc5ba Mon Sep 17 00:00:00 2001 +From: Stephan Bergmann +Date: Wed, 4 Jan 2023 17:33:31 +0100 +Subject: [PATCH] Avoid boost::phoenix::placeholders::uarg1..10 ODR violations + +Those variables, defined in an include file, had external linkage, causing ODR +violations. Make them const to implicitly give them internal linkage. +--- + boost/phoenix/stl/tuple.hpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/boost/phoenix/stl/tuple.hpp b/boost/phoenix/stl/tuple.hpp +index a83014a..7f61a40 100644 +--- a/boost/phoenix/stl/tuple.hpp ++++ b/boost/phoenix/stl/tuple.hpp +@@ -110,7 +110,7 @@ namespace boost { namespace phoenix { + namespace placeholders { + #define BOOST_PP_LOCAL_LIMITS (1, BOOST_PHOENIX_ARG_LIMIT) + #define BOOST_PP_LOCAL_MACRO(N) \ +- auto uarg##N = \ ++ auto const uarg##N = \ + boost::phoenix::get_<(N)-1>(boost::phoenix::placeholders::arg1); + #include BOOST_PP_LOCAL_ITERATE() + } +-- +2.27.0 + diff --git a/boost.spec b/boost.spec index 4688d5c7383772aa1c0d92fcc06c170396c71519..d1cab29c6fd19c677a4c34287ddeb027d648dd47 100644 --- a/boost.spec +++ b/boost.spec @@ -2,7 +2,7 @@ Name: boost Version: 1.81.0 -Release: 1 +Release: 2 Summary: The free peer-reviewed portable C++ source libraries License: BSL-1.0 URL: http://www.boost.org @@ -18,6 +18,8 @@ Patch2: boost-1.81-graph-Dont-run-performance-test-in-CI.patch Patch3: boost-1.81-random-Update-multiprecision_float_test.cpp-to-not-overflow.patch Patch4: boost-1.81-random-Update-multiprecision_int_test.cpp-to-not-accidental.patch Patch5: boost-1.81-random-test-Add-missing-includes.patch +# https://github.com/boostorg/phoenix/pull/116 +Patch6: boost-1.81-phoenix-Update-avoid-placeholders-uarg1.10-ODR-violates.patch Requires: %{name}-atomic%{?_isa} = %{version}-%{release} Requires: %{name}-chrono%{?_isa} = %{version}-%{release} @@ -444,6 +446,9 @@ find libs -name example -exec cp {} boost-example --parents -r \; %{_libdir}/*.a %changelog +* Mon Sep 04 2023 Darssin <2020303249@mail.nwpu.edu.cn> - 1.81.0-2 +- Avoid boost::phoenix::placeholders::uarg1..10 ODR violations + * Mon Dec 19 2022 Liu Zixian - 1.81.0-1 - Update to 1.81.0