llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT--> @llvm/pr-subscribers-clang Author: FantasqueX (FantasqueX) <details> <summary>Changes</summary> Currently, if `CLANG_HAVE_LIBXML` is defined, and the version of libxml2 is above 2.12.0, there will be two warnings when building clang. warning: initializing 'xmlErrorPtr' (aka 'struct _xmlError *') with an expression of type 'const xmlError *' (aka 'const struct _xmlError *') discards qualifiers Since this commit https://gitlab.gnome.org/GNOME/libxml2/-/commit/45470611b047db78106dcb2fdbd4164163c15ab7, libxml2 makes cmlGetLastError return a const error. This patch follows libxml2. Making the result a const pointer should be compatible with versions before 2.12.0. Tested on ArchLinux with libxml2 2.12.3 installed. --- Full diff: https://github.com/llvm/llvm-project/pull/76719.diff 1 Files Affected: - (modified) clang/tools/c-index-test/c-index-test.c (+2-2) ``````````diff diff --git a/clang/tools/c-index-test/c-index-test.c b/clang/tools/c-index-test/c-index-test.c index 6fa400a0675b7a..a79da8eac30972 100644 --- a/clang/tools/c-index-test/c-index-test.c +++ b/clang/tools/c-index-test/c-index-test.c @@ -695,7 +695,7 @@ static void ValidateCommentXML(const char *Str, const char *CommentSchemaFile) { Doc = xmlParseDoc((const xmlChar *) Str); if (!Doc) { - xmlErrorPtr Error = xmlGetLastError(); + const xmlError *Error = xmlGetLastError(); printf(" CommentXMLInvalid [not well-formed XML: %s]", Error->message); return; } @@ -705,7 +705,7 @@ static void ValidateCommentXML(const char *Str, const char *CommentSchemaFile) { if (!status) printf(" CommentXMLValid"); else if (status > 0) { - xmlErrorPtr Error = xmlGetLastError(); + const xmlError *Error = xmlGetLastError(); printf(" CommentXMLInvalid [not valid XML: %s]", Error->message); } else printf(" libXMLError"); `````````` </details> https://github.com/llvm/llvm-project/pull/76719 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits