Bug#1084087: gmsh: FTBFS on 32 bit architectures: /<<PKGBUILDDIR>>/contrib/hxt/tetMesh/src/hxt_tetRefine.c:346:32: error: passing argument 1 of ‘scanbsearch’ from incompatible pointer type [-Wincompatible-pointer-types]

Sebastian Ramacher sramacher at debian.org
Fri Oct 4 22:33:00 BST 2024


Source: gmsh
Version: 4.13.1+ds1-2
Severity: serious
Tags: ftbfs
Justification: fails to build from source (but built successfully in the past)
X-Debbugs-Cc: sramacher at debian.org

https://buildd.debian.org/status/fetch.php?pkg=gmsh&arch=i386&ver=4.13.1%2Bds1-2&stamp=1727627732&raw=0

/<<PKGBUILDDIR>>/contrib/hxt/tetMesh/src/hxt_tetRefine.c: In function ‘balanceRefineWork’:
/<<PKGBUILDDIR>>/contrib/hxt/tetMesh/src/hxt_tetRefine.c:346:32: error: passing argument 1 of ‘scanbsearch’ from incompatible pointer type [-Wincompatible-pointer-types]
  346 |     size_t* pfnd = scanbsearch(scan, scanToFind, mesh->tetrahedra.num);
      |                                ^~~~
      |                                |
      |                                size_t * {aka unsigned int *}
/<<PKGBUILDDIR>>/contrib/hxt/tetMesh/src/hxt_tetRefine.c:262:40: note: expected ‘uint64_t *’ {aka ‘long long unsigned int *’} but argument is of type ‘size_t *’ {aka ‘unsigned int *’}
  262 | static uint64_t* scanbsearch(uint64_t* array, uint64_t key, size_t num)
      |                              ~~~~~~~~~~^~~~~
/<<PKGBUILDDIR>>/contrib/hxt/tetMesh/src/hxt_tetRefine.c:346:20: error: initialization of ‘size_t *’ {aka ‘unsigned int *’} from incompatible pointer type ‘uint64_t *’ {aka ‘long long unsigned int *’} [-Wincompatible-pointer-types]
  346 |     size_t* pfnd = scanbsearch(scan, scanToFind, mesh->tetrahedra.num);
      |                    ^~~~~~~~~~~
In file included from /<<PKGBUILDDIR>>/contrib/hxt/core/include/hxt_mesh.h:8,
                 from /<<PKGBUILDDIR>>/contrib/hxt/tetMesh/include/hxt_tetNodalSize.h:12,
                 from /<<PKGBUILDDIR>>/contrib/hxt/tetMesh/include/hxt_tetDelaunay.h:16,
                 from /<<PKGBUILDDIR>>/contrib/hxt/tetMesh/src/hxt_tetRefine.c:9:
/<<PKGBUILDDIR>>/contrib/hxt/tetMesh/src/hxt_tetRefine.c: In function ‘hxtRefineTetrahedra’:
/<<PKGBUILDDIR>>/contrib/hxt/tetMesh/src/hxt_tetRefine.c:376:49: error: passing argument 3 of ‘balanceRefineWork’ from incompatible pointer type [-Wincompatible-pointer-types]
  376 |     HXT_CHECK( balanceRefineWork(mesh, startPt, startTet, maxThreads) );
      |                                                 ^~~~~~~~
      |                                                 |
      |                                                 uint64_t * {aka long long unsigned int *}
/<<PKGBUILDDIR>>/contrib/hxt/core/include/hxt_message.h:83:23: note: in definition of macro ‘HXT_CHECK_MSG’
   83 |     HXTStatus _tmp_ = status;                   \
      |                       ^~~~~~
/<<PKGBUILDDIR>>/contrib/hxt/tetMesh/src/hxt_tetRefine.c:376:5: note: in expansion of macro ‘HXT_CHECK’
  376 |     HXT_CHECK( balanceRefineWork(mesh, startPt, startTet, maxThreads) );
      |     ^~~~~~~~~
/<<PKGBUILDDIR>>/contrib/hxt/tetMesh/src/hxt_tetRefine.c:300:78: note: expected ‘size_t *’ {aka ‘unsigned int *’} but argument is of type ‘uint64_t *’ {aka ‘long long unsigned int *’}
  300 | static HXTStatus balanceRefineWork(HXTMesh* mesh, uint32_t* startPt, size_t* startTet, int maxThreads)
      |                                                                      ~~~~~~~~^~~~~~~~
make[4]: *** [CMakeFiles/shared.dir/build.make:8269: CMakeFiles/shared.dir/contrib/hxt/tetMesh/src/hxt_tetRefine.c.o] Error 1
make[4]: *** Waiting for unfinished jobs....

Cheers
-- 
Sebastian Ramacher



More information about the debian-science-maintainers mailing list