diff options
Diffstat (limited to 'dev-libs/xalan-c')
-rw-r--r-- | dev-libs/xalan-c/files/xalan-c-1.12-gcc-15.patch | 51 | ||||
-rw-r--r-- | dev-libs/xalan-c/xalan-c-1.12-r2.ebuild | 1 |
2 files changed, 52 insertions, 0 deletions
diff --git a/dev-libs/xalan-c/files/xalan-c-1.12-gcc-15.patch b/dev-libs/xalan-c/files/xalan-c-1.12-gcc-15.patch new file mode 100644 index 000000000000..2b2f2b42c46f --- /dev/null +++ b/dev-libs/xalan-c/files/xalan-c-1.12-gcc-15.patch @@ -0,0 +1,51 @@ +https://bugs.gentoo.org/936501 + +This function does not compile with gcc-15, but it was never instantiated, so just remove it. + +--- a/src/xalanc/XMLSupport/XalanOtherEncodingWriter.hpp ++++ b/src/xalanc/XMLSupport/XalanOtherEncodingWriter.hpp +@@ -301,44 +301,6 @@ public: + return write(chars, start, length, m_charRefFunctor); + } + +- void +- writeSafe( +- const XalanDOMChar* theChars, +- size_type theLength) +- { +- for(size_type i = 0; i < theLength; ++i) +- { +- const XalanDOMChar ch = theChars[i]; +- +- if (isUTF16HighSurrogate(ch) == true) +- { +- if (i + 1 >= theLength) +- { +- throwInvalidUTF16SurrogateException(ch, 0, getMemoryManager()); +- } +- else +- { +- XalanUnicodeChar value = decodeUTF16SurrogatePair(ch, theChars[i+1], getMemoryManager()); +- +- if (this->m_isPresentable(value)) +- { +- write(value); +- } +- else +- { +- this->writeNumberedEntityReference(value); +- } +- +- ++i; +- } +- } +- else +- { +- write(static_cast<XalanUnicodeChar>(ch)); +- } +- } +- } +- + void + write(const XalanDOMChar* theChars) + { diff --git a/dev-libs/xalan-c/xalan-c-1.12-r2.ebuild b/dev-libs/xalan-c/xalan-c-1.12-r2.ebuild index beb96a63de6f..ce92a2b0e6c6 100644 --- a/dev-libs/xalan-c/xalan-c-1.12-r2.ebuild +++ b/dev-libs/xalan-c/xalan-c-1.12-r2.ebuild @@ -45,6 +45,7 @@ PATCHES=( "${FILESDIR}"/${P}-fix-lto.patch "${FILESDIR}"/${P}-fix-threads.patch "${FILESDIR}"/${P}-icu-75.patch + "${FILESDIR}"/${P}-gcc-15.patch ) src_configure() { |