]> git.ipfire.org Git - thirdparty/vala.git/commitdiff
Set lvalue to inner expression when accessing array length field
authorLuca Bruno <lucabru@src.gnome.org>
Fri, 1 Jul 2011 11:13:56 +0000 (13:13 +0200)
committerLuca Bruno <lucabru@src.gnome.org>
Wed, 6 Jul 2011 20:32:28 +0000 (22:32 +0200)
vala/valamemberaccess.vala

index 51978edb4ed75fa6daad02ef29bab91fdcf92fdd..aaa5a174837348f64d1893f6f239eab257b53d8a 100644 (file)
@@ -752,6 +752,9 @@ public class Vala.MemberAccess : Expression {
                                inner.value_type = this_parameter.variable_type.copy ();
                                inner.value_type.value_owned = false;
                                inner.symbol_reference = this_parameter;
+                       } else if (context.profile == Profile.GOBJECT && lvalue && member is ArrayLengthField) {
+                               inner.lvalue = true;
+                               ((MemberAccess) inner).check_lvalue_struct_access ();
                        } else {
                                check_lvalue_struct_access ();
                        }