mirror of
git://git.openembedded.org/meta-openembedded
synced 2026-04-02 02:49:12 +00:00
mozjs-115: fix build with clang and libc++ 19
Signed-off-by: Khem Raj <raj.khem@gmail.com>
This commit is contained in:
parent
cfd5a02d26
commit
2eb7336df2
36
meta-oe/recipes-extended/mozjs/mozjs-115/1849070.patch
Normal file
36
meta-oe/recipes-extended/mozjs/mozjs-115/1849070.patch
Normal file
@ -0,0 +1,36 @@
|
||||
Bug 1849070 - Avoid using char_traits<unsigned char>. r=spidermonkey-reviewers,anba
|
||||
|
||||
It is not guaranteed to exist by the standard, and is actively being
|
||||
removed from libc++ in LLVM 18.
|
||||
|
||||
Differential Revision: https://phabricator.services.mozilla.com/D186421
|
||||
|
||||
Upstream-Status: Backport [https://hg.mozilla.org/mozilla-central/rev/68ff4d3f7338248b4d67cf03aade5a73f8d396b2]
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
|
||||
--- a/js/src/builtin/intl/Locale.cpp
|
||||
+++ b/js/src/builtin/intl/Locale.cpp
|
||||
@@ -802,8 +802,10 @@ static inline auto FindUnicodeExtensionT
|
||||
UnicodeKey key) {
|
||||
JS::AutoCheckCannotGC nogc;
|
||||
return unicodeExtension->hasLatin1Chars()
|
||||
- ? FindUnicodeExtensionType(unicodeExtension->latin1Chars(nogc),
|
||||
- unicodeExtension->length(), key)
|
||||
+ ? FindUnicodeExtensionType(
|
||||
+ reinterpret_cast<const char*>(
|
||||
+ unicodeExtension->latin1Chars(nogc)),
|
||||
+ unicodeExtension->length(), key)
|
||||
: FindUnicodeExtensionType(unicodeExtension->twoByteChars(nogc),
|
||||
unicodeExtension->length(), key);
|
||||
}
|
||||
@@ -920,7 +922,9 @@ static BaseNamePartsResult BaseNameParts
|
||||
static inline auto BaseNameParts(JSLinearString* baseName) {
|
||||
JS::AutoCheckCannotGC nogc;
|
||||
return baseName->hasLatin1Chars()
|
||||
- ? BaseNameParts(baseName->latin1Chars(nogc), baseName->length())
|
||||
+ ? BaseNameParts(
|
||||
+ reinterpret_cast<const char*>(baseName->latin1Chars(nogc)),
|
||||
+ baseName->length())
|
||||
: BaseNameParts(baseName->twoByteChars(nogc), baseName->length());
|
||||
}
|
||||
|
||||
30
meta-oe/recipes-extended/mozjs/mozjs-115/1894423.patch
Normal file
30
meta-oe/recipes-extended/mozjs/mozjs-115/1894423.patch
Normal file
@ -0,0 +1,30 @@
|
||||
Bug 1894423 - Remove unused ExclusiveData move constructor. r=spidermonkey-reviewers,jonco
|
||||
|
||||
Because the constructor is actually not used, the compiler used to not
|
||||
complain about it being broken. Recent changes on clang trunk made it
|
||||
catch this problem without the constructor being used.
|
||||
|
||||
As Mutex doesn't have a move constructor, it's also not only a matter of
|
||||
adding the missing underscore to lock.
|
||||
|
||||
As the constructor is never used, just remove it.
|
||||
|
||||
Differential Revision: https://phabricator.services.mozilla.com/D209108
|
||||
|
||||
Upstream-Status: Backport [https://hg.mozilla.org/mozilla-central/rev/223087fdc29f]
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
|
||||
--- a/js/src/threading/ExclusiveData.h
|
||||
+++ b/js/src/threading/ExclusiveData.h
|
||||
@@ -109,11 +109,6 @@ class ExclusiveData {
|
||||
explicit ExclusiveData(const MutexId& id, Args&&... args)
|
||||
: lock_(id), value_(std::forward<Args>(args)...) {}
|
||||
|
||||
- ExclusiveData(ExclusiveData&& rhs)
|
||||
- : lock_(std::move(rhs.lock)), value_(std::move(rhs.value_)) {
|
||||
- MOZ_ASSERT(&rhs != this, "self-move disallowed!");
|
||||
- }
|
||||
-
|
||||
ExclusiveData& operator=(ExclusiveData&& rhs) {
|
||||
this->~ExclusiveData();
|
||||
new (mozilla::KnownNotNull, this) ExclusiveData(std::move(rhs));
|
||||
@ -16,6 +16,8 @@ SRC_URI = "https://archive.mozilla.org/pub/firefox/releases/${PV}esr/source/fire
|
||||
file://musl-disable-stackwalk.patch \
|
||||
file://0001-add-arm-to-list-of-mozinline.patch \
|
||||
file://armv5.patch \
|
||||
file://1849070.patch \
|
||||
file://1894423.patch \
|
||||
"
|
||||
SRC_URI[sha256sum] = "16be46f16a356a2b8bd3541805a24c8a2acf6f077cf8a65859689685c26025e0"
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user