From: Rico Tzschichholz Date: Tue, 21 Nov 2017 20:21:48 +0000 (+0100) Subject: codegen: Avoid use of temp-var to access in/ref parameters X-Git-Tag: 0.39.1~16 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b9035aaf17a9a97a070812a8ee83251fd3893b1e;p=thirdparty%2Fvala.git codegen: Avoid use of temp-var to access in/ref parameters https://bugzilla.gnome.org/show_bug.cgi?id=789071 --- diff --git a/codegen/valaccodememberaccessmodule.vala b/codegen/valaccodememberaccessmodule.vala index 6bb5cb22a..317a54589 100644 --- a/codegen/valaccodememberaccessmodule.vala +++ b/codegen/valaccodememberaccessmodule.vala @@ -734,7 +734,7 @@ public abstract class Vala.CCodeMemberAccessModule : CCodeControlFlowModule { // special handling for types such as va_list use_temp = false; } - if (variable is Parameter && variable.name == "this") { + if (variable is Parameter && (variable.name == "this" || ((Parameter) variable).direction != ParameterDirection.OUT)) { use_temp = false; } if (variable.single_assignment && !result.value_type.is_real_non_null_struct_type ()) {