var fun_name = "%s_get_type".printf (en.get_lower_case_cname (null));
var regfun = new CCodeFunction (fun_name, "GType");
+ regfun.attributes = "G_GNUC_CONST";
if (en.access == SymbolAccessibility.PRIVATE) {
regfun.modifiers = CCodeModifiers.STATIC;
source_declarations.add_type_definition (instance_struct);
- source_declarations.add_type_member_declaration (new CCodeFunction(lower_cname + "_get_type", "GType"));
+ var type_fun = new CCodeFunction(lower_cname + "_get_type", "GType");
+ type_fun.attributes = "G_GNUC_CONST";
+ source_declarations.add_type_member_declaration (type_fun);
var define_type = new CCodeFunctionCall (new CCodeIdentifier ("G_DEFINE_TYPE_EXTENDED"));
define_type.add_argument (new CCodeIdentifier (cname));
// declare proxy_get_type function
var proxy_get_type = new CCodeFunction (get_type_name, "GType");
+ proxy_get_type.attributes = "G_GNUC_CONST";
decl_space.add_type_member_declaration (proxy_get_type);
}
CCodeFunction fun;
if (!plugin) {
fun = new CCodeFunction ("%s_get_type".printf (get_type_declaration ().get_lower_case_cname (null)), "GType");
+ fun.attributes = "G_GNUC_CONST";
+
/* Function will not be prototyped anyway */
if (get_accessibility () == SymbolAccessibility.PRIVATE) {
fun.modifiers = CCodeModifiers.STATIC;
// avoid C warning as this function is not always used
- fun.attributes = "G_GNUC_UNUSED";
+ fun.attributes += " G_GNUC_UNUSED";
}
} else {
fun = new CCodeFunction ("%s_register_type".printf (get_type_declaration ().get_lower_case_cname (null)), "GType");
fun.add_parameter (new CCodeFormalParameter ("module", "GTypeModule *"));
var get_fun = new CCodeFunction ("%s_get_type".printf (get_type_declaration ().get_lower_case_cname (null)), "GType");
+ get_fun.attributes = "G_GNUC_CONST";
declaration_fragment.append (get_fun.copy ());