Hahnfeld added a comment. FWIW this also causes a `static_assert` failure while building ROOT <https://github.com/root-project/root/>:
In file included from /home/jhahnfel/ROOT/src/tmva/tmva/src/DNN/Architectures/Cpu/CpuBuffer.cxx:17: In file included from /opt/rh/gcc-toolset-11/root/usr/lib/gcc/x86_64-redhat-linux/11/../../../../include/c++/11/memory:77: In file included from /opt/rh/gcc-toolset-11/root/usr/lib/gcc/x86_64-redhat-linux/11/../../../../include/c++/11/bits/shared_ptr.h:53: /opt/rh/gcc-toolset-11/root/usr/lib/gcc/x86_64-redhat-linux/11/../../../../include/c++/11/bits/shared_ptr_base.h:1110:4: error: static assertion failed due to requirement '__is_invocable<TMVA::DNN::TCpuBuffer<double>::TDestructor &, double **&>::value': deleter expression d(p) is well-formed static_assert(__is_invocable<_Deleter&, _Yp*&>::value, ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /opt/rh/gcc-toolset-11/root/usr/lib/gcc/x86_64-redhat-linux/11/../../../../include/c++/11/bits/shared_ptr.h:178:11: note: in instantiation of function template specialization 'std::__shared_ptr<double *, __gnu_cxx::_S_atomic>::__shared_ptr<double *, TMVA::DNN::TCpuBuffer<double>::TDestructor, void>' requested here : __shared_ptr<_Tp>(__p, std::move(__d)) { } ^ /home/jhahnfel/ROOT/src/tmva/tmva/src/DNN/Architectures/Cpu/CpuBuffer.cxx:42:14: note: in instantiation of function template specialization 'std::shared_ptr<double *>::shared_ptr<double *, TMVA::DNN::TCpuBuffer<double>::TDestructor, void>' requested here fBuffer = std::shared_ptr<AReal *>(pointer, fDestructor); ^ After the revert, at least this issue is gone when building with current `main`. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D129973/new/ https://reviews.llvm.org/D129973 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits