devel/llvm17: fix build with libc++ 19 As noted in the libc++ 19 release notes [1], std::char_traits<> is now only provided for char, char8_t, char16_t, char32_t and wchar_t, and any instantiation for other types will fail. This causes devel/llvm17 to fail to compile with clang 19 and libc++ 19, resulting in errors similar to: /usr/include/c++/v1/string:820:42: error: implicit instantiation of undefined template 'std::char_traits<unsigned char>' 820 | static_assert(is_same<_CharT, typename traits_type::char_type>::value, | ^ /wrkdirs/usr/ports/devel/llvm17/work-default/llvm-project-17.0.6.src/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp:634:34: note: in instantiation of template class 'std::basic_string<unsigned char>' requested here 634 | std::basic_string<uint8_t> zeros(reg_info.byte_size, '\0'); | ^ /usr/include/c++/v1/__fwd/string.h:23:29: note: template is declared here 23 | struct _LIBCPP_TEMPLATE_VIS char_traits; | ^ Upstream llvm has fixed this in commit 68744ffbdd7d [2], so add this as either a PATCHFILES entry in the Makefile, or as a backported patch file. [1] https://libcxx.llvm.org/ReleaseNotes/19.html#deprecations-and-removals [2] https://github.com/llvm/llvm-project/commit/68744ffbdd7d
Created attachment 252459 [details] devel/llvm11: fix build with libc++ 19
Created attachment 252460 [details] devel/llvm12: fix build with libc++ 19
Created attachment 252461 [details] devel/llvm13: fix build with libc++ 19
Created attachment 252463 [details] devel/llvm15: fix build with libc++ 19
Created attachment 252464 [details] devel/llvm16: fix build with libc++ 19
Created attachment 252465 [details] devel/llvm17: fix build with libc++ 19
Created attachment 252466 [details] devel/llvm14: fix build with libc++ 19
A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=a28dcb76226d086ce3ffe928bbf138e207e691d6 commit a28dcb76226d086ce3ffe928bbf138e207e691d6 Author: Dimitry Andric <dim@FreeBSD.org> AuthorDate: 2024-08-02 20:03:04 +0000 Commit: Dimitry Andric <dim@FreeBSD.org> CommitDate: 2024-08-02 22:02:46 +0000 devel/llvm11: fix build with libc++ 19 As noted in the libc++ 19 release notes [1], std::char_traits<> is now only provided for char, char8_t, char16_t, char32_t and wchar_t, and any instantiation for other types will fail. This causes devel/llvm11 to fail to compile with clang 19 and libc++ 19, resulting in errors similar to: /usr/include/c++/v1/string:820:42: error: implicit instantiation of undefined template 'std::char_traits<unsigned char>' 820 | static_assert(is_same<_CharT, typename traits_type::char_type>::value, | ^ /wrkdirs/usr/ports/devel/llvm11/work-default/llvm-11.0.1.src/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp:492:34: note: in instantiation of template class 'std::basic_string<unsigned char>' requested here 638 | std::basic_string<uint8_t> zeros(reg_info.byte_size, '\0'); | ^ /usr/include/c++/v1/__fwd/string.h:23:29: note: template is declared here 23 | struct _LIBCPP_TEMPLATE_VIS char_traits; | ^ Upstream llvm has fixed this in commit 68744ffbdd7d [2], so add this as a backported patch file. [1] https://libcxx.llvm.org/ReleaseNotes/19.html#deprecations-and-removals [2] https://github.com/llvm/llvm-project/commit/68744ffbdd7d PR: 280579 Approved by: brooks (maintainer) MFH: 2024Q3 devel/llvm11/files/patch-backport-68744ffbdd (new) | 29 ++++++++++++++++++++++ 1 file changed, 29 insertions(+)
A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=413bde7bbb5ceb746a226593d67c1bc95fcdd5ce commit 413bde7bbb5ceb746a226593d67c1bc95fcdd5ce Author: Dimitry Andric <dim@FreeBSD.org> AuthorDate: 2024-08-02 19:45:52 +0000 Commit: Dimitry Andric <dim@FreeBSD.org> CommitDate: 2024-08-02 22:01:11 +0000 devel/llvm14: fix build with libc++ 19 As noted in the libc++ 19 release notes [1], std::char_traits<> is now only provided for char, char8_t, char16_t, char32_t and wchar_t, and any instantiation for other types will fail. This causes devel/llvm14 to fail to compile with clang 19 and libc++ 19, resulting in errors similar to: /usr/include/c++/v1/string:820:42: error: implicit instantiation of undefined template 'std::char_traits<unsigned char>' 820 | static_assert(is_same<_CharT, typename traits_type::char_type>::value, | ^ /wrkdirs/usr/ports/devel/llvm14/work-default/llvm-project-14.0.6.src/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp:603:34: note: in instantiation of template class 'std::basic_string<unsigned char>' requested here 638 | std::basic_string<uint8_t> zeros(reg_info.byte_size, '\0'); | ^ /usr/include/c++/v1/__fwd/string.h:23:29: note: template is declared here 23 | struct _LIBCPP_TEMPLATE_VIS char_traits; | ^ Upstream llvm has fixed this in commit 68744ffbdd7d [2], so add this as a PATCHFILES entry in the Makefile. [1] https://libcxx.llvm.org/ReleaseNotes/19.html#deprecations-and-removals [2] https://github.com/llvm/llvm-project/commit/68744ffbdd7d PR: 280579 Approved by: brooks (maintainer) MFH: 2024Q3 devel/llvm14/Makefile | 1 + devel/llvm14/distinfo | 4 +++- 2 files changed, 4 insertions(+), 1 deletion(-)
A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=0626947ce16eeffc65226c508425601a04a6544b commit 0626947ce16eeffc65226c508425601a04a6544b Author: Dimitry Andric <dim@FreeBSD.org> AuthorDate: 2024-08-02 20:01:54 +0000 Commit: Dimitry Andric <dim@FreeBSD.org> CommitDate: 2024-08-02 22:02:32 +0000 devel/llvm12: fix build with libc++ 19 As noted in the libc++ 19 release notes [1], std::char_traits<> is now only provided for char, char8_t, char16_t, char32_t and wchar_t, and any instantiation for other types will fail. This causes devel/llvm12 to fail to compile with clang 19 and libc++ 19, resulting in errors similar to: /usr/include/c++/v1/string:820:42: error: implicit instantiation of undefined template 'std::char_traits<unsigned char>' 820 | static_assert(is_same<_CharT, typename traits_type::char_type>::value, | ^ /wrkdirs/usr/ports/devel/llvm12/work-default/llvm-project-12.0.1.src/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp:578:34: note: in instantiation of template class 'std::basic_string<unsigned char>' requested here 638 | std::basic_string<uint8_t> zeros(reg_info.byte_size, '\0'); | ^ /usr/include/c++/v1/__fwd/string.h:23:29: note: template is declared here 23 | struct _LIBCPP_TEMPLATE_VIS char_traits; | ^ Upstream llvm has fixed this in commit 68744ffbdd7d [2], so add this as a backported patch file. [1] https://libcxx.llvm.org/ReleaseNotes/19.html#deprecations-and-removals [2] https://github.com/llvm/llvm-project/commit/68744ffbdd7d PR: 280579 Approved by: brooks (maintainer) MFH: 2024Q3 devel/llvm12/files/patch-backport-68744ffbdd (new) | 29 ++++++++++++++++++++++ 1 file changed, 29 insertions(+)
A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=2643a65e5d4700feaae78bfafe8bf9ab9b37f03c commit 2643a65e5d4700feaae78bfafe8bf9ab9b37f03c Author: Dimitry Andric <dim@FreeBSD.org> AuthorDate: 2024-08-02 19:59:56 +0000 Commit: Dimitry Andric <dim@FreeBSD.org> CommitDate: 2024-08-02 22:01:29 +0000 devel/llvm13: fix build with libc++ 19 As noted in the libc++ 19 release notes [1], std::char_traits<> is now only provided for char, char8_t, char16_t, char32_t and wchar_t, and any instantiation for other types will fail. This causes devel/llvm13 to fail to compile with clang 19 and libc++ 19, resulting in errors similar to: /usr/include/c++/v1/string:820:42: error: implicit instantiation of undefined template 'std::char_traits<unsigned char>' 820 | static_assert(is_same<_CharT, typename traits_type::char_type>::value, | ^ /wrkdirs/usr/ports/devel/llvm13/work-default/llvm-project-13.0.1.src/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp:595:34: note: in instantiation of template class 'std::basic_string<unsigned char>' requested here 638 | std::basic_string<uint8_t> zeros(reg_info.byte_size, '\0'); | ^ /usr/include/c++/v1/__fwd/string.h:23:29: note: template is declared here 23 | struct _LIBCPP_TEMPLATE_VIS char_traits; | ^ Upstream llvm has fixed this in commit 68744ffbdd7d [2], so add this as a backported patch file. [1] https://libcxx.llvm.org/ReleaseNotes/19.html#deprecations-and-removals [2] https://github.com/llvm/llvm-project/commit/68744ffbdd7d PR: 280579 Approved by: brooks (maintainer) MFH: 2024Q3 devel/llvm13/files/patch-backport-68744ffbdd (new) | 29 ++++++++++++++++++++++ 1 file changed, 29 insertions(+)
A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=b8c038829f6bf89110528e33889ef43b01f23e79 commit b8c038829f6bf89110528e33889ef43b01f23e79 Author: Dimitry Andric <dim@FreeBSD.org> AuthorDate: 2024-08-02 19:44:40 +0000 Commit: Dimitry Andric <dim@FreeBSD.org> CommitDate: 2024-08-02 22:00:50 +0000 devel/llvm15: fix build with libc++ 19 As noted in the libc++ 19 release notes [1], std::char_traits<> is now only provided for char, char8_t, char16_t, char32_t and wchar_t, and any instantiation for other types will fail. This causes devel/llvm15 to fail to compile with clang 19 and libc++ 19, resulting in errors similar to: /usr/include/c++/v1/string:820:42: error: implicit instantiation of undefined template 'std::char_traits<unsigned char>' 820 | static_assert(is_same<_CharT, typename traits_type::char_type>::value, | ^ /wrkdirs/usr/ports/devel/llvm15/work-default/llvm-project-15.0.7.src/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp:638:34: note: in instantiation of template class 'std::basic_string<unsigned char>' requested here 638 | std::basic_string<uint8_t> zeros(reg_info.byte_size, '\0'); | ^ /usr/include/c++/v1/__fwd/string.h:23:29: note: template is declared here 23 | struct _LIBCPP_TEMPLATE_VIS char_traits; | ^ Upstream llvm has fixed this in commit 68744ffbdd7d [2], so add this as a PATCHFILES entry in the Makefile. [1] https://libcxx.llvm.org/ReleaseNotes/19.html#deprecations-and-removals [2] https://github.com/llvm/llvm-project/commit/68744ffbdd7d PR: 280579 Approved by: brooks (maintainer) MFH: 2024Q3 devel/llvm15/Makefile | 1 + devel/llvm15/distinfo | 4 +++- 2 files changed, 4 insertions(+), 1 deletion(-)
A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=4c6d856c838f3e5edffd0d3ed01983d924907799 commit 4c6d856c838f3e5edffd0d3ed01983d924907799 Author: Dimitry Andric <dim@FreeBSD.org> AuthorDate: 2024-08-02 19:37:01 +0000 Commit: Dimitry Andric <dim@FreeBSD.org> CommitDate: 2024-08-02 22:00:31 +0000 devel/llvm16: fix build with libc++ 19 As noted in the libc++ 19 release notes [1], std::char_traits<> is now only provided for char, char8_t, char16_t, char32_t and wchar_t, and any instantiation for other types will fail. This causes devel/llvm16 to fail to compile with clang 19 and libc++ 19, resulting in errors similar to: /usr/include/c++/v1/string:820:42: error: implicit instantiation of undefined template 'std::char_traits<unsigned char>' 820 | static_assert(is_same<_CharT, typename traits_type::char_type>::value, | ^ /wrkdirs/usr/ports/devel/llvm16/work-default/llvm-project-16.0.6.src/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp:636:34: note: in instantiation of template class 'std::basic_string<unsigned char>' requested here 636 | std::basic_string<uint8_t> zeros(reg_info.byte_size, '\0'); | ^ /usr/include/c++/v1/__fwd/string.h:23:29: note: template is declared here 23 | struct _LIBCPP_TEMPLATE_VIS char_traits; | ^ Upstream llvm has fixed this in commit 68744ffbdd7d [2], so add this as a PATCHFILES entry in the Makefile. [1] https://libcxx.llvm.org/ReleaseNotes/19.html#deprecations-and-removals [2] https://github.com/llvm/llvm-project/commit/68744ffbdd7d PR: 280579 Approved by: brooks (maintainer) MFH: 2024Q3 devel/llvm16/Makefile | 1 + devel/llvm16/distinfo | 4 +++- 2 files changed, 4 insertions(+), 1 deletion(-)
A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=7624cbd8af7758af64631f04930089e13fb9fcf7 commit 7624cbd8af7758af64631f04930089e13fb9fcf7 Author: Dimitry Andric <dim@FreeBSD.org> AuthorDate: 2024-08-02 12:42:16 +0000 Commit: Dimitry Andric <dim@FreeBSD.org> CommitDate: 2024-08-02 21:59:07 +0000 devel/llvm17: fix build with libc++ 19 As noted in the libc++ 19 release notes [1], std::char_traits<> is now only provided for char, char8_t, char16_t, char32_t and wchar_t, and any instantiation for other types will fail. This causes devel/llvm17 to fail to compile with clang 19 and libc++ 19, resulting in errors similar to: /usr/include/c++/v1/string:820:42: error: implicit instantiation of undefined template 'std::char_traits<unsigned char>' 820 | static_assert(is_same<_CharT, typename traits_type::char_type>::value, | ^ /wrkdirs/usr/ports/devel/llvm17/work-default/llvm-project-17.0.6.src/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp:634:34: note: in instantiation of template class 'std::basic_string<unsigned char>' requested here 634 | std::basic_string<uint8_t> zeros(reg_info.byte_size, '\0'); | ^ /usr/include/c++/v1/__fwd/string.h:23:29: note: template is declared here 23 | struct _LIBCPP_TEMPLATE_VIS char_traits; | ^ Upstream llvm has fixed this in commit 68744ffbdd7d [2], so add this as a PATCHFILES entry in the Makefile. [1] https://libcxx.llvm.org/ReleaseNotes/19.html#deprecations-and-removals [2] https://github.com/llvm/llvm-project/commit/68744ffbdd7d PR: 280579 Approved by: brooks (maintainer) MFH: 2024Q3 devel/llvm17/Makefile | 1 + devel/llvm17/distinfo | 6 +++++- 2 files changed, 6 insertions(+), 1 deletion(-)
A commit in branch 2024Q3 references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=8d6d4ee6f904bbfd2604fe35499b6f914ebaefeb commit 8d6d4ee6f904bbfd2604fe35499b6f914ebaefeb Author: Dimitry Andric <dim@FreeBSD.org> AuthorDate: 2024-08-02 20:03:04 +0000 Commit: Dimitry Andric <dim@FreeBSD.org> CommitDate: 2024-08-02 22:24:18 +0000 devel/llvm11: fix build with libc++ 19 As noted in the libc++ 19 release notes [1], std::char_traits<> is now only provided for char, char8_t, char16_t, char32_t and wchar_t, and any instantiation for other types will fail. This causes devel/llvm11 to fail to compile with clang 19 and libc++ 19, resulting in errors similar to: /usr/include/c++/v1/string:820:42: error: implicit instantiation of undefined template 'std::char_traits<unsigned char>' 820 | static_assert(is_same<_CharT, typename traits_type::char_type>::value, | ^ /wrkdirs/usr/ports/devel/llvm11/work-default/llvm-11.0.1.src/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp:492:34: note: in instantiation of template class 'std::basic_string<unsigned char>' requested here 638 | std::basic_string<uint8_t> zeros(reg_info.byte_size, '\0'); | ^ /usr/include/c++/v1/__fwd/string.h:23:29: note: template is declared here 23 | struct _LIBCPP_TEMPLATE_VIS char_traits; | ^ Upstream llvm has fixed this in commit 68744ffbdd7d [2], so add this as a backported patch file. [1] https://libcxx.llvm.org/ReleaseNotes/19.html#deprecations-and-removals [2] https://github.com/llvm/llvm-project/commit/68744ffbdd7d PR: 280579 Approved by: brooks (maintainer) MFH: 2024Q3 (cherry picked from commit a28dcb76226d086ce3ffe928bbf138e207e691d6) devel/llvm11/files/patch-backport-68744ffbdd (new) | 29 ++++++++++++++++++++++ 1 file changed, 29 insertions(+)
A commit in branch 2024Q3 references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=ff553877227e10a468f541cd6332a2d1bba9c714 commit ff553877227e10a468f541cd6332a2d1bba9c714 Author: Dimitry Andric <dim@FreeBSD.org> AuthorDate: 2024-08-02 19:44:40 +0000 Commit: Dimitry Andric <dim@FreeBSD.org> CommitDate: 2024-08-02 22:23:48 +0000 devel/llvm15: fix build with libc++ 19 As noted in the libc++ 19 release notes [1], std::char_traits<> is now only provided for char, char8_t, char16_t, char32_t and wchar_t, and any instantiation for other types will fail. This causes devel/llvm15 to fail to compile with clang 19 and libc++ 19, resulting in errors similar to: /usr/include/c++/v1/string:820:42: error: implicit instantiation of undefined template 'std::char_traits<unsigned char>' 820 | static_assert(is_same<_CharT, typename traits_type::char_type>::value, | ^ /wrkdirs/usr/ports/devel/llvm15/work-default/llvm-project-15.0.7.src/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp:638:34: note: in instantiation of template class 'std::basic_string<unsigned char>' requested here 638 | std::basic_string<uint8_t> zeros(reg_info.byte_size, '\0'); | ^ /usr/include/c++/v1/__fwd/string.h:23:29: note: template is declared here 23 | struct _LIBCPP_TEMPLATE_VIS char_traits; | ^ Upstream llvm has fixed this in commit 68744ffbdd7d [2], so add this as a PATCHFILES entry in the Makefile. [1] https://libcxx.llvm.org/ReleaseNotes/19.html#deprecations-and-removals [2] https://github.com/llvm/llvm-project/commit/68744ffbdd7d PR: 280579 Approved by: brooks (maintainer) MFH: 2024Q3 (cherry picked from commit b8c038829f6bf89110528e33889ef43b01f23e79) devel/llvm15/Makefile | 1 + devel/llvm15/distinfo | 4 +++- 2 files changed, 4 insertions(+), 1 deletion(-)
A commit in branch 2024Q3 references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=413e4f9161ad0816b15f01e4c6b4f22cd1522281 commit 413e4f9161ad0816b15f01e4c6b4f22cd1522281 Author: Dimitry Andric <dim@FreeBSD.org> AuthorDate: 2024-08-02 12:42:16 +0000 Commit: Dimitry Andric <dim@FreeBSD.org> CommitDate: 2024-08-02 22:23:31 +0000 devel/llvm17: fix build with libc++ 19 As noted in the libc++ 19 release notes [1], std::char_traits<> is now only provided for char, char8_t, char16_t, char32_t and wchar_t, and any instantiation for other types will fail. This causes devel/llvm17 to fail to compile with clang 19 and libc++ 19, resulting in errors similar to: /usr/include/c++/v1/string:820:42: error: implicit instantiation of undefined template 'std::char_traits<unsigned char>' 820 | static_assert(is_same<_CharT, typename traits_type::char_type>::value, | ^ /wrkdirs/usr/ports/devel/llvm17/work-default/llvm-project-17.0.6.src/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp:634:34: note: in instantiation of template class 'std::basic_string<unsigned char>' requested here 634 | std::basic_string<uint8_t> zeros(reg_info.byte_size, '\0'); | ^ /usr/include/c++/v1/__fwd/string.h:23:29: note: template is declared here 23 | struct _LIBCPP_TEMPLATE_VIS char_traits; | ^ Upstream llvm has fixed this in commit 68744ffbdd7d [2], so add this as a PATCHFILES entry in the Makefile. [1] https://libcxx.llvm.org/ReleaseNotes/19.html#deprecations-and-removals [2] https://github.com/llvm/llvm-project/commit/68744ffbdd7d PR: 280579 Approved by: brooks (maintainer) MFH: 2024Q3 (cherry picked from commit 7624cbd8af7758af64631f04930089e13fb9fcf7) devel/llvm17/Makefile | 1 + devel/llvm17/distinfo | 6 +++++- 2 files changed, 6 insertions(+), 1 deletion(-)
A commit in branch 2024Q3 references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=d1b0e75cd60802b603a6f07aa3f268cdc38ad053 commit d1b0e75cd60802b603a6f07aa3f268cdc38ad053 Author: Dimitry Andric <dim@FreeBSD.org> AuthorDate: 2024-08-02 19:59:56 +0000 Commit: Dimitry Andric <dim@FreeBSD.org> CommitDate: 2024-08-02 22:24:05 +0000 devel/llvm13: fix build with libc++ 19 As noted in the libc++ 19 release notes [1], std::char_traits<> is now only provided for char, char8_t, char16_t, char32_t and wchar_t, and any instantiation for other types will fail. This causes devel/llvm13 to fail to compile with clang 19 and libc++ 19, resulting in errors similar to: /usr/include/c++/v1/string:820:42: error: implicit instantiation of undefined template 'std::char_traits<unsigned char>' 820 | static_assert(is_same<_CharT, typename traits_type::char_type>::value, | ^ /wrkdirs/usr/ports/devel/llvm13/work-default/llvm-project-13.0.1.src/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp:595:34: note: in instantiation of template class 'std::basic_string<unsigned char>' requested here 638 | std::basic_string<uint8_t> zeros(reg_info.byte_size, '\0'); | ^ /usr/include/c++/v1/__fwd/string.h:23:29: note: template is declared here 23 | struct _LIBCPP_TEMPLATE_VIS char_traits; | ^ Upstream llvm has fixed this in commit 68744ffbdd7d [2], so add this as a backported patch file. [1] https://libcxx.llvm.org/ReleaseNotes/19.html#deprecations-and-removals [2] https://github.com/llvm/llvm-project/commit/68744ffbdd7d PR: 280579 Approved by: brooks (maintainer) MFH: 2024Q3 (cherry picked from commit 2643a65e5d4700feaae78bfafe8bf9ab9b37f03c) devel/llvm13/files/patch-backport-68744ffbdd (new) | 29 ++++++++++++++++++++++ 1 file changed, 29 insertions(+)
A commit in branch 2024Q3 references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=0bab1100ed8a3253cb212b1d73ae0cc282a2fda6 commit 0bab1100ed8a3253cb212b1d73ae0cc282a2fda6 Author: Dimitry Andric <dim@FreeBSD.org> AuthorDate: 2024-08-02 19:37:01 +0000 Commit: Dimitry Andric <dim@FreeBSD.org> CommitDate: 2024-08-02 22:23:44 +0000 devel/llvm16: fix build with libc++ 19 As noted in the libc++ 19 release notes [1], std::char_traits<> is now only provided for char, char8_t, char16_t, char32_t and wchar_t, and any instantiation for other types will fail. This causes devel/llvm16 to fail to compile with clang 19 and libc++ 19, resulting in errors similar to: /usr/include/c++/v1/string:820:42: error: implicit instantiation of undefined template 'std::char_traits<unsigned char>' 820 | static_assert(is_same<_CharT, typename traits_type::char_type>::value, | ^ /wrkdirs/usr/ports/devel/llvm16/work-default/llvm-project-16.0.6.src/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp:636:34: note: in instantiation of template class 'std::basic_string<unsigned char>' requested here 636 | std::basic_string<uint8_t> zeros(reg_info.byte_size, '\0'); | ^ /usr/include/c++/v1/__fwd/string.h:23:29: note: template is declared here 23 | struct _LIBCPP_TEMPLATE_VIS char_traits; | ^ Upstream llvm has fixed this in commit 68744ffbdd7d [2], so add this as a PATCHFILES entry in the Makefile. [1] https://libcxx.llvm.org/ReleaseNotes/19.html#deprecations-and-removals [2] https://github.com/llvm/llvm-project/commit/68744ffbdd7d PR: 280579 Approved by: brooks (maintainer) MFH: 2024Q3 (cherry picked from commit 4c6d856c838f3e5edffd0d3ed01983d924907799) devel/llvm16/Makefile | 1 + devel/llvm16/distinfo | 4 +++- 2 files changed, 4 insertions(+), 1 deletion(-)
A commit in branch 2024Q3 references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=dab5e4a7a05e6c99781d7924a95c7aa3b4a95051 commit dab5e4a7a05e6c99781d7924a95c7aa3b4a95051 Author: Dimitry Andric <dim@FreeBSD.org> AuthorDate: 2024-08-02 20:01:54 +0000 Commit: Dimitry Andric <dim@FreeBSD.org> CommitDate: 2024-08-02 22:24:14 +0000 devel/llvm12: fix build with libc++ 19 As noted in the libc++ 19 release notes [1], std::char_traits<> is now only provided for char, char8_t, char16_t, char32_t and wchar_t, and any instantiation for other types will fail. This causes devel/llvm12 to fail to compile with clang 19 and libc++ 19, resulting in errors similar to: /usr/include/c++/v1/string:820:42: error: implicit instantiation of undefined template 'std::char_traits<unsigned char>' 820 | static_assert(is_same<_CharT, typename traits_type::char_type>::value, | ^ /wrkdirs/usr/ports/devel/llvm12/work-default/llvm-project-12.0.1.src/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp:578:34: note: in instantiation of template class 'std::basic_string<unsigned char>' requested here 638 | std::basic_string<uint8_t> zeros(reg_info.byte_size, '\0'); | ^ /usr/include/c++/v1/__fwd/string.h:23:29: note: template is declared here 23 | struct _LIBCPP_TEMPLATE_VIS char_traits; | ^ Upstream llvm has fixed this in commit 68744ffbdd7d [2], so add this as a backported patch file. [1] https://libcxx.llvm.org/ReleaseNotes/19.html#deprecations-and-removals [2] https://github.com/llvm/llvm-project/commit/68744ffbdd7d PR: 280579 Approved by: brooks (maintainer) MFH: 2024Q3 (cherry picked from commit 0626947ce16eeffc65226c508425601a04a6544b) devel/llvm12/files/patch-backport-68744ffbdd (new) | 29 ++++++++++++++++++++++ 1 file changed, 29 insertions(+)
A commit in branch 2024Q3 references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=7c58282e5ae421d902d575d5f2da79789603d157 commit 7c58282e5ae421d902d575d5f2da79789603d157 Author: Dimitry Andric <dim@FreeBSD.org> AuthorDate: 2024-08-02 19:45:52 +0000 Commit: Dimitry Andric <dim@FreeBSD.org> CommitDate: 2024-08-02 22:24:01 +0000 devel/llvm14: fix build with libc++ 19 As noted in the libc++ 19 release notes [1], std::char_traits<> is now only provided for char, char8_t, char16_t, char32_t and wchar_t, and any instantiation for other types will fail. This causes devel/llvm14 to fail to compile with clang 19 and libc++ 19, resulting in errors similar to: /usr/include/c++/v1/string:820:42: error: implicit instantiation of undefined template 'std::char_traits<unsigned char>' 820 | static_assert(is_same<_CharT, typename traits_type::char_type>::value, | ^ /wrkdirs/usr/ports/devel/llvm14/work-default/llvm-project-14.0.6.src/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp:603:34: note: in instantiation of template class 'std::basic_string<unsigned char>' requested here 638 | std::basic_string<uint8_t> zeros(reg_info.byte_size, '\0'); | ^ /usr/include/c++/v1/__fwd/string.h:23:29: note: template is declared here 23 | struct _LIBCPP_TEMPLATE_VIS char_traits; | ^ Upstream llvm has fixed this in commit 68744ffbdd7d [2], so add this as a PATCHFILES entry in the Makefile. [1] https://libcxx.llvm.org/ReleaseNotes/19.html#deprecations-and-removals [2] https://github.com/llvm/llvm-project/commit/68744ffbdd7d PR: 280579 Approved by: brooks (maintainer) MFH: 2024Q3 (cherry picked from commit 413bde7bbb5ceb746a226593d67c1bc95fcdd5ce) devel/llvm14/Makefile | 1 + devel/llvm14/distinfo | 4 +++- 2 files changed, 4 insertions(+), 1 deletion(-)