Bug#977012: octave-level-set FTBFS with Octave 6.1.0: error: ‘const class Array’ has no member named ‘length’

2020-12-10 Thread Sébastien Villemot
Le jeudi 10 décembre 2020 à 04:39 +0200, Adrian Bunk a écrit :
> Source: octave-level-set
> Version: 0.3.0-11
> Severity: serious
> Tags: ftbfs

I attach a patch that fixes the compilation of the source code (some
functions were deprecated). But then there is a failure in the tests,
which I don’t understand (maybe another regression in Octave core?).

-- 
⢀⣴⠾⠻⢶⣦⠀  Sébastien Villemot
⣾⠁⢠⠒⠀⣿⡁  Debian Developer
⢿⡄⠘⠷⠚⠋⠀  https://sebastien.villemot.name
⠈⠳⣄  https://www.debian.org

--- a/src/geomGamma.cpp
+++ b/src/geomGamma.cpp
@@ -192,7 +192,7 @@ DEFUN_DLD (__levelset_geomGamma, args, n
   const Matrix inout = args(4).matrix_value ();
 
   /* Extract and check the dimensions.  */
-  const unsigned nNodes = phi.nelem ();
+  const unsigned nNodes = phi.numel ();
   const unsigned nElem = getDimension (nodelist, -1, 4);
   const unsigned nBdryEl = getDimension (bdryInd, -1, 1);
   getDimension (edges, nBdryEl, 4);
--- a/src/internal_mesh.cpp
+++ b/src/internal_mesh.cpp
@@ -300,7 +300,7 @@ getInnerSegment (const octave_scalar_map
 
   assert (innerPts.empty ());
   const ColumnVector inners = segs.contents ("inners").column_vector_value ();
-  const unsigned nInners = inners.nelem ();
+  const unsigned nInners = inners.numel ();
   for (unsigned i = 0; i < nInners; ++i)
 innerPts.push_back (inners(nInners - i - 1) - 1);
 }
@@ -387,7 +387,7 @@ DEFUN_DLD (__levelset_internal_mesh, arg
 {
   const unsigned cur = bdryElems(i) - 1;
   const Cell cellSegs = bdryelSegs(i).cell_value ();
-  const unsigned nSegs = cellSegs.nelem ();
+  const unsigned nSegs = cellSegs.numel ();
 
   std::vector segs;
   indexArr endEdges;
--- a/src/internal_fastmarching.cpp
+++ b/src/internal_fastmarching.cpp
@@ -74,7 +74,7 @@ DEFUN_DLD (__levelset_internal_fastmarch
 {
   const Array idx = getOctaveIdx (c);
   assert (c.size () == D
-  && static_cast (idx.length ()) == D);
+  && static_cast (idx.numel ()) == D);
 
   if (domain(idx))
 {
@@ -99,7 +99,7 @@ DEFUN_DLD (__levelset_internal_fastmarch
 {
   const Array idx = getOctaveIdx (c);
   assert (c.size () == D
-  && static_cast (idx.length ()) == D);
+  && static_cast (idx.numel ()) == D);
 
   const Grid& constGrid(grid);
   const Entry* e = constGrid.get (c);


signature.asc
Description: This is a digitally signed message part


Bug#977012: octave-level-set FTBFS with Octave 6.1.0: error: ‘const class Array’ has no member named ‘length’

2020-12-09 Thread Adrian Bunk
Source: octave-level-set
Version: 0.3.0-11
Severity: serious
Tags: ftbfs

https://buildd.debian.org/status/package.php?p=octave-level-set

...
In file included from /usr/include/c++/10/cassert:44,
 from internal_fastmarching.cpp:29:
internal_fastmarching.cpp: In lambda function:
internal_fastmarching.cpp:77:51: error: ‘const class Array’ has no 
member named ‘length’
   77 |   && static_cast (idx.length ()) == D);
  |   ^~
internal_fastmarching.cpp: In lambda function:
internal_fastmarching.cpp:102:51: error: ‘const class Array’ has no 
member named ‘length’
  102 |   && static_cast (idx.length ()) == D);
  |   ^~
...