This is an automated email from the ASF dual-hosted git repository.

swebb2066 pushed a commit to branch replace_virtual_inheritance
in repository https://gitbox.apache.org/repos/asf/logging-log4cxx.git

commit 9f4e02a3a85ce1beabfb61b3782de5ed43d9bfe4
Author: Stephen Webb <[email protected]>
AuthorDate: Thu May 14 14:50:28 2026 +1000

    Simplify Configurator inheritance in the next ABI version
---
 src/main/include/log4cxx/propertyconfigurator.h | 11 +++++++----
 src/main/include/log4cxx/xml/domconfigurator.h  |  8 ++++++--
 2 files changed, 13 insertions(+), 6 deletions(-)

diff --git a/src/main/include/log4cxx/propertyconfigurator.h 
b/src/main/include/log4cxx/propertyconfigurator.h
index eac2aba4..38705cdd 100644
--- a/src/main/include/log4cxx/propertyconfigurator.h
+++ b/src/main/include/log4cxx/propertyconfigurator.h
@@ -245,13 +245,16 @@ The usage of custom logger factories is discouraged and 
no longer
 documented.
 
 */
-class LOG4CXX_EXPORT PropertyConfigurator :
-       virtual public spi::Configurator,
-       virtual public helpers::Object
+class LOG4CXX_EXPORT PropertyConfigurator
+#if LOG4CXX_ABI_VERSION <= 15
+       : virtual public spi::Configurator
+       , virtual public helpers::Object
+#else
+       : public spi::Configurator
+#endif
 {
 #if 15 < LOG4CXX_ABI_VERSION
        private:
-               struct PrivateData;
                LOG4CXX_DECLARE_PRIVATE_MEMBER_PTR(PrivateData, m_priv)
 #else
        protected:
diff --git a/src/main/include/log4cxx/xml/domconfigurator.h 
b/src/main/include/log4cxx/xml/domconfigurator.h
index e28d9824..028aab40 100644
--- a/src/main/include/log4cxx/xml/domconfigurator.h
+++ b/src/main/include/log4cxx/xml/domconfigurator.h
@@ -63,8 +63,12 @@ files. You can enable log4cxx internal logging by setting the
 
 <p>There are sample XML files included in the package.
 */
-class LOG4CXX_EXPORT DOMConfigurator :
-       virtual public spi::Configurator
+class LOG4CXX_EXPORT DOMConfigurator
+#if LOG4CXX_ABI_VERSION <= 15
+       : virtual public spi::Configurator
+#else
+       : public spi::Configurator
+#endif
 {
        public:
                ~DOMConfigurator();

Reply via email to