]> git.ipfire.org Git - thirdparty/vala.git/commitdiff
codegen: Avoid use of temp-var to access in/ref parameters
authorRico Tzschichholz <ricotz@ubuntu.com>
Tue, 21 Nov 2017 20:21:48 +0000 (21:21 +0100)
committerRico Tzschichholz <ricotz@ubuntu.com>
Wed, 22 Nov 2017 20:50:42 +0000 (21:50 +0100)
https://bugzilla.gnome.org/show_bug.cgi?id=789071

codegen/valaccodememberaccessmodule.vala

index 6bb5cb22a6b205f3ddf33cc096d90b1f3ba2a65c..317a54589b454390cceca2773c0062854654e69c 100644 (file)
@@ -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 ()) {