Date: Sun, 19 Jan 2025 18:33:52 GMT From: Dimitry Andric <dim@FreeBSD.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-branches@FreeBSD.org Subject: git: 2a47978486c9 - 2025Q1 - math/linbox: fix build with clang 19 Message-ID: <202501191833.50JIXqgi065592@gitrepo.freebsd.org>
next in thread | raw e-mail | index | archive | help
The branch 2025Q1 has been updated by dim: URL: https://cgit.FreeBSD.org/ports/commit/?id=2a47978486c99459386f37bec701543bf001d6b8 commit 2a47978486c99459386f37bec701543bf001d6b8 Author: Dimitry Andric <dim@FreeBSD.org> AuthorDate: 2025-01-19 18:31:50 +0000 Commit: Dimitry Andric <dim@FreeBSD.org> CommitDate: 2025-01-19 18:33:28 +0000 math/linbox: fix build with clang 19 Clang 19 has become more strict about errors in member functions, which results in errors building math/linbox: ../../linbox/vector/blas-subvector.h:121:20: error: no member named 'data' in 'BlasSubvector<_Vector>' 121 | _ptr(V.data()+beg), _size(dim), _inc(inc), _field(&V.field()) {} | ~ ^ ../../linbox/matrix/sparsematrix/sparse-ell-matrix.h:1216:16: error: cannot assign to non-static data member '_ld' with const-qualified type 'const size_t &' (aka 'const unsigned long &') 1216 | _ld = iter._ld ; | ~~~ ^ ../../linbox/matrix/sparsematrix/sparse-ellr-matrix.h:1108:12: error: no viable overloaded '=' 1108 | _rowid = iter._rowid; | ~~~~~~ ^ ~~~~~~~~~~~ In all these cases, the methods where the errors occur are not actually used, so until upstream sorts out their incorrect code, stub them out using #if 0/#endif pairs. PR: 284159 Approved by: thierry (maintainer) MFH: 2025Q1 (cherry picked from commit 6e2222799ebf6ff0a12bed3798fc0cc0e71e1e55) --- ...-linbox_matrix_sparsematrix_sparse-ell-matrix.h | 18 ++++++++++++ ...linbox_matrix_sparsematrix_sparse-ellr-matrix.h | 34 ++++++++++++++++++++++ .../files/patch-linbox_vector_blas-subvector.h | 13 +++++++++ 3 files changed, 65 insertions(+) diff --git a/math/linbox/files/patch-linbox_matrix_sparsematrix_sparse-ell-matrix.h b/math/linbox/files/patch-linbox_matrix_sparsematrix_sparse-ell-matrix.h new file mode 100644 index 000000000000..efde096e0e7e --- /dev/null +++ b/math/linbox/files/patch-linbox_matrix_sparsematrix_sparse-ell-matrix.h @@ -0,0 +1,18 @@ +--- linbox/matrix/sparsematrix/sparse-ell-matrix.h.orig 2021-12-14 10:16:03 UTC ++++ linbox/matrix/sparsematrix/sparse-ell-matrix.h +@@ -1205,6 +1205,7 @@ namespace LinBox + , _row(iter._row) + {} + ++#if 0 + _IndexedIterator &operator = (const _IndexedIterator &iter) + { + _colid_beg = iter._colid_beg ; +@@ -1218,6 +1219,7 @@ namespace LinBox + + return *this; + } ++#endif + + bool operator == (const _IndexedIterator &i) const + { diff --git a/math/linbox/files/patch-linbox_matrix_sparsematrix_sparse-ellr-matrix.h b/math/linbox/files/patch-linbox_matrix_sparsematrix_sparse-ellr-matrix.h new file mode 100644 index 000000000000..bd8b3eaf95c8 --- /dev/null +++ b/math/linbox/files/patch-linbox_matrix_sparsematrix_sparse-ellr-matrix.h @@ -0,0 +1,34 @@ +--- linbox/matrix/sparsematrix/sparse-ellr-matrix.h.orig 2021-12-14 10:16:03 UTC ++++ linbox/matrix/sparsematrix/sparse-ellr-matrix.h +@@ -1099,6 +1099,7 @@ namespace LinBox + + {} + ++#if 0 + _Iterator &operator = (const _Iterator &iter) + { + _data_it = iter._data_it ; +@@ -1111,6 +1112,7 @@ namespace LinBox + + return *this; + } ++#endif + + bool operator == (const _Iterator &i) const + { +@@ -1246,6 +1248,7 @@ namespace LinBox + , _row(iter._row) + {} + ++#if 0 + _IndexedIterator &operator = (const _IndexedIterator &iter) + { + _rowid_it = iter._rowid_it ; +@@ -1260,6 +1263,7 @@ namespace LinBox + + return *this; + } ++#endif + + bool operator == (const _IndexedIterator &i) const + { diff --git a/math/linbox/files/patch-linbox_vector_blas-subvector.h b/math/linbox/files/patch-linbox_vector_blas-subvector.h new file mode 100644 index 000000000000..00c6e129b8aa --- /dev/null +++ b/math/linbox/files/patch-linbox_vector_blas-subvector.h @@ -0,0 +1,13 @@ +--- linbox/vector/blas-subvector.h.orig 2021-12-14 10:16:03 UTC ++++ linbox/vector/blas-subvector.h +@@ -117,8 +117,10 @@ namespace LinBox { + * \param dim dimension + * \param inc distance between two element + */ ++#if 0 + BlasSubvector (Self_t &V, size_t beg, size_t inc, size_t dim) : + _ptr(V.data()+beg), _size(dim), _inc(inc), _field(&V.field()) {} ++#endif + + + /** Constructor from an existing @ref BlasVector
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202501191833.50JIXqgi065592>