git: 2ec8449f67d4 - 2024Q4 - math/gfan: fix build with clang 19

From: Dimitry Andric <dim_at_FreeBSD.org>
Date: Wed, 04 Dec 2024 20:26:12 UTC
The branch 2024Q4 has been updated by dim:

URL: https://cgit.FreeBSD.org/ports/commit/?id=2ec8449f67d4063267ae64a60b1ade3a6e5ddf7c

commit 2ec8449f67d4063267ae64a60b1ade3a6e5ddf7c
Author:     Dimitry Andric <dim@FreeBSD.org>
AuthorDate: 2024-11-18 12:43:25 +0000
Commit:     Dimitry Andric <dim@FreeBSD.org>
CommitDate: 2024-12-04 20:24:26 +0000

    math/gfan: fix build with clang 19
    
    Clang 19 has become more strict about errors in member functions, which
    results in errors building math/gfan:
    
      src/gfanlib_matrix.h:123:18: error: no member named 'vectormultiply' in 'Matrix<typ>'
        123 |         ret[i]=a.vectormultiply(b.column(i));
            |                ~ ^
    
    The `vectormultiply` method has been commented out by upstream for
    unknown reasons, but the `operator*` method that references it is also
    never used, so stub it out.
    
    PR:             282851
    Approved by:    maintainer timeout (2 weeks)
    MFH:            2024Q4
    
    (cherry picked from commit 9020eeb540c2246c678a06098b916282e7251c11)
---
 math/gfan/files/patch-src_gfanlib__matrix.h | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git a/math/gfan/files/patch-src_gfanlib__matrix.h b/math/gfan/files/patch-src_gfanlib__matrix.h
new file mode 100644
index 000000000000..68aa9e1afa0c
--- /dev/null
+++ b/math/gfan/files/patch-src_gfanlib__matrix.h
@@ -0,0 +1,18 @@
+--- src/gfanlib_matrix.h.orig	2017-06-20 14:47:37 UTC
++++ src/gfanlib_matrix.h
+@@ -115,6 +115,7 @@ template <class typ> class Matrix{ (public)
+         	  p[i][j]=s*(q[i][j]);
+       return p;
+     }
++#if 0
+   friend Matrix operator*(const Matrix& a, const Matrix& b)
+     {
+       assert(a.width==b.height);
+@@ -123,6 +124,7 @@ template <class typ> class Matrix{ (public)
+         ret[i]=a.vectormultiply(b.column(i));
+       return ret.transposed();
+     }
++#endif
+   /*  template<class T>
+     Matrix<T>(const Matrix<T>& c):v(c.size()){
+     for(int i=0;i<size();i++)v[i]=typ(c[i]);}