Bug#1126484: vtk9: xdmf3 module fails to build on 32-bit architectures

Drew Parsons <[email protected]>
Newsgroups gmane.linux.debian.ports.arm
Message-ID <176950944988.48798.14235870248804627032.reportbug__16398.6238114134$1769509672$gmane$org@sandy>
Package: vtk9
Version: 9.5.2+dfsg3-1
Severity: normal
Tags: ftbfs
X-Debbugs-Cc: [email protected]
User: [email protected]
Usertags: armhf
User: [email protected]
Usertags: i386
Control: forwarded -1 https://gitlab.kitware.com/paraview/paraview/-/issues/22630

The (third-party) xdmf3 module fails to build on 32-bit architectures
e.g. armhf
https://buildd.debian.org/status/fetch.php?pkg=vtk9&arch=armhf&ver=9.5.2%2Bdfsg3-1&stamp=1769505385&raw=0

[  0%] Building CXX object ThirdParty/xdmf3/vtkxdmf3/core/CMakeFiles/vtkxdmfcore.dir/XdmfArrayType.cpp.o
cd /build/reproducible-path/vtk9-9.5.2+dfsg3/debian/build/ThirdParty/xdmf3/vtkxdmf3/core && /usr/bin/c++ -DH5_BUILT_AS_DYNAMIC_LIB -DMPICH_SKIP_MPICXX -DMPI_NO_CPPBIND -DOMPI_SKIP_MPICXX -D_MPICC_H -Dvtkxdmfcore_EXPORTS -I/build/reproducible-path/vtk9-9.5.2+dfsg3/ThirdParty/xdmf3/vtkxdmf3 -I/build/reproducible-path/vtk9-9.5.2+dfsg3/debian/build/ThirdParty/xdmf3/vtkxdmf3 -I/build/reproducible-path/vtk9-9.5.2+dfsg3/CMake/VersionSuite -I/build/reproducible-path/vtk9-9.5.2+dfsg3/ThirdParty/xdmf3/vtkxdmf3/core -I/build/reproducible-path/vtk9-9.5.2+dfsg3/ThirdParty/xdmf3/vtkxdmf3/core/../CMake/VersionSuite -I/build/reproducible-path/vtk9-9.5.2+dfsg3/debian/build/ThirdParty/xdmf3/vtkxdmf3/core -isystem /build/reproducible-path/vtk9-9.5.2+dfsg3/debian/build/ThirdParty/libxml2 -isystem /build/reproducible-path/vtk9-9.5.2+dfsg3/ThirdParty/libxml2 -isystem /usr/include/libxml2 -isystem /build/reproducible-path/vtk9-9.5.2+dfsg3/debian/build/ThirdParty/hdf5 -isystem /build/reproducible-path/vtk9-9.5.2+dfsg3/ThirdParty/hdf5 -isystem /usr/include/hdf5/mpich -isystem /build/reproducible-path/vtk9-9.5.2+dfsg3/debian/build/Utilities/MPI -isystem /build/reproducible-path/vtk9-9.5.2+dfsg3/Utilities/MPI -isystem /usr/lib/arm-linux-gnueabihf/mpich/include -g -O2 -ffile-prefix-map=/build/reproducible-path/vtk9-9.5.2+dfsg3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_TIME_BITS=64 -Wdate-time -D_FORTIFY_SOURCE=2  -std=c++17 -fPIC -MD -MT ThirdParty/xdmf3/vtkxdmf3/core/CMakeFiles/vtkxdmfcore.dir/XdmfArrayType.cpp.o -MF CMakeFiles/vtkxdmfcore.dir/XdmfArrayType.cpp.o.d -o CMakeFiles/vtkxdmfcore.dir/XdmfArrayType.cpp.o -c /build/reproducible-path/vtk9-9.5.2+dfsg3/ThirdParty/xdmf3/vtkxdmf3/core/XdmfArrayType.cpp
...
/build/reproducible-path/vtk9-9.5.2+dfsg3/ThirdParty/xdmf3/vtkxdmf3/core/XdmfArray.cpp: In instantiation of ‘boost::shared_ptr<const XdmfArrayType> XdmfArray::GetArrayType::operator()(const boost::shared_ptr<std::vector<T> >&) const [with T = long unsigned int]’:
/usr/include/boost/variant/variant.hpp:1028:24:   required from ‘typename boost::disable_if_c<(MoveSemantics && boost::is_same<Value2, Value2>::value), typename Visitor::result_type>::type boost::detail::variant::invoke_visitor<Visitor, MoveSemantics>::internal_visit(T&&, int) [with T = const boost::shared_ptr<std::vector<long unsigned int> >&; Visitor = const XdmfArray::GetArrayType; bool MoveSemantics = false; typename boost::disable_if_c<(MoveSemantics && boost::is_same<Value2, Value2>::value), typename Visitor::result_type>::type = boost::shared_ptr<const XdmfArrayType>; typename Visitor::result_type = boost::shared_ptr<const XdmfArrayType>]’
 1028 |         return visitor_(operand);
      |                ~~~~~~~~^~~~~~~~~
/usr/include/boost/variant/detail/visitation_impl.hpp:117:34:   required from ‘typename Visitor::result_type boost::detail::variant::visitation_impl_invoke_impl(int, Visitor&, VoidPtrCV, T*, mpl_::true_) [with Visitor = invoke_visitor<const XdmfArray::GetArrayType, false>; VoidPtrCV = const void*; T = boost::shared_ptr<std::vector<long unsigned int> >; typename Visitor::result_type = boost::shared_ptr<const XdmfArrayType>; mpl_::true_ = mpl_::bool_<true>]’
  117 |     return visitor.internal_visit(
      |            ~~~~~~~~~~~~~~~~~~~~~~^
  118 |           cast_storage<T>(storage), 1L
      |           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  119 |         );
      |         ~                         
/usr/include/boost/variant/detail/visitation_impl.hpp:157:41:   required from ‘typename Visitor::result_type boost::detail::variant::visitation_impl_invoke(int, Visitor&, VoidPtrCV, T*, NoBackupFlag, int) [with Visitor = invoke_visitor<const XdmfArray::GetArrayType, false>; VoidPtrCV = const void*; T = boost::shared_ptr<std::vector<long unsigned int> >; NoBackupFlag = boost::variant<boost::blank, boost::shared_ptr<std::vector<char, std::allocator<char> > >, boost::shared_ptr<std::vector<short int, std::allocator<short int> > >, boost::shared_ptr<std::vector<int, std::allocator<int> > >, boost::shared_ptr<std::vector<long int, std::allocator<long int> > >, boost::shared_ptr<std::vector<float, std::allocator<float> > >, boost::shared_ptr<std::vector<double, std::allocator<double> > >, boost::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, boost::shared_ptr<std::vector<short unsigned int, std::allocator<short unsigned int> > >, boost::shared_ptr<std::vector<unsigned int, std::allocator<unsigned int> > >, boost::shared_ptr<std::vector<long unsigned int, std::allocator<long unsigned int> > >, boost::shared_ptr<std::vector<long long unsigned int, std::allocator<long long unsigned int> > >, boost::shared_ptr<std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, boost::shared_array<const char>, boost::shared_array<const short int>, boost::shared_array<const int>, boost::shared_array<const long int>, boost::shared_array<const float>, boost::shared_array<const double>, boost::shared_array<const unsigned char>, boost::shared_array<const short unsigned int>, boost::shared_array<const unsigned int>, boost::shared_array<const long unsigned int>, boost::shared_array<const long long unsigned int> >::has_fallback_type_; typename Visitor::result_type = boost::shared_ptr<const XdmfArrayType>]’
  157 |     return (visitation_impl_invoke_impl)(
      |            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
  158 |           internal_which, visitor, storage, t
      |           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  159 |         , never_uses_backup()
      |         ~~~~~~~~~~~~~~~~~~~~~            
  160 |         );
      |         ~                                
/usr/include/boost/variant/detail/visitation_impl.hpp:238:5:   required from ‘typename Visitor::result_type boost::detail::variant::visitation_impl(int, int, Visitor&, VoidPtrCV, mpl_::false_, NoBackupFlag, Which*, step0*) [with Which = mpl_::int_<0>; step0 = visitation_impl_step<boost::mpl::l_iter<boost::mpl::l_item<mpl_::long_<24>, boost::blank, boost::mpl::l_item<mpl_::long_<23>, boost::shared_ptr<std::vector<char> >, boost::mpl::l_item<mpl_::long_<22>, boost::shared_ptr<std::vector<short int> >, boost::mpl::l_item<mpl_::long_<21>, boost::shared_ptr<std::vector<int> >, boost::mpl::l_item<mpl_::long_<20>, boost::shared_ptr<std::vector<long int> >, boost::mpl::l_item<mpl_::long_<19>, boost::shared_ptr<std::vector<float> >, boost::mpl::l_item<mpl_::long_<18>, boost::shared_ptr<std::vector<double> >, boost::mpl::l_item<mpl_::long_<17>, boost::shared_ptr<std::vector<unsigned char> >, boost::mpl::l_item<mpl_::long_<16>, boost::shared_ptr<std::vector<short unsigned int> >, boost::mpl::l_item<mpl_::long_<15>, boost::shared_ptr<std::vector<unsigned int> >, boost::mpl::l_item<mpl_::long_<14>, boost::shared_ptr<std::vector<long unsigned int> >, boost::mpl::l_item<mpl_::long_<13>, boost::shared_ptr<std::vector<long long unsigned int> >, boost::mpl::l_item<mpl_::long_<12>, boost::shared_ptr<std::vector<std::__cxx11::basic_string<char> > >, boost::mpl::l_item<mpl_::long_<11>, boost::shared_array<const char>, boost::mpl::l_item<mpl_::long_<10>, boost::shared_array<const short int>, boost::mpl::l_item<mpl_::long_<9>, boost::shared_array<const int>, boost::mpl::l_item<mpl_::long_<8>, boost::shared_array<const long int>, boost::mpl::l_item<mpl_::long_<7>, boost::shared_array<const float>, boost::mpl::l_item<mpl_::long_<6>, boost::shared_array<const double>, boost::mpl::l_item<mpl_::long_<5>, boost::shared_array<const unsigned char>, boost::mpl::l_item<mpl_::long_<4>, boost::shared_array<const short unsigned int>, boost::mpl::l_item<mpl_::long_<3>, boost::shared_array<const unsigned int>, boost::mpl::l_item<mpl_::long_<2>, boost::shared_array<const long unsigned int>, boost::mpl::l_item<mpl_::long_<1>, boost::shared_array<const long long unsigned int>, boost::mpl::l_end> > > > > > > > > > > > > > > > > > > > > > > > >, boost::mpl::l_iter<boost::mpl::l_end> >; Visitor = invoke_visitor<const XdmfArray::GetArrayType, false>; VoidPtrCV = const void*; NoBackupFlag = boost::variant<boost::blank, boost::shared_ptr<std::vector<char, std::allocator<char> > >, boost::shared_ptr<std::vector<short int, std::allocator<short int> > >, boost::shared_ptr<std::vector<int, std::allocator<int> > >, boost::shared_ptr<std::vector<long int, std::allocator<long int> > >, boost::shared_ptr<std::vector<float, std::allocator<float> > >, boost::shared_ptr<std::vector<double, std::allocator<double> > >, boost::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, boost::shared_ptr<std::vector<short unsigned int, std::allocator<short unsigned int> > >, boost::shared_ptr<std::vector<unsigned int, std::allocator<unsigned int> > >, boost::shared_ptr<std::vector<long unsigned int, std::allocator<long unsigned int> > >, boost::shared_ptr<std::vector<long long unsigned int, std::allocator<long long unsigned int> > >, boost::shared_ptr<std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, boost::shared_array<const char>, boost::shared_array<const short int>, boost::shared_array<const int>, boost::shared_array<const long int>, boost::shared_array<const float>, boost::shared_array<const double>, boost::shared_array<const unsigned char>, boost::shared_array<const short unsigned int>, boost::shared_array<const unsigned int>, boost::shared_array<const long unsigned int>, boost::shared_array<const long long unsigned int> >::has_fallback_type_; typename Visitor::result_type = boost::shared_ptr<const XdmfArrayType>; mpl_::false_ = mpl_::bool_<false>]’
  238 |     BOOST_PP_REPEAT(
      |     ^~~~~~~~~~~~~~~
/usr/include/boost/variant/variant.hpp:2338:48:   required from ‘static typename Visitor::result_type boost::variant<T0, TN>::internal_apply_visitor_impl(int, int, Visitor&, VoidPtrCV) [with Visitor = boost::detail::variant::invoke_visitor<const XdmfArray::GetArrayType, false>; VoidPtrCV = const void*; T0_ = boost::blank; TN = {boost::shared_ptr<std::vector<char, std::allocator<char> > >, boost::shared_ptr<std::vector<short int, std::allocator<short int> > >, boost::shared_ptr<std::vector<int, std::allocator<int> > >, boost::shared_ptr<std::vector<long int, std::allocator<long int> > >, boost::shared_ptr<std::vector<float, std::allocator<float> > >, boost::shared_ptr<std::vector<double, std::allocator<double> > >, boost::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, boost::shared_ptr<std::vector<short unsigned int, std::allocator<short unsigned int> > >, boost::shared_ptr<std::vector<unsigned int, std::allocator<unsigned int> > >, boost::shared_ptr<std::vector<long unsigned int, std::allocator<long unsigned int> > >, boost::shared_ptr<std::vector<long long unsigned int, std::allocator<long long unsigned int> > >, boost::shared_ptr<std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, boost::shared_array<const char>, boost::shared_array<const short int>, boost::shared_array<const int>, boost::shared_array<const long int>, boost::shared_array<const float>, boost::shared_array<const double>, boost::shared_array<const unsigned char>, boost::shared_array<const short unsigned int>, boost::shared_array<const unsigned int>, boost::shared_array<const long unsigned int>, boost::shared_array<const long long unsigned int>}; typename Visitor::result_type = boost::shared_ptr<const XdmfArrayType>]’
 2338 |         return detail::variant::visitation_impl(
      |                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
 2339 |               internal_which, logical_which
      |               ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~     
 2340 |             , visitor, storage, mpl::false_()
      |             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   
 2341 |             , never_uses_backup_flag()
      |             ~~~~~~~~~~~~~~~~~~~~~~~~~~          
 2342 |             , static_cast<first_which*>(0), static_cast<first_step*>(0)
      |             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 2343 |             );
      |             ~                                   
/usr/include/boost/variant/variant.hpp:2359:43:   required from ‘typename Visitor::result_type boost::variant<T0, TN>::internal_apply_visitor(Visitor&) const [with Visitor = boost::detail::variant::invoke_visitor<const XdmfArray::GetArrayType, false>; T0_ = boost::blank; TN = {boost::shared_ptr<std::vector<char, std::allocator<char> > >, boost::shared_ptr<std::vector<short int, std::allocator<short int> > >, boost::shared_ptr<std::vector<int, std::allocator<int> > >, boost::shared_ptr<std::vector<long int, std::allocator<long int> > >, boost::shared_ptr<std::vector<float, std::allocator<float> > >, boost::shared_ptr<std::vector<double, std::allocator<double> > >, boost::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, boost::shared_ptr<std::vector<short unsigned int, std::allocator<short unsigned int> > >, boost::shared_ptr<std::vector<unsigned int, std::allocator<unsigned int> > >, boost::shared_ptr<std::vector<long unsigned int, std::allocator<long unsigned int> > >, boost::shared_ptr<std::vector<long long unsigned int, std::allocator<long long unsigned int> > >, boost::shared_ptr<std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, boost::shared_array<const char>, boost::shared_array<const short int>, boost::shared_array<const int>, boost::shared_array<const long int>, boost::shared_array<const float>, boost::shared_array<const double>, boost::shared_array<const unsigned char>, boost::shared_array<const short unsigned int>, boost::shared_array<const unsigned int>, boost::shared_array<const long unsigned int>, boost::shared_array<const long long unsigned int>}; typename Visitor::result_type = boost::shared_ptr<const XdmfArrayType>]’
 2359 |         return internal_apply_visitor_impl(
      |                ~~~~~~~~~~~~~~~~~~~~~~~~~~~^
 2360 |               which_, which(), visitor, storage_.address()
      |               ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 2361 |             );
      |             ~                              
/usr/include/boost/variant/variant.hpp:2405:44:   required from ‘typename Visitor::result_type boost::variant<T0, TN>::apply_visitor(Visitor&) const & [with Visitor = const XdmfArray::GetArrayType; T0_ = boost::blank; TN = {boost::shared_ptr<std::vector<char, std::allocator<char> > >, boost::shared_ptr<std::vector<short int, std::allocator<short int> > >, boost::shared_ptr<std::vector<int, std::allocator<int> > >, boost::shared_ptr<std::vector<long int, std::allocator<long int> > >, boost::shared_ptr<std::vector<float, std::allocator<float> > >, boost::shared_ptr<std::vector<double, std::allocator<double> > >, boost::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, boost::shared_ptr<std::vector<short unsigned int, std::allocator<short unsigned int> > >, boost::shared_ptr<std::vector<unsigned int, std::allocator<unsigned int> > >, boost::shared_ptr<std::vector<long unsigned int, std::allocator<long unsigned int> > >, boost::shared_ptr<std::vector<long long unsigned int, std::allocator<long long unsigned int> > >, boost::shared_ptr<std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, boost::shared_array<const char>, boost::shared_array<const short int>, boost::shared_array<const int>, boost::shared_array<const long int>, boost::shared_array<const float>, boost::shared_array<const double>, boost::shared_array<const unsigned char>, boost::shared_array<const short unsigned int>, boost::shared_array<const unsigned int>, boost::shared_array<const long unsigned int>, boost::shared_array<const long long unsigned int>}; typename Visitor::result_type = boost::shared_ptr<const XdmfArrayType>]’
 2405 |         return this->internal_apply_visitor(invoker);
      |                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~
/usr/include/boost/variant/detail/apply_visitor_unary.hpp:68:64:   required from ‘typename Visitor::result_type boost::apply_visitor(const Visitor&, Visitable&&) [with Visitor = XdmfArray::GetArrayType; Visitable = const variant<blank, shared_ptr<std::vector<char, std::allocator<char> > >, shared_ptr<std::vector<short int, std::allocator<short int> > >, shared_ptr<std::vector<int, std::allocator<int> > >, shared_ptr<std::vector<long int, std::allocator<long int> > >, shared_ptr<std::vector<float, std::allocator<float> > >, shared_ptr<std::vector<double, std::allocator<double> > >, shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, shared_ptr<std::vector<short unsigned int, std::allocator<short unsigned int> > >, shared_ptr<std::vector<unsigned int, std::allocator<unsigned int> > >, shared_ptr<std::vector<long unsigned int, std::allocator<long unsigned int> > >, shared_ptr<std::vector<long long unsigned int, std::allocator<long long unsigned int> > >, shared_ptr<std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, shared_array<const char>, shared_array<const short int>, shared_array<const int>, shared_array<const long int>, shared_array<const float>, shared_array<const double>, shared_array<const unsigned char>, shared_array<const short unsigned int>, shared_array<const unsigned int>, shared_array<const long unsigned int>, shared_array<const long long unsigned int> >&; typename Visitor::result_type = shared_ptr<const XdmfArrayType>]’
   68 |     return ::boost::forward<Visitable>(visitable).apply_visitor(visitor);
      |            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~
/build/reproducible-path/vtk9-9.5.2+dfsg3/ThirdParty/xdmf3/vtkxdmf3/core/XdmfArray.cpp:642:32:   required from here
  642 |     return boost::apply_visitor(GetArrayType(mHeavyDataControllers[0]),
      |            ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  643 |                                 mArray);
      |                                 ~~~~~~~
/build/reproducible-path/vtk9-9.5.2+dfsg3/ThirdParty/xdmf3/vtkxdmf3/core/XdmfArray.cpp:216:30: error: no matching function for call to ‘getArrayType(__gnu_cxx::__alloc_traits<std::allocator<long unsigned int>, long unsigned int>::value_type*)’
  216 |     return this->getArrayType(&(array.get()->operator[](0)));
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/build/reproducible-path/vtk9-9.5.2+dfsg3/ThirdParty/xdmf3/vtkxdmf3/core/XdmfArray.cpp:216:30: note: there are 11 candidates
/build/reproducible-path/vtk9-9.5.2+dfsg3/ThirdParty/xdmf3/vtkxdmf3/core/XdmfArray.cpp:142:3: note: candidate 1: ‘boost::shared_ptr<const XdmfArrayType> XdmfArray::GetArrayType::getArrayType(const int*) const’ (near match)
  142 |   getArrayType(const int * const) const
      |   ^~~~~~~~~~~~
/build/reproducible-path/vtk9-9.5.2+dfsg3/ThirdParty/xdmf3/vtkxdmf3/core/XdmfArray.cpp:142:3: note: conversion of argument 1 would be ill-formed:
/build/reproducible-path/vtk9-9.5.2+dfsg3/ThirdParty/xdmf3/vtkxdmf3/core/XdmfArray.cpp:216:31: error: invalid conversion from ‘__gnu_cxx::__alloc_traits<std::allocator<long unsigned int>, long unsigned int>::value_type*’ {aka ‘long unsigned int*’} to ‘const int*’ [-fpermissive]
  216 |     return this->getArrayType(&(array.get()->operator[](0)));
      |                               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      |                               |
      |                               __gnu_cxx::__alloc_traits<std::allocator<long unsigned int>, long unsigned int>::value_type* {aka long unsigned int*}
/build/reproducible-path/vtk9-9.5.2+dfsg3/ThirdParty/xdmf3/vtkxdmf3/core/XdmfArray.cpp:148:3: note: candidate 2: ‘boost::shared_ptr<const XdmfArrayType> XdmfArray::GetArrayType::getArrayType(const long int*) const’ (near match)
  148 |   getArrayType(const long * const) const
      |   ^~~~~~~~~~~~



Reported upstream
https://gitlab.kitware.com/paraview/paraview/-/issues/22630
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.