csizeof.add_argument (new CCodeIdentifier (get_ccode_name (value_type.type_symbol)));
creation_call.add_argument (csizeof);
} else {
+ cfile.add_include ("glib.h");
creation_call = new CCodeFunctionCall (new CCodeIdentifier ("g_new0"));
creation_call.add_argument (new CCodeIdentifier (get_ccode_name (value_type.type_symbol)));
creation_call.add_argument (new CCodeConstant ("1"));
cfile.add_include ("stdlib.h");
free_call = new CCodeFunctionCall (new CCodeIdentifier ("free"));
} else {
+ cfile.add_include ("glib.h");
free_call = new CCodeFunctionCall (new CCodeIdentifier ("g_free"));
}
free_call.add_argument (new CCodeIdentifier ("self"));
return new CCodeIdentifier (get_ccode_free_function (type.type_symbol));
}
} else if (type is ErrorType) {
+ cfile.add_include ("glib.h");
return new CCodeIdentifier ("g_error_free");
} else if (type.type_symbol != null) {
string unref_function;
cfile.add_include ("stdlib.h");
unref_function = "free";
} else {
+ cfile.add_include ("glib.h");
unref_function = "g_free";
}
}
cfile.add_include ("stdlib.h");
return new CCodeIdentifier ("free");
} else {
+ cfile.add_include ("glib.h");
return new CCodeIdentifier ("g_free");
}
} else if (type is PointerType) {
cfile.add_include ("stdlib.h");
return new CCodeIdentifier ("free");
} else {
+ cfile.add_include ("glib.h");
return new CCodeIdentifier ("g_free");
}
} else {
* have a body, e.g. Vala.Parser.parse_file () */
if (m.body != null) {
if (current_method_inner_error) {
+ cfile.add_include ("glib.h");
/* always separate error parameter and inner_error local variable
* as error may be set to NULL but we're always interested in inner errors
*/
append_local_free (current_symbol);
}
+ cfile.add_include ("glib.h");
+
var ccritical = new CCodeFunctionCall (new CCodeIdentifier ("g_critical"));
ccritical.add_argument (new CCodeConstant (unexpected ? "\"file %s: line %d: unexpected error: %s (%s, %d)\"" : "\"file %s: line %d: uncaught error: %s (%s, %d)\""));
ccritical.add_argument (new CCodeConstant ("__FILE__"));
ccode.add_assignment (get_variable_cexpression (get_local_cname (clause.error_variable)), get_inner_error_cexpression ());
} else {
// error object is not used within catch statement, clear it
+ cfile.add_include ("glib.h");
var cclear = new CCodeFunctionCall (new CCodeIdentifier ("g_clear_error"));
cclear.add_argument (new CCodeUnaryExpression (CCodeUnaryOperator.ADDRESS_OF, get_inner_error_cexpression ()));
ccode.add_expression (cclear);