Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 10 Aug 2024 13:47:40 +0000
From:      bugzilla-noreply@freebsd.org
To:        ports-bugs@FreeBSD.org
Subject:   [Bug 280730] lang/spidermonkey102: fix build with clang and libc++ 19
Message-ID:  <bug-280730-7788@https.bugs.freebsd.org/bugzilla/>

next in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D280730

            Bug ID: 280730
           Summary: lang/spidermonkey102: fix build with clang and libc++
                    19
           Product: Ports & Packages
           Version: Latest
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Some People
          Priority: ---
         Component: Individual Port(s)
          Assignee: nc@FreeBSD.org
          Reporter: dim@FreeBSD.org
          Assignee: nc@FreeBSD.org
             Flags: maintainer-feedback?(nc@FreeBSD.org)

Clang 19 now diagnoses incorrect member accesses, which causes
lang/spidermonkey102 to fail with an error similar to:

=20=20=20
/wrkdirs/usr/ports/lang/spidermonkey102/work/firefox-102.9.0/js/src/threadi=
ng/ExclusiveData.h:113:29:
error: reference to non-static member function must be called
      113 |       : lock_(std::move(rhs.lock)), value_(std::move(rhs.value_=
)) {
          |                         ~~~~^~~~

Upstream fixed this for https://bugzilla.mozilla.org/1894423 in
changeset 223087fdc29f18678f6174e9807b8780e439acf6 [2], so pull this in
as a patch and apply it.

Also, 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.

With lang/spidermonkey102 and clang/libc++ 19 this results in errors
similar to:

=20=20=20
/wrkdirs/usr/ports/lang/spidermonkey102/work/firefox-102.9.0/js/src/builtin=
/intl/Locale.cpp:208:20:
error: implicit instantiation of undefined template 'std::char_traits<unsig=
ned
char>'
      208 |       iter_ =3D std::char_traits<CharT>::find(
          |                    ^
=20=20=20
/wrkdirs/usr/ports/lang/spidermonkey102/work/firefox-102.9.0/js/src/builtin=
/intl/Locale.cpp:769:21:
note: in instantiation of member function 'SepKeywordIterator<unsigned
char>::next' requested here
      769 |     beginKey =3D iter.next();
          |                     ^
=20=20=20
/wrkdirs/usr/ports/lang/spidermonkey102/work/firefox-102.9.0/js/src/builtin=
/intl/Locale.cpp:808:16:
note: in instantiation of function template specialization
'FindUnicodeExtensionType<unsigned char>' requested here
      808 |              ?
FindUnicodeExtensionType(unicodeExtension->latin1Chars(nogc),
          |                ^

Upstream fixed this for https://bugzilla.mozilla.org/1849070 in
changeset 68ff4d3f7338248b4d67cf03aade5a73f8d396b2 [3], so pull this in
as a patch and apply it.

[1] https://libcxx.llvm.org/ReleaseNotes/19.html#deprecations-and-removals
[2]
https://hg.mozilla.org/mozilla-central/rev/223087fdc29f18678f6174e9807b8780=
e439acf6
[3]
https://hg.mozilla.org/mozilla-central/rev/68ff4d3f7338248b4d67cf03aade5a73=
f8d396b2

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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-280730-7788>