diff --git a/src/corelib/io/qloggingcategory.h b/src/corelib/io/qloggingcategory.h index 13b6cc17b8d..6d2883ea8f5 100644 --- a/src/corelib/io/qloggingcategory.h +++ b/src/corelib/io/qloggingcategory.h @@ -104,20 +104,17 @@ template <> const bool QLoggingCategoryMacroHolder::IsOutputEnable } // unnamed namespace #define QT_DECLARE_EXPORTED_QT_LOGGING_CATEGORY(name, export_macro) \ - namespace QtPrivateLogging { export_macro const QLoggingCategory &name(); } \ - using QtPrivateLogging::name; + inline namespace QtPrivateLogging { export_macro const QLoggingCategory &name(); } #if QT_BUILDING_QT #define Q_DECLARE_LOGGING_CATEGORY(name) \ - namespace QtPrivateLogging { const QLoggingCategory &name(); } \ - using QtPrivateLogging::name; + inline namespace QtPrivateLogging { const QLoggingCategory &name(); } #define Q_DECLARE_EXPORTED_LOGGING_CATEGORY(name, export_macro) \ - namespace QtPrivateLogging { \ + inline namespace QtPrivateLogging { \ Q_DECL_DEPRECATED_X("Use QT_DECLARE_EXPORTED_QT_LOGGING_CATEGORY in Qt") \ export_macro const QLoggingCategory &name(); \ - } \ - using QtPrivateLogging::name; + } #define Q_LOGGING_CATEGORY_IMPL(name, ...) \ const QLoggingCategory &name() \ @@ -126,22 +123,13 @@ template <> const bool QLoggingCategoryMacroHolder::IsOutputEnable return category; \ } -#if defined(Q_CC_GNU_ONLY) && Q_CC_GNU < 1000 -// GCC <10 thinks the "using" declaration from QT_DECLARE_EXPORTED_QT_LOGGING_CATEGORY -// or Q_DECLARE_LOGGING_CATEGORY conflicts with any weak overload created as part of the definition. -// So let's make it happy and repeat the "using" instead. #define Q_LOGGING_CATEGORY(name, ...) \ - namespace QtPrivateLogging { Q_LOGGING_CATEGORY_IMPL(name, __VA_ARGS__) } \ - using QtPrivateLogging::name; -#else -#define Q_LOGGING_CATEGORY(name, ...) \ - namespace QtPrivateLogging { Q_LOGGING_CATEGORY_IMPL(name, __VA_ARGS__) } \ + inline namespace QtPrivateLogging { Q_LOGGING_CATEGORY_IMPL(name, __VA_ARGS__) } \ Q_WEAK_OVERLOAD \ Q_DECL_DEPRECATED_X("Use Q_STATIC_LOGGING_CATEGORY or add " \ "either Q_DECLARE_LOGGING_CATEGORY or " \ "QT_DECLARE_EXPORTED_QT_LOGGING_CATEGORY in a header") \ const QLoggingCategory &name() { return QtPrivateLogging::name(); } -#endif #define Q_STATIC_LOGGING_CATEGORY(name, ...) \ static Q_LOGGING_CATEGORY_IMPL(name, __VA_ARGS__) diff --git a/src/corelib/io/qloggingregistry_p.h b/src/corelib/io/qloggingregistry_p.h index 1102e533241..c298b79f0d3 100644 --- a/src/corelib/io/qloggingregistry_p.h +++ b/src/corelib/io/qloggingregistry_p.h @@ -39,24 +39,13 @@ QT_BEGIN_NAMESPACE return category; \ } -#if defined(Q_CC_GNU_ONLY) && Q_CC_GNU < 1000 -// GCC <10 thinks the "using" declaration from QT_DECLARE_EXPORTED_QT_LOGGING_CATEGORY -// or Q_DECLARE_LOGGING_CATEGORY conflicts with any weak overload created as part of the definition. -// So let's make it happy and repeat the "using" instead. #define Q_LOGGING_CATEGORY_WITH_ENV_OVERRIDE(name, env, categoryName) \ - namespace QtPrivateLogging { \ - Q_LOGGING_CATEGORY_WITH_ENV_OVERRIDE_IMPL(name, env, categoryName) \ - } \ - using QtPrivateLogging::name; -#else -#define Q_LOGGING_CATEGORY_WITH_ENV_OVERRIDE(name, env, categoryName) \ - namespace QtPrivateLogging { \ + inline namespace QtPrivateLogging { \ Q_LOGGING_CATEGORY_WITH_ENV_OVERRIDE_IMPL(name, env, categoryName) \ } \ Q_WEAK_OVERLOAD \ Q_DECL_DEPRECATED_X("Logging categories should either be static or declared in a header") \ const QLoggingCategory &name() { return QtPrivateLogging::name(); } -#endif #define Q_STATIC_LOGGING_CATEGORY_WITH_ENV_OVERRIDE(name, env, categoryName) \ static Q_LOGGING_CATEGORY_WITH_ENV_OVERRIDE_IMPL(name, env, categoryName)