Compilation error with CGNS v4.5.0
Trying to compile gmsh-4.13.1 against CGNS v4.5.0 fails with this error:
--- CMakeFiles/shared.dir/src/geo/GModelIO_STL.cpp.o ---
[ 16%] Building CXX object CMakeFiles/shared.dir/src/geo/GModelIO_STL.cpp.o
/usr/bin/c++ -DH5_BUILT_AS_DYNAMIC_LIB -DNOTCL -DNO_PARALLEL_THREADS -Dshared_EXPORTS -I/usr/ports/cad/gmsh/work/gmsh-4.13.1-source/contrib/WinslowUntangler -I/usr/ports/cad/gmsh/work/gmsh-4.13.1-source/contrib/QuadMeshingTools -I/usr/ports/cad/gmsh/work/gmsh-4.13.1-source/contrib/hxt/tetMesh/include -I/usr/ports/cad/gmsh/work/gmsh-4.13.1-source/contrib/hxt/tetMesh/src -I/usr/ports/cad/gmsh/work/gmsh-4.13.1-source/contrib/hxt/tetBR/include -I/usr/ports/cad/gmsh/work/gmsh-4.13.1-source/contrib/hxt/tetBR/src -I/usr/ports/cad/gmsh/work/gmsh-4.13.1-source/contrib/hxt/predicates/include -I/usr/ports/cad/gmsh/work/gmsh-4.13.1-source/contrib/hxt/predicates/src -I/usr/ports/cad/gmsh/work/gmsh-4.13.1-source/contrib/hxt/reparam/include -I/usr/ports/cad/gmsh/work/gmsh-4.13.1-source/contrib/hxt/reparam/src -I/usr/ports/cad/gmsh/work/gmsh-4.13.1-source/contrib/hxt/core/include -I/usr/ports/cad/gmsh/work/gmsh-4.13.1-source/contrib/hxt/core/src -I/usr/ports/cad/gmsh/work/gmsh-4.13.1-source/contrib/hxt/Combine/src -I/usr/local/include/eigen3 -I/usr/ports/cad/gmsh/work/gmsh-4.13.1-source/contrib/onelab -I/usr/ports/cad/gmsh/work/gmsh-4.13.1-source/contrib/mpeg_encode/headers -I/usr/ports/cad/gmsh/work/gmsh-4.13.1-source/contrib/ANN/include -I/usr/ports/cad/gmsh/work/gmsh-4.13.1-source/contrib/DiscreteIntegration -I/usr/ports/cad/gmsh/work/gmsh-4.13.1-source/contrib/kbipack -I/usr/ports/cad/gmsh/work/gmsh-4.13.1-source/contrib/HighOrderMeshOptimizer -I/usr/ports/cad/gmsh/work/gmsh-4.13.1-source/contrib/MeshOptimizer -I/usr/ports/cad/gmsh/work/.build/contrib/MeshOptimizer -I/usr/ports/cad/gmsh/work/gmsh-4.13.1-source/contrib/MeshQualityOptimizer -I/usr/ports/cad/gmsh/work/gmsh-4.13.1-source/contrib/domhex -I/usr/ports/cad/gmsh/work/gmsh-4.13.1-source/contrib/QuadTri -I/usr/ports/cad/gmsh/work/gmsh-4.13.1-source/contrib/blossom/MATCH -I/usr/ports/cad/gmsh/work/gmsh-4.13.1-source/contrib/blossom/concorde97 -I/usr/ports/cad/gmsh/work/gmsh-4.13.1-source/contrib/blossom/concorde97/INCLUDE -I/usr/ports/cad/gmsh/work/gmsh-4.13.1-source/contrib/nii2mesh -I/usr/ports/cad/gmsh/work/gmsh-4.13.1-source/contrib/untangle -I/usr/ports/cad/gmsh/work/gmsh-4.13.1-source/contrib/Netgen -I/usr/ports/cad/gmsh/work/gmsh-4.13.1-source/contrib/Netgen/libsrc/include -I/usr/ports/cad/gmsh/work/gmsh-4.13.1-source/contrib/Netgen/nglib -I/usr/ports/cad/gmsh/work/gmsh-4.13.1-source/contrib/bamg -I/usr/ports/cad/gmsh/work/gmsh-4.13.1-source/contrib/bamg/bamglib -I/usr/ports/cad/gmsh/work/gmsh-4.13.1-source/src/common -I/usr/ports/cad/gmsh/work/gmsh-4.13.1-source/src/fltk -I/usr/ports/cad/gmsh/work/gmsh-4.13.1-source/src/geo -I/usr/ports/cad/gmsh/work/gmsh-4.13.1-source/src/graphics -I/usr/ports/cad/gmsh/work/gmsh-4.13.1-source/src/mesh -I/usr/ports/cad/gmsh/work/gmsh-4.13.1-source/src/solver -I/usr/ports/cad/gmsh/work/gmsh-4.13.1-source/src/numeric -I/usr/ports/cad/gmsh/work/gmsh-4.13.1-source/src/parser -I/usr/ports/cad/gmsh/work/gmsh-4.13.1-source/src/plugin -I/usr/ports/cad/gmsh/work/gmsh-4.13.1-source/src/post -I/usr/ports/cad/gmsh/work/gmsh-4.13.1-source/api -I/usr/local/include/libalglib -I/usr/local/include/voro++ -I/usr/local/include/mmg -I/usr/local/include/gmm -I/usr/local/include/freetype2 -I/usr/local/include/OpenCASCADE -I/usr/local -I/usr/ports/cad/gmsh/work/.build/src/common -O2 -pipe -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing -isystem /usr/local/include -fopenmp=libomp -O2 -pipe -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing -isystem /usr/local/include -DNDEBUG -std=gnu++14 -fPIC -fvisibility=hidden -Wall -Wno-int-to-void-pointer-cast -Wno-deprecated-declarations -Wno-misleading-indentation -Wno-attributes -Wno-unused-but-set-variable -MD -MT CMakeFiles/shared.dir/src/geo/GModelIO_STL.cpp.o -MF CMakeFiles/shared.dir/src/geo/GModelIO_STL.cpp.o.d -o CMakeFiles/shared.dir/src/geo/GModelIO_STL.cpp.o -c /usr/ports/cad/gmsh/work/gmsh-4.13.1-source/src/geo/GModelIO_STL.cpp
--- CMakeFiles/shared.dir/src/geo/GModelIO_CGNS.cpp.o ---
In file included from /usr/ports/cad/gmsh/work/gmsh-4.13.1-source/src/geo/GModelIO_CGNS.cpp:9:
In file included from /usr/ports/cad/gmsh/work/gmsh-4.13.1-source/src/geo/CGNSCommon.h:16:
/usr/local/include/cgnslib.h:632:15: error: redefinition of 'Pair'
632 | CGNS_ENUMV( Pair ) =7,
| ^
/usr/ports/cad/gmsh/work/gmsh-4.13.1-source/src/geo/Pair.h:10:35: note: previous definition is here
10 | template <class L, class R> class Pair {
| ^
1 error generated.
*** [CMakeFiles/shared.dir/src/geo/GModelIO_CGNS.cpp.o] Error code 1
Remark: this is on FreeBSD -CURRENT with clang-19 if that matters.