https://bugzilla.gnome.org/show_bug.cgi?id=791283
public CCodeExpression? get_destroy0_func_expression (DataType type, bool is_chainup = false) {
var element_destroy_func_expression = get_destroy_func_expression (type, is_chainup);
- if (element_destroy_func_expression is CCodeIdentifier) {
+ if (!(type is GenericType) && element_destroy_func_expression is CCodeIdentifier) {
var freeid = (CCodeIdentifier) element_destroy_func_expression;
string free0_func = "_%s0_".printf (freeid.name);
methods/bug743877.vala \
methods/bug771964.vala \
methods/bug791215.vala \
+ methods/bug791283.vala \
methods/generics.vala \
control-flow/break.vala \
control-flow/expressions-conditional.vala \
--- /dev/null
+class Foo<T> {
+ GenericArray<T> bar;
+
+ public Foo () {
+ bar = new GenericArray<T> ();
+ }
+}
+
+GenericArray<G> create_bar<G> () {
+ return new GenericArray<G> ();
+}
+
+void main () {
+ var foo = new Foo<string> ();
+ var bar = create_bar<int?> ();
+}