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);
+     }
+ 
+ } }

Reply via email to