Re: Upgrading C++ library features.
- In reply to: Dimitry Andric : "Re: Upgrading C++ library features."
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Fri, 25 Sep 2026 10:02:20 UTC
On Fri, Sep 25, 2026 at 09:16:42AM +0200, Dimitry Andric wrote: > On 25 Sep 2026, at 00:22, Mark Millard <marklmi@yahoo.com> wrote: > > > > On 9/24/26 13:25, Zaphod Beeblebrox wrote: > >> Yes, the complaint is about enumerate not being in the views namespace. > >> Same as your error. > >> > >> ... So I'm reading that there is no known way to grab a newer set of > >> libc++ and associated header files. 15.1 is clang 19, it seems. Is 16 > >> planning to ship with clang21, or might it ship with clang23? > > > > Unclear at this time. > > > > https://www.freebsd.org/releng/ reports the estimate: > > > > December 2027 FreeBSD 16.0 > > At the moment 16-CURRENT, 15-STABLE and 14-STABLE have clang and libc++ 21.1.8. > > I merged 21.1.8 into 16-CURRENT on 2026-04-25, and then MFC'd it to 15-STABLE and 14-STABLE on 2026-05-30. > > We are now in a bit of a strange situation, that the just-released 14.5-RELEASE has clang/libc++ 21.1.8, while the somewhat older 15.1-RELEASE still has 19.1.7. > > That said, libc++ 21.1.8 still doesn't have std::views::enumerate, unfortunately, so we will have to upgrade the base system to clang and libc++ 23.1 at some point. > > > > As stands, the ports tree has an in process: > > > > https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=296377 > > "[exp-run] update LLVM_DEFAULT to 22" > > It is unrelated, the ports tree has lots of different LLVM versions, but these do not install their own copies of libc++. This is different from the various gcc ports, which each have their (possibly incompatible) versions of libstdc++. > > The above bug is only about bumping the default version if the user doesn't specify any specific pinned version. > There is PR294367 - devel/llvm22: add an option to build and install bundled libcxx where I asked to provide an option for llvm ports to install the bundled libc++. I still think that this is a quite useful improvement.