Some functions in the Qt API are variadic (i.e. accepting a variable number of arguments), e.g. void critical(const char *msg, ...) in QMessageLogger. The generated wrapper code for this function looks like this:
Compiling this with GCC fails, because the log functions of QMessageLogger expect a format and arguments, and giving them a char pointer yields an error [-Werror=format-security]. Since arguments of variadic functions aren't properly handled anyway, my suggestion is to skip those functions, see patch skip-variadic-functions.diff.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Some functions in the Qt API are variadic (i.e. accepting a variable number of arguments), e.g.
void critical(const char *msg, ...)
in QMessageLogger. The generated wrapper code for this function looks like this:Compiling this with GCC fails, because the log functions of QMessageLogger expect a format and arguments, and giving them a char pointer yields an error [-Werror=format-security]. Since arguments of variadic functions aren't properly handled anyway, my suggestion is to skip those functions, see patch
skip-variadic-functions.diff
.Here is the patch. The file with "unix" in the name has Unix file endings, the other has Windows line endings.
Thanks, I will add that. It might take a while because I am busy with other stuff.
I merged your patch.