From 823873bcb9afb557dc6ebee1052da3ff5caac187 Mon Sep 17 00:00:00 2001 From: ProsperousPotato Date: Mon, 12 Jan 2026 20:36:03 +0000 Subject: add icecat from parona-overlay --- .../icecat/files/icecat-128.12.0-clang21.patch | 123 +++++++++++++++++++++ 1 file changed, 123 insertions(+) create mode 100644 www-client/icecat/files/icecat-128.12.0-clang21.patch (limited to 'www-client/icecat/files/icecat-128.12.0-clang21.patch') diff --git a/www-client/icecat/files/icecat-128.12.0-clang21.patch b/www-client/icecat/files/icecat-128.12.0-clang21.patch new file mode 100644 index 0000000..961e25d --- /dev/null +++ b/www-client/icecat/files/icecat-128.12.0-clang21.patch @@ -0,0 +1,123 @@ +https://bugzilla.mozilla.org/show_bug.cgi?id=1954003 +https://phabricator.services.mozilla.com/D241583 +https://github.com/mozilla-firefox/firefox/commit/6d368d85ef52ce67141f44f3fdbfd51ef23f14e6 +From 02f94f3cdc97fc3b2bc4654658230c2d896417ae Mon Sep 17 00:00:00 2001 +From: Mike Hommey +Date: Mon, 17 Mar 2025 23:31:43 +0000 +Subject: [PATCH] Bug 1954003 - Fix new implicit-int-conversion warnings from + clang 21. r=spidermonkey-reviewers,arai + +/builds/worker/workspace/obj-build/dist/include/js/Conversions.h:364:70: error: implicit conversion loses integer precision: 'int' to 'unsigned char' [-Werror,-Wimplicit-int-conversion] + 364 | return (bits & mozilla::FloatingPoint::kSignBit) ? ~result + 1 + | ~~~~~~ ~~~~~~~~^~~ +/builds/worker/workspace/obj-build/dist/include/js/Conversions.h:544:42: note: in instantiation of function template specialization 'JS::ToUnsignedInteger' requested here + 544 | inline int8_t ToUint8(double d) { return ToUnsignedInteger(d); } + | ^ +/builds/worker/workspace/obj-build/dist/include/js/Conversions.h:364:70: error: implicit conversion loses integer precision: 'int' to 'unsigned short' [-Werror,-Wimplicit-int-conversion] + 364 | return (bits & mozilla::FloatingPoint::kSignBit) ? ~result + 1 + | ~~~~~~ ~~~~~~~~^~~ +/builds/worker/workspace/obj-build/dist/include/js/Conversions.h:549:45: note: in instantiation of function template specialization 'JS::ToUnsignedInteger' requested here + 549 | inline uint16_t ToUint16(double d) { return ToUnsignedInteger(d); } + | ^ + +Differential Revision: https://phabricator.services.mozilla.com/D241584 +--- a/js/public/Conversions.h ++++ b/js/public/Conversions.h +@@ -361,8 +361,9 @@ inline UnsignedInteger ToUnsignedInteger(double d) { + } + + // Compute the congruent value in the signed range. +- return (bits & mozilla::FloatingPoint::kSignBit) ? ~result + 1 +- : result; ++ return (bits & mozilla::FloatingPoint::kSignBit) ++ ? UnsignedInteger(~result) + 1 ++ : result; + } + + template + +https://phabricator.services.mozilla.com/D241582 +https://github.com/mozilla-firefox/firefox/commit/3053f782bbb35895d632855bb5007282d7ec45e2 + +From 3053f782bbb35895d632855bb5007282d7ec45e2 Mon Sep 17 00:00:00 2001 +From: Mike Hommey +Date: Mon, 17 Mar 2025 23:31:42 +0000 +Subject: [PATCH] Bug 1954003 - Fix new implicit-int-conversion warnings from + clang 21. r=dom-core,mccr8 + +/builds/worker/checkouts/gecko/dom/base/nsINode.h:2055:32: error: implicit conversion loses integer precision: 'int' to 'uint32_t' (aka 'unsigned int') [-Werror,-Wimplicit-int-conversion] + 2055 | mBoolFlags = (mBoolFlags & ~(1 << name)) | (value << name); + | ~ ^~~~~~~~~~~~ +/builds/worker/checkouts/gecko/dom/base/nsINode.h:2067:19: error: implicit conversion loses integer precision: 'int' to 'uint32_t' (aka 'unsigned int') [-Werror,-Wimplicit-int-conversion] + 2067 | mBoolFlags &= ~(1 << name); + | ~~ ^~~~~~~~~~~~ + +Differential Revision: https://phabricator.services.mozilla.com/D241582 +--- a/dom/base/nsINode.h ++++ b/dom/base/nsINode.h +@@ -2065,25 +2065,25 @@ class nsINode : public mozilla::dom::EventTarget { + void SetBoolFlag(BooleanFlag name, bool value) { + static_assert(BooleanFlagCount <= 8 * sizeof(mBoolFlags), + "Too many boolean flags"); +- mBoolFlags = (mBoolFlags & ~(1 << name)) | (value << name); ++ mBoolFlags = (mBoolFlags & ~(1U << name)) | (value << name); + } + + void SetBoolFlag(BooleanFlag name) { + static_assert(BooleanFlagCount <= 8 * sizeof(mBoolFlags), + "Too many boolean flags"); +- mBoolFlags |= (1 << name); ++ mBoolFlags |= (1U << name); + } + + void ClearBoolFlag(BooleanFlag name) { + static_assert(BooleanFlagCount <= 8 * sizeof(mBoolFlags), + "Too many boolean flags"); +- mBoolFlags &= ~(1 << name); ++ mBoolFlags &= ~(1U << name); + } + + bool GetBoolFlag(BooleanFlag name) const { + static_assert(BooleanFlagCount <= 8 * sizeof(mBoolFlags), + "Too many boolean flags"); +- return mBoolFlags & (1 << name); ++ return mBoolFlags & (1U << name); + } + + public: + +https://phabricator.services.mozilla.com/D241584 +https://github.com/mozilla-firefox/firefox/commit/02f94f3cdc97fc3b2bc4654658230c2d896417ae + +From 6d368d85ef52ce67141f44f3fdbfd51ef23f14e6 Mon Sep 17 00:00:00 2001 +From: Mike Hommey +Date: Mon, 17 Mar 2025 23:31:43 +0000 +Subject: [PATCH] Bug 1954003 - Fix new implicit-int-conversion warnings from + clang 21. r=gfx-reviewers,lsalzman + +/builds/worker/checkouts/gecko/dom/canvas/CanvasRenderingContext2D.cpp:6284:9: error: implicit conversion loses integer precision: 'int32_t' (aka 'int') to 'uint32_t' (aka 'unsigned int') [-Werror,-Wimplicit-int-conversion] + 6284 | w = -aSw; + | ~ ^~~~ +/builds/worker/checkouts/gecko/dom/canvas/CanvasRenderingContext2D.cpp:6290:9: error: implicit conversion loses integer precision: 'int32_t' (aka 'int') to 'uint32_t' (aka 'unsigned int') [-Werror,-Wimplicit-int-conversion] + 6290 | h = -aSh; + | ~ ^~~~ + +Differential Revision: https://phabricator.services.mozilla.com/D241583 +--- a/dom/canvas/CanvasRenderingContext2D.cpp ++++ b/dom/canvas/CanvasRenderingContext2D.cpp +@@ -6281,13 +6281,13 @@ already_AddRefed CanvasRenderingContext2D::GetImageData( + // relevant direction. + uint32_t w, h; + if (aSw < 0) { +- w = -aSw; ++ w = uint32_t(-aSw); + aSx -= w; + } else { + w = aSw; + } + if (aSh < 0) { +- h = -aSh; ++ h = uint32_t(-aSh); + aSy -= h; + } else { + h = aSh; -- cgit v1.2.3