With libc++ 20 or higher devel/ispc fails to build, with errors similar to: /wrkdirs/usr/ports/devel/ispc/work/ispc-1.30.0/src/util.cpp:51:11: error: '__libcpp_verbose_abort' is missing exception specification 'noexcept' 51 | void std::__libcpp_verbose_abort(char const *format, ...) | ^ | noexcept /usr/include/c++/v1/__verbose_abort:24:28: note: previous declaration is here 24 | __printf__, 1, 2) void __libcpp_verbose_abort(const char* __format, ...) _NOEXCEPT; | ^ This is because ispc attemps to override __libcpp_verbose_abort(), which is an internal libc++ function, but it misses a noexcept specification. However, overriding __libcpp_verbose_abort() is only necessary on older versions of macOS. Therefore, exclude the whole #if block if the operating system is not macOS.
Created attachment 268032 [details] devel/ispc: fix build with libc++ >= 20
Approved.
A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=e4b498d8a085a273bd7a18f1edba01d2db3508b2 commit e4b498d8a085a273bd7a18f1edba01d2db3508b2 Author: Dimitry Andric <dim@FreeBSD.org> AuthorDate: 2026-02-13 12:49:34 +0000 Commit: Dimitry Andric <dim@FreeBSD.org> CommitDate: 2026-02-16 19:56:51 +0000 devel/ispc: fix build with libc++ >= 20 With libc++ 20 or higher devel/ispc fails to build, with errors similar to: /wrkdirs/usr/ports/devel/ispc/work/ispc-1.30.0/src/util.cpp:51:11: error: '__libcpp_verbose_abort' is missing exception specification 'noexcept' 51 | void std::__libcpp_verbose_abort(char const *format, ...) | ^ | noexcept /usr/include/c++/v1/__verbose_abort:24:28: note: previous declaration is here 24 | __printf__, 1, 2) void __libcpp_verbose_abort(const char* __format, ...) _NOEXCEPT; | ^ This is because ispc attemps to override __libcpp_verbose_abort(), which is an internal libc++ function, but it misses a noexcept specification. However, overriding __libcpp_verbose_abort() is only necessary on older versions of macOS. Therefore, exclude the whole #if block if the operating system is not macOS. PR: 293163 Approved by: yuri (maintainer) MFH: 2026Q1 devel/ispc/files/patch-src_util.cpp (new) | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+)
A commit in branch 2026Q1 references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=b961319a394339f411f1ac176a422c343320cca3 commit b961319a394339f411f1ac176a422c343320cca3 Author: Dimitry Andric <dim@FreeBSD.org> AuthorDate: 2026-02-13 12:49:34 +0000 Commit: Dimitry Andric <dim@FreeBSD.org> CommitDate: 2026-02-16 19:59:36 +0000 devel/ispc: fix build with libc++ >= 20 With libc++ 20 or higher devel/ispc fails to build, with errors similar to: /wrkdirs/usr/ports/devel/ispc/work/ispc-1.30.0/src/util.cpp:51:11: error: '__libcpp_verbose_abort' is missing exception specification 'noexcept' 51 | void std::__libcpp_verbose_abort(char const *format, ...) | ^ | noexcept /usr/include/c++/v1/__verbose_abort:24:28: note: previous declaration is here 24 | __printf__, 1, 2) void __libcpp_verbose_abort(const char* __format, ...) _NOEXCEPT; | ^ This is because ispc attemps to override __libcpp_verbose_abort(), which is an internal libc++ function, but it misses a noexcept specification. However, overriding __libcpp_verbose_abort() is only necessary on older versions of macOS. Therefore, exclude the whole #if block if the operating system is not macOS. PR: 293163 Approved by: yuri (maintainer) MFH: 2026Q1 (cherry picked from commit e4b498d8a085a273bd7a18f1edba01d2db3508b2) devel/ispc/files/patch-src_util.cpp (new) | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+)