anchor.diff:          var lParamType: CGTypeReference;
           var lParamModifier : CGParameterModifierKind;
           var lPTar: TypeReference := meth.Parameters[i].ParameterType;
  -        if lPTar.IsByReference then begin
  +        var lIsByReference := lPTar.IsByReference;
  +        if lIsByReference then begin
             lPTar:= lPTar.GetElementType;
             lParamType := GetMarzipanType(lPTar);
             lParamModifier := CGParameterModifierKind.Var;
  
positive.code:           if lPar.Modifier = CGParameterModifierKind.Var then begin
              var lTempExpr := new CGIfThenElseExpression(new CGUnaryOperatorExpression(new CGAssignedExpression(new CGNamedIdentifierExpression(lPar.Name)), CGUnaryOperatorKind.Not), new CGNilExpression(), new CGMethodCallExpression(new CGNamedIdentifierExpression(lPar.Name), '__instance'));
  
              lMeth.Statements.Add(new CGVariableDeclarationStatement('par'+i, GetMonoType(lPTar), new CGTypeCastExpression(lTempExpr, GetMonoType(lPTar)) ));
  
              lCall.Parameters.Add(new CGCallParameter(new CGUnaryOperatorExpression(new CGNamedIdentifierExpression('par'+i), CGUnaryOperatorKind.AddressOf)));
              if lAfterCall = nil then begin
  
negative.code:           lParamType := GetMarzipanType(lPTar);
  
          var lPar := new CGParameterDefinition(lParamName, lParamType);
          if lIsByReference then lPar.Modifier := lParamModifier;
  
          lMeth.Parameters.Add(lPar);
  
          if lPTar.FullName = 'System.String' then begin
            if lPar.Modifier = CGParameterModifierKind.Var then begin
              lCGBeginEndBlockStatement.Statements.Add(new CGVariableDeclarationStatement('par'+i, GetMonoType(lPTar),
                                                                                    new CGMethodCallExpression(new CGNamedIdentifierExpression('MZString'), 'MonoStringWithNSString', [new CGCallParameter(new CGNamedIdentifierExpression(lPar.Name))]) ));
              lCall.Parameters.Add(new CGCallParameter(new CGUnaryOperatorExpression(new CGNamedIdentifierExpression('par'+i), CGUnaryOperatorKind.AddressOf)));
              if lAfterCall = nil then begin
  