Hi all, Andreas Tille, on 2022-09-29: > Am Wed, Sep 28, 2022 at 04:06:23PM -0400 schrieb Aaron M. Ucko: > > Per GCC's hint, please try formally substituting unique_ptr for > > auto_ptr. I haven't tested that approach for this package, but it's > > typically a safe drop-in replacement, and generally yields compilation > > errors in the rare cases where its usage would be problematic.
I believe in the case of anfo, that warnings about auto_ptr / unique_ptr are red herrings. If I search for "error:"s, then I get some errors about no match for operator<: In file included from /usr/include/c++/12/bits/refwrap.h:39, from /usr/include/c++/12/deque:65, from util.h:23: /usr/include/c++/12/bits/stl_function.h: In instantiation of ‘constexpr bool std::less<_Tp>::operator()(const _Tp&, const _Tp&) const [with _Tp = config::Policy]’: /usr/include/c++/12/bits/stl_tree.h:2533:33: required from ‘std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::iterator std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::find(const _Key&) [with _Key = config::Policy; _Val = config::Policy; _KeyOfValue = std::_Identity<config::Policy>; _Compare = std::less<config::Policy>; _Alloc = std::allocator<config::Policy>; iterator = std::_Rb_tree<config::Policy, config::Policy, std::_Identity<config::Policy>, std::less<config::Policy>, std::allocator<config::Policy> >::iterator]’ /usr/include/c++/12/bits/stl_set.h:795:25: required from ‘std::set<_Key, _Compare, _Alloc>::iterator std::set<_Key, _Compare, _Alloc>::find(const key_type&) [with _Key = config::Policy; _Compare = std::less<config::Policy>; _Alloc = std::allocator<config::Policy>; iterator = std::_Rb_tree<config::Policy, config::Policy, std::_Identity<config::Policy>, std::less<config::Policy>, std::allocator<config::Policy> >::const_iterator; key_type = config::Policy]’ stream.cc:479:13: required from ‘void streams::nub(google::protobuf::RepeatedPtrField<Element>&) [with E = config::Policy]’ stream.cc:531:5: required from here /usr/include/c++/12/bits/stl_function.h:408:20: error: no match for ‘operator<’ (operand types are ‘const config::Policy’ and ‘const config::Policy’) I've had a similar instance of this on #1012990, on which I have been banging my head until I unraveled the similar case #1012911 which has been fixed following a breadcrumb of patches stemming from a case described in clang documentation[1]. My current fix / workaround looks like [2] (keep in mind I studied C before C++, which is not a good thing for the quality of my C++). [1]: https://clang.llvm.org/compatibility.html#dep_lookup [2]: https://salsa.debian.org/med-team/librostlab-blast/-/blob/debian/1.0.1-13/debian/patches/gcc-12.patch Have a nice day, :) -- Étienne Mollier <emoll...@emlwks999.eu> Fingerprint: 8f91 b227 c7d6 f2b1 948c 8236 793c f67e 8f0d 11da Sent from /dev/pts/2, please excuse my verbosity.
signature.asc
Description: PGP signature