From: Rico Tzschichholz Date: Mon, 7 Nov 2016 20:03:56 +0000 (+0100) Subject: codegen: Add G_GNUC_FORMAT attribute for FormatArg function-pointers X-Git-Tag: 0.35.1~27 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d2175507afe8ec774676a90eb652612816c6d694;p=thirdparty%2Fvala.git codegen: Add G_GNUC_FORMAT attribute for FormatArg function-pointers --- diff --git a/ccode/valaccodefunctiondeclarator.vala b/ccode/valaccodefunctiondeclarator.vala index fc59aa830..08aea1dbc 100644 --- a/ccode/valaccodefunctiondeclarator.vala +++ b/ccode/valaccodefunctiondeclarator.vala @@ -55,16 +55,23 @@ public class Vala.CCodeFunctionDeclarator : CCodeDeclarator { writer.write_string (name); writer.write_string (") ("); - bool first = true; + int i = 0; + int format_arg_index = -1; foreach (CCodeParameter param in parameters) { - if (!first) { + if (i > 0) { writer.write_string (", "); - } else { - first = false; } param.write (writer); + if (param.format_arg) { + format_arg_index = i; + } + i++; } writer.write_string (")"); + + if (format_arg_index >= 0) { + writer.write_string (" G_GNUC_FORMAT(%d)".printf (format_arg_index + 1)); + } } }