git: b733ae96495f - 2024Q3 - databases/sfcgal: fix build with clang 19
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sun, 25 Aug 2024 11:38:14 UTC
The branch 2024Q3 has been updated by dim:
URL: https://cgit.FreeBSD.org/ports/commit/?id=b733ae96495fdd841d5955ddca4365927ddb5321
commit b733ae96495fdd841d5955ddca4365927ddb5321
Author: Dimitry Andric <dim@FreeBSD.org>
AuthorDate: 2024-08-10 19:17:34 +0000
Commit: Dimitry Andric <dim@FreeBSD.org>
CommitDate: 2024-08-25 11:37:53 +0000
databases/sfcgal: fix build with clang 19
Clang 19 now diagnoses incorrect member accesses, which causes
databases/sfcgal to fail with errors similar to:
/wrkdirs/usr/ports/databases/sfcgal/work/CGAL-5.6.1/include/CGAL/boost/graph/iterator.h:219:22: error: no member named 'base' in 'Halfedge_around_source_iterator<Graph>'
219 | return (! (this->base() == nullptr));
| ~~~~ ^
/wrkdirs/usr/ports/databases/sfcgal/work/CGAL-5.6.1/include/CGAL/boost/graph/iterator.h:313:22: error: no member named 'base' in 'Halfedge_around_target_iterator<Graph>'
313 | return (! (this->base() == nullptr));
| ~~~~ ^
/wrkdirs/usr/ports/databases/sfcgal/work/CGAL-5.6.1/include/CGAL/boost/graph/iterator.h:405:22: error: no member named 'base' in 'Halfedge_around_face_iterator<Graph>'
405 | return (! (this->base() == nullptr));
| ~~~~ ^
Upstream fixed this in https://github.com/CGAL/cgal/commit/0de060acd68
but it does not apply easily due to some changed context. Add a
backported patch instead.
PR: 280737
Approved by: maintainer timeout (2 weeks)
MFH: 2024Q3
(cherry picked from commit 6a668853ee5c59d92fc9dd6e4d2279d3e5a4eff1)
---
.../patch-include_CGAL_boost_graph_iterator.h | 38 ++++++++++++++++++++++
1 file changed, 38 insertions(+)
diff --git a/databases/sfcgal/files/patch-include_CGAL_boost_graph_iterator.h b/databases/sfcgal/files/patch-include_CGAL_boost_graph_iterator.h
new file mode 100644
index 000000000000..b02e6b3a1723
--- /dev/null
+++ b/databases/sfcgal/files/patch-include_CGAL_boost_graph_iterator.h
@@ -0,0 +1,38 @@
+--- ../CGAL-5.6.1/include/CGAL/boost/graph/iterator.h 2024-02-24 21:04:12 UTC
++++ ../CGAL-5.6.1/include/CGAL/boost/graph/iterator.h
+@@ -214,11 +214,6 @@ class Halfedge_around_source_iterator { (public)
+
+ #ifndef DOXYGEN_RUNNING
+
+- explicit operator bool() const
+- {
+- return (! (this->base() == nullptr));
+- }
+-
+ bool operator==( const Self& i) const {
+ CGAL_assertion( anchor == anchor);
+ return ( g == i.g) && ( pos == i.pos) && ( winding == i.winding);
+@@ -308,11 +303,6 @@ class Halfedge_around_target_iterator { (public)
+
+ #ifndef DOXYGEN_RUNNING
+
+- explicit operator bool() const
+- {
+- return (! (this->base() == nullptr));
+- }
+-
+ bool operator==( const Self& i) const {
+ CGAL_assertion( anchor == anchor);
+ return ( g == i.g) && ( pos == i.pos) && ( winding == i.winding);
+@@ -399,11 +389,6 @@ class Halfedge_around_face_iterator { (public)
+ const value_type& operator * ( ) const { return pos; }
+ pointer operator -> ( ) { return &pos; }
+ const value_type* operator -> ( ) const { return &pos; }
+-
+- explicit operator bool() const
+- {
+- return (! (this->base() == nullptr));
+- }
+
+ bool operator==( const Self& i) const {
+ CGAL_assertion( anchor == anchor);