Since clang 16 (and gcc 11) the default C++ standard is now gnu++17. Because devel/p8-platform's Makefile does not explicitly set its C++ standard, this leads to an error: /wrkdirs/usr/ports/devel/p8-platform/work/platform-p8-platform-2.1.0.1/src/util/StringUtils.cpp:456:69: error: no member named 'ptr_fun' in the global namespace str.erase(str.begin(), ::find_if(str.begin(), str.end(), ::not1(::ptr_fun(isspace_c)))); ~~^ /wrkdirs/usr/ports/devel/p8-platform/work/platform-p8-platform-2.1.0.1/src/util/StringUtils.cpp:469:58: error: no member named 'ptr_fun' in the global namespace str.erase(::find_if(str.rbegin(), str.rend(), ::not1(::ptr_fun(isspace_c))).base(), str.end()); ~~^ Upstream already fixed this in <https://github.com/Pulse-Eight/platform/commit/a7cd0d5>, via <https://github.com/Pulse-Eight/platform/pull/45>, so apply it. While here, pet portlint.
Created attachment 242481 [details] devel/p8-platform: fix build with clang 16
^Triage: reporter is committer, assign accordingly
looks good to me
A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=90b5b1e859bd89d629adc15ef72898a8e786e2ce commit 90b5b1e859bd89d629adc15ef72898a8e786e2ce Author: Dimitry Andric <dim@FreeBSD.org> AuthorDate: 2023-05-29 17:11:00 +0000 Commit: Dimitry Andric <dim@FreeBSD.org> CommitDate: 2023-06-04 16:21:24 +0000 devel/p8-platform: fix build with clang 16 Since clang 16 (and gcc 11) the default C++ standard is now gnu++17. Because devel/p8-platform's Makefile does not explicitly set its C++ standard, this leads to an error: /wrkdirs/usr/ports/devel/p8-platform/work/platform-p8-platform-2.1.0.1/src/util/StringUtils.cpp:456:69: error: no member named 'ptr_fun' in the global namespace str.erase(str.begin(), ::find_if(str.begin(), str.end(), ::not1(::ptr_fun(isspace_c)))); ~~^ /wrkdirs/usr/ports/devel/p8-platform/work/platform-p8-platform-2.1.0.1/src/util/StringUtils.cpp:469:58: error: no member named 'ptr_fun' in the global namespace str.erase(::find_if(str.rbegin(), str.rend(), ::not1(::ptr_fun(isspace_c))).base(), str.end()); ~~^ Upstream already fixed this in <https://github.com/Pulse-Eight/platform/commit/a7cd0d5>, via <https://github.com/Pulse-Eight/platform/pull/45>, so apply it. While here, pet portlint. PR: 271710 Approved by: mickael.maillot@gmail.com (maintainer) MFH: 2023Q2 devel/p8-platform/Makefile | 5 ++++- devel/p8-platform/distinfo | 4 +++- devel/p8-platform/pkg-descr | 3 ++- 3 files changed, 9 insertions(+), 3 deletions(-)