[Bug 290195] devel/libunistring: fails with C++ applications

From: <bugzilla-noreply_at_freebsd.org>
Date: Mon, 13 Oct 2025 10:36:48 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=290195

            Bug ID: 290195
           Summary: devel/libunistring: fails with C++ applications
           Product: Ports & Packages
           Version: Latest
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Only Me
          Priority: ---
         Component: Individual Port(s)
          Assignee: ports-bugs@FreeBSD.org
          Reporter: fuz@FreeBSD.org
                CC: takefu@airport.fm
             Flags: maintainer-feedback?(takefu@airport.fm)
                CC: takefu@airport.fm
             Flags: merge-quarterly?

Dependent port editors/rehex fails as follows:

In file included from src/BatchedCharacterRenderer.cpp:20:
/usr/local/include/unistr.h:95:1: error: templates must have C++ linkage
   95 | template <typename T>
      | ^~~~~~~~~~~~~~~~~~~~~
/usr/local/include/unistr.h:39:1: note: extern "C" language linkage
specification begins here
   39 | extern "C" {
      | ^
/usr/local/include/unistr.h:97:1: error: templates must have C++ linkage
   97 | template <>
      | ^~~~~~~~~~~

This is because the header now defines templates inside an extern "C" block.
There's nothing dependent ports can do about this.  If they use C++ and try
to include <unistr.h>, the build will fail.

Please fix or back out the update until upstream provides a fix.  Remember to
MFH the fix to 2025Q4.

-- 
You are receiving this mail because:
You are the assignee for the bug.