<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.freebsd.org/bugzilla/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.freebsd.org/bugzilla/"
          
          maintainer="bugmeister@FreeBSD.org"
>

    <bug>
          <bug_id>292113</bug_id>
          
          <creation_ts>2026-01-01 20:52:22 +0000</creation_ts>
          <short_desc>devel/llvm17: fix build with clang 21</short_desc>
          <delta_ts>2026-01-14 17:48:12 +0000</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>Ports &amp; Packages</product>
          <component>Individual Port(s)</component>
          <version>Latest</version>
          <rep_platform>Any</rep_platform>
          <op_sys>Any</op_sys>
          <bug_status>Closed</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>---</priority>
          <bug_severity>Affects Some People</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>292067</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Dimitry Andric">dim</reporter>
          <assigned_to name="Brooks Davis">brooks</assigned_to>
          
          

      

      

      <flag name="maintainer-feedback"
          id="94743"
          type_id="3"
          status="+"
          setter="brooks"
    />

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1399569</commentid>
    <comment_count>0</comment_count>
    <who name="Dimitry Andric">dim</who>
    <bug_when>2026-01-01 20:52:22 +0000</bug_when>
    <thetext>Recent versions of clang complain about explicit copy constructors,
leading to errors similar to:

    /wrkdirs/usr/ports/devel/llvm17/work-default/llvm-project-17.0.6.src/llvm/tools/sancov/sancov.cpp
    /wrkdirs/usr/ports/devel/llvm17/work-default/llvm-project-17.0.6.src/llvm/tools/sancov/sancov.cpp:521:42: error: chosen constructor is explicit in copy-initialization
      521 |     return SpecialCaseList::createOrDie({{ClIgnorelist}},
          |                                          ^~~~~~~~~~~~~~
    /usr/include/c++/v1/string:1153:64: note: explicit constructor declared here
     1153 |   _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX20 explicit basic_string(const _Tp&amp; __t) {
          |                                                                ^
    /usr/include/c++/v1/__vector/vector.h:276:91: note: passing argument to parameter &apos;__il&apos; here
      276 |   _LIBCPP_CONSTEXPR_SINCE_CXX20 _LIBCPP_HIDE_FROM_ABI vector(initializer_list&lt;value_type&gt; __il) {
          |                                                                                           ^

In this case, `ClIgnoreList` is an instance of `cl::opt`, not a
`std::string` as expected. Use `getValue()` to get the actual
`std::string` value.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1399577</commentid>
    <comment_count>1</comment_count>
      <attachid>266740</attachid>
    <who name="Dimitry Andric">dim</who>
    <bug_when>2026-01-01 20:58:14 +0000</bug_when>
    <thetext>Created attachment 266740
devel/llvm17: fix build with clang 21</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1401799</commentid>
    <comment_count>2</comment_count>
    <who name="Brooks Davis">brooks</who>
    <bug_when>2026-01-14 13:31:44 +0000</bug_when>
    <thetext>LGTM

All of these need minor commit message tweaks due to 2026Q3, but are otherwise good to go.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1401838</commentid>
    <comment_count>3</comment_count>
    <who name="">commit-hook</who>
    <bug_when>2026-01-14 17:38:08 +0000</bug_when>
    <thetext>A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=39d6b5aaaf453db99e7834e643563381ecfa19e3

commit 39d6b5aaaf453db99e7834e643563381ecfa19e3
Author:     Dimitry Andric &lt;dim@FreeBSD.org&gt;
AuthorDate: 2026-01-01 20:11:11 +0000
Commit:     Dimitry Andric &lt;dim@FreeBSD.org&gt;
CommitDate: 2026-01-14 17:36:44 +0000

    devel/llvm17: fix build with clang 21

    Recent versions of clang complain about explicit copy constructors,
    leading to errors similar to:

        /wrkdirs/usr/ports/devel/llvm17/work-default/llvm-project-17.0.6.src/llvm/tools/sancov/sancov.cpp
        /wrkdirs/usr/ports/devel/llvm17/work-default/llvm-project-17.0.6.src/llvm/tools/sancov/sancov.cpp:521:42: error: chosen constructor is explicit in copy-initialization
          521 |     return SpecialCaseList::createOrDie({{ClIgnorelist}},
              |                                          ^~~~~~~~~~~~~~
        /usr/include/c++/v1/string:1153:64: note: explicit constructor declared here
         1153 |   _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX20 explicit basic_string(const _Tp&amp; __t) {
              |                                                                ^
        /usr/include/c++/v1/__vector/vector.h:276:91: note: passing argument to parameter &apos;__il&apos; here
          276 |   _LIBCPP_CONSTEXPR_SINCE_CXX20 _LIBCPP_HIDE_FROM_ABI vector(initializer_list&lt;value_type&gt; __il) {
              |                                                                                           ^

    In this case, `ClIgnoreList` is an instance of `cl::opt`, not a
    `std::string` as expected. Use `getValue()` to get the actual
    `std::string` value.

    PR:             292113
    Approved by:    brooks (maintainer)
    MFH:            2026Q1

 devel/llvm17/files/patch-llvm_tools_sancov_sancov.cpp (new) | 11 +++++++++++
 1 file changed, 11 insertions(+)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1401840</commentid>
    <comment_count>4</comment_count>
    <who name="">commit-hook</who>
    <bug_when>2026-01-14 17:41:10 +0000</bug_when>
    <thetext>A commit in branch 2026Q1 references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=f1ff9a74483519d4a0a5148e8c9440124713d96e

commit f1ff9a74483519d4a0a5148e8c9440124713d96e
Author:     Dimitry Andric &lt;dim@FreeBSD.org&gt;
AuthorDate: 2026-01-01 20:11:11 +0000
Commit:     Dimitry Andric &lt;dim@FreeBSD.org&gt;
CommitDate: 2026-01-14 17:40:40 +0000

    devel/llvm17: fix build with clang 21

    Recent versions of clang complain about explicit copy constructors,
    leading to errors similar to:

        /wrkdirs/usr/ports/devel/llvm17/work-default/llvm-project-17.0.6.src/llvm/tools/sancov/sancov.cpp
        /wrkdirs/usr/ports/devel/llvm17/work-default/llvm-project-17.0.6.src/llvm/tools/sancov/sancov.cpp:521:42: error: chosen constructor is explicit in copy-initialization
          521 |     return SpecialCaseList::createOrDie({{ClIgnorelist}},
              |                                          ^~~~~~~~~~~~~~
        /usr/include/c++/v1/string:1153:64: note: explicit constructor declared here
         1153 |   _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX20 explicit basic_string(const _Tp&amp; __t) {
              |                                                                ^
        /usr/include/c++/v1/__vector/vector.h:276:91: note: passing argument to parameter &apos;__il&apos; here
          276 |   _LIBCPP_CONSTEXPR_SINCE_CXX20 _LIBCPP_HIDE_FROM_ABI vector(initializer_list&lt;value_type&gt; __il) {
              |                                                                                           ^

    In this case, `ClIgnoreList` is an instance of `cl::opt`, not a
    `std::string` as expected. Use `getValue()` to get the actual
    `std::string` value.

    PR:             292113
    Approved by:    brooks (maintainer)
    MFH:            2026Q1

    (cherry picked from commit 39d6b5aaaf453db99e7834e643563381ecfa19e3)

 devel/llvm17/files/patch-llvm_tools_sancov_sancov.cpp (new) | 11 +++++++++++
 1 file changed, 11 insertions(+)</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>266740</attachid>
            <date>2026-01-01 20:58:14 +0000</date>
            <delta_ts>2026-01-01 20:58:14 +0000</delta_ts>
            <desc>devel/llvm17: fix build with clang 21</desc>
            <filename>devel__llvm17-fix-clang21-build-1.diff</filename>
            <type>text/plain</type>
            <size>2404</size>
            <attacher name="Dimitry Andric">dim</attacher>
            
              <data encoding="base64">Y29tbWl0IDkyNmIyOThkNGZkN2E3ODc5NzhiY2I5MTE0OTMwYzUyZmVhZTA4MzMKQXV0aG9yOiBE
aW1pdHJ5IEFuZHJpYyA8ZGltQEZyZWVCU0Qub3JnPgpEYXRlOiAgIDIwMjYtMDEtMDFUMjE6MTE6
MTErMDE6MDAKCiAgICBkZXZlbC9sbHZtMTc6IGZpeCBidWlsZCB3aXRoIGNsYW5nIDIxCiAgICAK
ICAgIFJlY2VudCB2ZXJzaW9ucyBvZiBjbGFuZyBjb21wbGFpbiBhYm91dCBleHBsaWNpdCBjb3B5
IGNvbnN0cnVjdG9ycywKICAgIGxlYWRpbmcgdG8gZXJyb3JzIHNpbWlsYXIgdG86CiAgICAKICAg
ICAgICAvd3JrZGlycy91c3IvcG9ydHMvZGV2ZWwvbGx2bTE3L3dvcmstZGVmYXVsdC9sbHZtLXBy
b2plY3QtMTcuMC42LnNyYy9sbHZtL3Rvb2xzL3NhbmNvdi9zYW5jb3YuY3BwCiAgICAgICAgL3dy
a2RpcnMvdXNyL3BvcnRzL2RldmVsL2xsdm0xNy93b3JrLWRlZmF1bHQvbGx2bS1wcm9qZWN0LTE3
LjAuNi5zcmMvbGx2bS90b29scy9zYW5jb3Yvc2FuY292LmNwcDo1MjE6NDI6IGVycm9yOiBjaG9z
ZW4gY29uc3RydWN0b3IgaXMgZXhwbGljaXQgaW4gY29weS1pbml0aWFsaXphdGlvbgogICAgICAg
ICAgNTIxIHwgICAgIHJldHVybiBTcGVjaWFsQ2FzZUxpc3Q6OmNyZWF0ZU9yRGllKHt7Q2xJZ25v
cmVsaXN0fX0sCiAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIF5+fn5+fn5+fn5+fn5+CiAgICAgICAgL3Vzci9pbmNsdWRlL2MrKy92MS9zdHJp
bmc6MTE1Mzo2NDogbm90ZTogZXhwbGljaXQgY29uc3RydWN0b3IgZGVjbGFyZWQgaGVyZQogICAg
ICAgICAxMTUzIHwgICBfTElCQ1BQX0hJREVfRlJPTV9BQkkgX0xJQkNQUF9DT05TVEVYUFJfU0lO
Q0VfQ1hYMjAgZXhwbGljaXQgYmFzaWNfc3RyaW5nKGNvbnN0IF9UcCYgX190KSB7CiAgICAgICAg
ICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBeCiAgICAgICAgL3Vzci9pbmNsdWRlL2MrKy92MS9fX3ZlY3Rvci92ZWN0
b3IuaDoyNzY6OTE6IG5vdGU6IHBhc3NpbmcgYXJndW1lbnQgdG8gcGFyYW1ldGVyICdfX2lsJyBo
ZXJlCiAgICAgICAgICAyNzYgfCAgIF9MSUJDUFBfQ09OU1RFWFBSX1NJTkNFX0NYWDIwIF9MSUJD
UFBfSElERV9GUk9NX0FCSSB2ZWN0b3IoaW5pdGlhbGl6ZXJfbGlzdDx2YWx1ZV90eXBlPiBfX2ls
KSB7CiAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCiAg
ICAKICAgIEluIHRoaXMgY2FzZSwgYENsSWdub3JlTGlzdGAgaXMgYW4gaW5zdGFuY2Ugb2YgYGNs
OjpvcHRgLCBub3QgYQogICAgYHN0ZDo6c3RyaW5nYCBhcyBleHBlY3RlZC4gVXNlIGBnZXRWYWx1
ZSgpYCB0byBnZXQgdGhlIGFjdHVhbAogICAgYHN0ZDo6c3RyaW5nYCB2YWx1ZS4KICAgIAogICAg
UFI6ICAgICAgICAgICAgIDI5MjExMwogICAgQXBwcm92ZWQgYnk6ICAgIGJyb29rcyAobWFpbnRh
aW5lcikKICAgIE1GSDogICAgICAgICAgICAyMDI1UTQKCmRpZmYgLS1naXQgYS9kZXZlbC9sbHZt
MTcvZmlsZXMvcGF0Y2gtbGx2bV90b29sc19zYW5jb3Zfc2FuY292LmNwcCBiL2RldmVsL2xsdm0x
Ny9maWxlcy9wYXRjaC1sbHZtX3Rvb2xzX3NhbmNvdl9zYW5jb3YuY3BwCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMC4uNDYwODVhNTNjZjNiCi0tLSAvZGV2L251bGwKKysr
IGIvZGV2ZWwvbGx2bTE3L2ZpbGVzL3BhdGNoLWxsdm1fdG9vbHNfc2FuY292X3NhbmNvdi5jcHAK
QEAgLTAsMCArMSwxMSBAQAorLS0tIGxsdm0vdG9vbHMvc2FuY292L3NhbmNvdi5jcHAub3JpZwky
MDIzLTExLTI4IDA4OjUyOjI4IFVUQworKysrIGxsdm0vdG9vbHMvc2FuY292L3NhbmNvdi5jcHAK
K0BAIC01MTgsNyArNTE4LDcgQEAgY2xhc3MgSWdub3JlbGlzdHMgeyAocHJpdmF0ZSkKKyAgIHN0
YXRpYyBzdGQ6OnVuaXF1ZV9wdHI8U3BlY2lhbENhc2VMaXN0PiBjcmVhdGVVc2VySWdub3JlbGlz
dCgpIHsKKyAgICAgaWYgKENsSWdub3JlbGlzdC5lbXB0eSgpKQorICAgICAgIHJldHVybiBzdGQ6
OnVuaXF1ZV9wdHI8U3BlY2lhbENhc2VMaXN0PigpOworLSAgICByZXR1cm4gU3BlY2lhbENhc2VM
aXN0OjpjcmVhdGVPckRpZSh7e0NsSWdub3JlbGlzdH19LAorKyAgICByZXR1cm4gU3BlY2lhbENh
c2VMaXN0OjpjcmVhdGVPckRpZSh7e0NsSWdub3JlbGlzdC5nZXRWYWx1ZSgpfX0sCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICp2ZnM6OmdldFJlYWxGaWxlU3lzdGVt
KCkpOworICAgfQorICAgc3RkOjp1bmlxdWVfcHRyPFNwZWNpYWxDYXNlTGlzdD4gRGVmYXVsdEln
bm9yZWxpc3Q7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>