Thursday, January 30, 2025

Re: [llvm 19] boost: fix quat_traits.hpp

OK.

On 2025-01-30 8:03 p.m., Theo Buehler wrote:
> Another obvious fix. This makes cad/pcb2gcode build with llvm 19.
>
> https://github.com/boostorg/qvm/commit/c4b9c063a076644575fe9a685c02cd4c10d24405
>
> The pcb2gcode configure script would error out and contain:
>
> /usr/local/include/boost/qvm/quat_traits.hpp:82:30: error: a template argument list is expected after a name prefixed by the template keyword [-Wmissing-template-arg-list-after-template-kw]
> 82 | quat_traits<Q>::template write_element_idx(i, q) = s;
> | ^
> /usr/local/include/boost/qvm/quat_traits.hpp:92:30: error: a template argument list is expected after a name prefixed by the template keyword [-Wmissing-template-arg-list-after-template-kw]
> 92 | quat_traits<Q>::template write_element_idx(i, q, s);
> | ^
> 2 errors generated.
>
> Index: Makefile
> ===================================================================
> RCS file: /cvs/ports/devel/boost/Makefile,v
> diff -u -p -r1.150 Makefile
> --- Makefile 30 Jan 2025 21:54:30 -0000 1.150
> +++ Makefile 31 Jan 2025 00:50:03 -0000
> @@ -8,7 +8,7 @@ COMMENT-md= machine-dependent libraries
> VERSION= 1.84.0
> DISTNAME= boost_${VERSION:S/./_/g}
> PKGNAME= boost-${VERSION}
> -REVISION= 6
> +REVISION= 7
> EPOCH= 0
> CATEGORIES= devel
> SITES= https://archives.boost.io/release/${VERSION}/source/
> Index: patches/patch-boost_qvm_quat_traits_hpp
> ===================================================================
> RCS file: patches/patch-boost_qvm_quat_traits_hpp
> diff -N patches/patch-boost_qvm_quat_traits_hpp
> --- /dev/null 1 Jan 1970 00:00:00 -0000
> +++ patches/patch-boost_qvm_quat_traits_hpp 31 Jan 2025 00:23:46 -0000
> @@ -0,0 +1,23 @@
> +https://github.com/boostorg/qvm/commit/c4b9c063a076644575fe9a685c02cd4c10d24405
> +
> +Index: boost/qvm/quat_traits.hpp
> +--- boost/qvm/quat_traits.hpp.orig
> ++++ boost/qvm/quat_traits.hpp
> +@@ -79,7 +79,7 @@ typename enable_if_c<
> + void>::type
> + write_quat_element_idx( int i, Q & q, typename quat_traits<Q>::scalar_type s )
> + {
> +- quat_traits<Q>::template write_element_idx(i, q) = s;
> ++ quat_traits<Q>::write_element_idx(i, q) = s;
> + }
> +
> + template <class Q>
> +@@ -89,7 +89,7 @@ typename enable_if_c<
> + void>::type
> + write_vec_element_idx( int i, Q & q, typename quat_traits<Q>::scalar_type s )
> + {
> +- quat_traits<Q>::template write_element_idx(i, q, s);
> ++ quat_traits<Q>::write_element_idx(i, q, s);
> + }
> +
> + } }

No comments:

Post a Comment