The variadic macros we use in qCDebug, qCWarning, etc. (added in b8a38a6737acd670d92197ca5b009590d9fd8a9c) use a GNU extension not supported in ISO C++ and the C99 preprocessor: passing zero arguments to the ...
It appears that Clang, GCC, ICC and MSVC accept them unless we tell them to be pedantic. So the use of the categorised logging is not broken and we can continue to use it in Qt code. We just must ensure that in public headers, we use only the printf-style form. Or, better yet: DON'T use logging from public header. Move the logging to the .cpp and avoid bloating the user's applications with the logging strings. This was found when running headerscheck: GCC: error: ISO C99 requires rest arguments to be used Clang: error: must specify at least one argument for '...' parameter of variadic macro [-Werror,-Wgnu-zero-variadic-macro-arguments] -- Thiago Macieira - thiago.macieira (AT) intel.com Software Architect - Intel Open Source Technology Center _______________________________________________ Development mailing list [email protected] http://lists.qt-project.org/mailman/listinfo/development
