Source: freecad
Version: 1.0.2+dfsg-2
Severity: serious
Tags: ftbfs
X-Debbugs-Cc: [email protected], Bastian Germann <[email protected]>, 
Francesco Ballarin <[email protected]>
User: [email protected]
Usertags: arm64

https://buildd.debian.org/status/fetch.php?pkg=freecad&arch=arm64&ver=1.0.2%2Bdfsg-3&stamp=1771931543&raw=0

...
In file included from /usr/include/netgen/core/simd.hpp:34,
                 from /usr/include/netgen/core/ngcore.hpp:16,
                 from /usr/include/netgen/include/mydefs.hpp:14,
                 from /usr/include/netgen/general/myadt.hpp:16,
                 from /usr/include/netgen/include/myadt.hpp:1,
                 from /usr/include/netgen/meshing/meshing.hpp:4,
                 from /usr/include/netgen/include/meshing.hpp:1,
                 from /usr/include/netgen/occ/occgeom.hpp:14,
                 from /usr/include/netgen/include/occgeom.hpp:1,
                 from 
/build/reproducible-path/freecad-1.0.2+dfsg/src/3rdParty/salomesmesh/src/NETGENPlugin/NETGENPlugin_Mesher.cpp:106:
/usr/include/netgen/core/simd_arm64.hpp: In function 
‘ngcore::SIMD<ngcore::mask64, 2> ngcore::operator==(SIMD<long int, 2>, 
SIMD<long int, 2>)’:
/usr/include/netgen/core/simd_arm64.hpp:161:21: note: use 
‘-flax-vector-conversions’ to permit conversions between vectors with differing 
element types or numbers of subparts
  161 |     return vceqq_u64(a.Data(), b.Data());
      |            ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/include/netgen/core/simd_arm64.hpp:161:28: error: cannot convert 
‘__Int64x2_t’ to ‘uint64x2_t’
  161 |     return vceqq_u64(a.Data(), b.Data());
      |                      ~~~~~~^~
      |                            |
      |                            __Int64x2_t
In file included from /usr/include/netgen/core/simd_arm64.hpp:1:
/usr/lib/gcc/aarch64-linux-gnu/15/include/arm_neon.h:7646:23: note: 
initializing argument 1 of ‘uint64x2_t vceqq_u64(uint64x2_t, uint64x2_t)’
 7646 | vceqq_u64 (uint64x2_t __a, uint64x2_t __b)
      |            ~~~~~~~~~~~^~~
/usr/include/netgen/core/simd_arm64.hpp: In function 
‘ngcore::SIMD<ngcore::mask64, 2> ngcore::operator>(SIMD<long int, 2>, SIMD<long 
int, 2>)’:
/usr/include/netgen/core/simd_arm64.hpp:166:21: error: could not convert 
‘vcgtq_s64(a.ngcore::SIMD<long int, 2>::Data(), b.ngcore::SIMD<long int, 
2>::Data())’ from ‘uint64x2_t’ to ‘ngcore::SIMD<ngcore::mask64, 2>’
  166 |     return vcgtq_s64(a.Data(), b.Data());
      |            ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
      |                     |
      |                     uint64x2_t
...




Adding -flax-vector-conversions to CXXFLAGS in debian/rules fixes the build,
but ideally netgen should be fixed to not impose such a workaround on rdeps.

Reply via email to