From: Rico Tzschichholz Date: Thu, 13 Jun 2019 13:58:58 +0000 (+0200) Subject: codegen: Use array_length of collection variable instead of expression X-Git-Tag: 0.36.20~13 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=2c75d058fb3142f151a8e66cd7b0b9b93727d689;p=thirdparty%2Fvala.git codegen: Use array_length of collection variable instead of expression --- diff --git a/codegen/valaccodecontrolflowmodule.vala b/codegen/valaccodecontrolflowmodule.vala index a549f0621..b85aca900 100644 --- a/codegen/valaccodecontrolflowmodule.vala +++ b/codegen/valaccodecontrolflowmodule.vala @@ -237,10 +237,10 @@ public abstract class Vala.CCodeControlFlowModule : CCodeMethodModule { if (stmt.collection.value_type is ArrayType) { array_type = (ArrayType) stmt.collection.value_type; - var array_len = get_array_length_cexpression (stmt.collection); + var array_len = get_variable_cexpression (get_array_length_cname (get_local_cname (collection_backup), 1)); // store array length for use by _vala_array_free - ccode.add_assignment (get_variable_cexpression (get_array_length_cname (get_local_cname (collection_backup), 1)), array_len); + ccode.add_assignment (array_len, get_array_length_cexpression (stmt.collection)); var iterator_variable = new LocalVariable (int_type.copy (), stmt.variable_name + "_it"); visit_local_variable (iterator_variable);