diff --git a/Weaver/Xtensive.Orm.Weaver/Tasks/ImplementFieldAccessorTask.cs b/Weaver/Xtensive.Orm.Weaver/Tasks/ImplementFieldAccessorTask.cs index 22b444a4ca..508d120a20 100644 --- a/Weaver/Xtensive.Orm.Weaver/Tasks/ImplementFieldAccessorTask.cs +++ b/Weaver/Xtensive.Orm.Weaver/Tasks/ImplementFieldAccessorTask.cs @@ -1,4 +1,4 @@ -// Copyright (C) 2013 Xtensive LLC. +// Copyright (C) 2013 Xtensive LLC. // All rights reserved. // For conditions of distribution and use, see license. // Created by: Denis Krjuchkov @@ -44,6 +44,7 @@ private void ImplementSetter(ProcessorContext context) il.Emit(OpCodes.Ldarg_0); il.Emit(OpCodes.Ldstr, persistentName); il.Emit(OpCodes.Ldarg_1); + il.Emit(OpCodes.Tail); il.Emit(OpCodes.Call, accessor); il.Emit(OpCodes.Ret); } @@ -57,6 +58,7 @@ private void ImplementGetter(ProcessorContext context) var il = body.GetILProcessor(); il.Emit(OpCodes.Ldarg_0); il.Emit(OpCodes.Ldstr, persistentName); + il.Emit(OpCodes.Tail); il.Emit(OpCodes.Call, accessor); il.Emit(OpCodes.Ret); }