freebsd-ports/math/pdal/files/patch-vendor_kazhdan_Ply.h
Dimitry Andric 465e9eaad0 math/pdal: fix build with clang 19
Clang 19 has become more strict about errors in member functions, which
results in errors building math/pdal:

  /wrkdirs/usr/ports/math/pdal/work/PDAL-2.7.2-src/vendor/kazhdan/SparseMatrix.inl:195:18: error: no member named 'm_N' in 'SparseMatrix<T>'
    195 |     Resize(this->m_N, this->m_M);
        |            ~~~~  ^
  /wrkdirs/usr/ports/math/pdal/work/PDAL-2.7.2-src/vendor/kazhdan/SparseMatrix.inl:195:29: error: no member named 'm_M' in 'SparseMatrix<T>'
    195 |     Resize(this->m_N, this->m_M);
        |                       ~~~~  ^

  /wrkdirs/usr/ports/math/pdal/work/PDAL-2.7.2-src/vendor/kazhdan/Ply.h:320:97: error: no member named 'value' in 'PlyOrientedVertex<Real>'
    320 |         PlyOrientedVertex operator - ( PlyOrientedVertex p ) const { return PlyOrientedVertex( point-p.value , normal-p.normal ); }
        |                                                                                                      ~ ^
  /wrkdirs/usr/ports/math/pdal/work/PDAL-2.7.2-src/vendor/kazhdan/Ply.h:366:92: error: no member named 'value' in 'PlyColorVertex::_PlyColorVertex'
    366 |                 _PlyColorVertex operator - ( _PlyColorVertex p ) const { return _PlyColorVertex( point-p.value , color-p.color ); }
        |                                                                                                        ~ ^

The first pair of errors is because there are no members `m_N` and `m_M`
in `SparseMatrix` at all, nor are there any members that remotely look
like these. However, the `SetZero()` member function that invokes these
is never used anywhere, so it can simply be deleted.

The second pair of errors is due to a typo: `p.value` should have been
`p.point`.

PR:		281867
Approved by:	lbartoletti (maintainer)
MFH:		2024Q3
2024-10-09 21:09:53 +02:00

20 lines
1.7 KiB
C++

--- vendor/kazhdan/Ply.h.orig 2024-06-29 01:37:43 UTC
+++ vendor/kazhdan/Ply.h
@@ -317,7 +317,7 @@ class PlyOrientedVertex (public)
PlyOrientedVertex( void ) { ; }
PlyOrientedVertex( Point3D< Real > p , Point3D< Real > n ) : point(p) , normal(n) { ; }
PlyOrientedVertex operator + ( PlyOrientedVertex p ) const { return PlyOrientedVertex( point+p.point , normal+p.normal ); }
- PlyOrientedVertex operator - ( PlyOrientedVertex p ) const { return PlyOrientedVertex( point-p.value , normal-p.normal ); }
+ PlyOrientedVertex operator - ( PlyOrientedVertex p ) const { return PlyOrientedVertex( point-p.point , normal-p.normal ); }
template< class _Real > PlyOrientedVertex operator * ( _Real s ) const { return PlyOrientedVertex( point*s , normal*s ); }
template< class _Real > PlyOrientedVertex operator / ( _Real s ) const { return PlyOrientedVertex( point/s , normal/s ); }
PlyOrientedVertex& operator += ( PlyOrientedVertex p ) { point += p.point , normal += p.normal ; return *this; }
@@ -363,7 +363,7 @@ class PlyColorVertex (public)
}
_PlyColorVertex operator + ( _PlyColorVertex p ) const { return _PlyColorVertex( point+p.point , color+p.color ); }
- _PlyColorVertex operator - ( _PlyColorVertex p ) const { return _PlyColorVertex( point-p.value , color-p.color ); }
+ _PlyColorVertex operator - ( _PlyColorVertex p ) const { return _PlyColorVertex( point-p.point , color-p.color ); }
template< class _Real > _PlyColorVertex operator * ( _Real s ) const { return _PlyColorVertex( point*s , color*s ); }
template< class _Real > _PlyColorVertex operator / ( _Real s ) const { return _PlyColorVertex( point/s , color/s ); }
_PlyColorVertex& operator += ( _PlyColorVertex p ) { point += p.point , color += p.color ; return *this; }