It caused an invalid usage of G_TYPE_POINTER with g_param_spec_boxed().
Fixes https://gitlab.gnome.org/GNOME/vala/issues/921
objects/property-real-struct-no-accessor.test \
objects/property-simple-type-struct-nullable.vala \
objects/property-static.vala \
+ objects/property-struct-no-gtype.vala \
objects/regex.vala \
objects/sealed-abstract-class.test \
objects/sealed-class.test \
--- /dev/null
+[CCode (has_type_id = false)]
+struct Bar {
+ public int i;
+}
+
+class Foo : Object {
+ public Bar bar { get; set; }
+}
+
+void main () {
+ var foo = new Foo ();
+ foo.bar = { 23 };
+ assert (foo.bar.i == 23);
+}
// Allow GType-based struct types
} else if (property_type.nullable) {
return false;
+ } else if (!st.get_attribute_bool ("CCode", "has_type_id", true)) {
+ return false;
}
}