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. --- include/boost/phoenix/stl/tuple.hpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/boost/phoenix/stl/tuple.hpp b/include/boost/phoenix/stl/tuple.hpp index a83014a..7f61a40 100644 --- a/include/boost/phoenix/stl/tuple.hpp +++ b/include/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.38.1