From: Luca Bruno Date: Wed, 16 Mar 2011 12:02:05 +0000 (+0100) Subject: codegen: Drop MemberAccess creation for disposing of 'this' in block data X-Git-Tag: 0.13.0~250 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=6fd839627240945fc949f7ce9fd58b644bcaed9f;p=thirdparty%2Fvala.git codegen: Drop MemberAccess creation for disposing of 'this' in block data --- diff --git a/codegen/valaccodebasemodule.vala b/codegen/valaccodebasemodule.vala index aab8d65b9..9d9c3f9e7 100644 --- a/codegen/valaccodebasemodule.vala +++ b/codegen/valaccodebasemodule.vala @@ -1854,9 +1854,8 @@ public abstract class Vala.CCodeBaseModule : CodeGenerator { } else { if (in_constructor || (current_method != null && current_method.binding == MemberBinding.INSTANCE) || (current_property_accessor != null && current_property_accessor.prop.binding == MemberBinding.INSTANCE)) { - var ma = new MemberAccess.simple ("this"); - ma.symbol_reference = current_class; - ccode.add_expression (get_unref_expression (new CCodeMemberAccess.pointer (new CCodeIdentifier ("_data%d_".printf (block_id)), "self"), new ObjectType (current_class), ma)); + var this_value = new GLibValue (new ObjectType (current_class), new CCodeMemberAccess.pointer (new CCodeIdentifier ("_data%d_".printf (block_id)), "self")); + ccode.add_expression (destroy_value (this_value)); } }