with this patch it is possible to compile Vbox on libxml-2.12 --- VirtualBox-7.0.18/src/VBox/Runtime/r3/xml.cpp.orig +++ VirtualBox-7.0.18/src/VBox/Runtime/r3/xml.cpp @@ -131,7 +131,7 @@ RTStrFree(msg); } -XmlError::XmlError(xmlErrorPtr aErr) +XmlError::XmlError(const xmlError *aErr) { if (!aErr) throw EInvalidArg(RT_SRC_POS); @@ -145,7 +145,7 @@ * Composes a single message for the given error. The caller must free the * returned string using RTStrFree() when no more necessary. */ -/* static */ char *XmlError::Format(xmlErrorPtr aErr) +/* static */ char *XmlError::Format(const xmlError *aErr) { const char *msg = aErr->message ? aErr->message : ""; size_t msgLen = strlen(msg); --- VirtualBox-7.0.18/include/iprt/cpp/xml.h.orig +++ VirtualBox-7.0.18/include/iprt/cpp/xml.h @@ -113,9 +113,9 @@ class RT_DECL_CLASS XmlError : public RuntimeError { public: - XmlError(xmlErrorPtr aErr); + XmlError(const xmlError *aErr); - static char* Format(xmlErrorPtr aErr); + static char* Format(const xmlError *aErr); }; // Logical errors