{"action":"opened","issue":{"url":"https://api.github.com/repos/dadhi/FastExpressionCompiler/issues/91","repository_url":"https://api.github.com/repos/dadhi/FastExpressionCompiler","labels_url":"https://api.github.com/repos/dadhi/FastExpressionCompiler/issues/91/labels{/name}","comments_url":"https://api.github.com/repos/dadhi/FastExpressionCompiler/issues/91/comments","events_url":"https://api.github.com/repos/dadhi/FastExpressionCompiler/issues/91/events","html_url":"https://github.com/dadhi/FastExpressionCompiler/issues/91","id":352179843,"node_id":"MDU6SXNzdWUzNTIxNzk4NDM=","number":91,"title":"Support for MultiplyAssign, AddAsiggn, DivideAssign with ref","user":{"login":"dzmitry-lahoda","id":757125,"node_id":"MDQ6VXNlcjc1NzEyNQ==","avatar_url":"https://avatars3.githubusercontent.com/u/757125?v=4","gravatar_id":"","url":"https://api.github.com/users/dzmitry-lahoda","html_url":"https://github.com/dzmitry-lahoda","followers_url":"https://api.github.com/users/dzmitry-lahoda/followers","following_url":"https://api.github.com/users/dzmitry-lahoda/following{/other_user}","gists_url":"https://api.github.com/users/dzmitry-lahoda/gists{/gist_id}","starred_url":"https://api.github.com/users/dzmitry-lahoda/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dzmitry-lahoda/subscriptions","organizations_url":"https://api.github.com/users/dzmitry-lahoda/orgs","repos_url":"https://api.github.com/users/dzmitry-lahoda/repos","events_url":"https://api.github.com/users/dzmitry-lahoda/events{/privacy}","received_events_url":"https://api.github.com/users/dzmitry-lahoda/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2018-08-20T15:13:28Z","updated_at":"2018-08-20T15:13:28Z","closed_at":null,"author_association":"CONTRIBUTOR","body":"I do not see these in code of pattern matching, probably these are not only ref issues\r\n\r\nNext fails\r\n```\r\n            void SetSmallConstant(ref double localByRef)\r\n            {\r\n                localByRef += 3.0;\r\n            }\r\n            var objRef = Parameter(typeof(double).MakeByRefType());\r\n            var lambda = Lambda<ActionRef<double>>(AddAssign(objRef, Constant((double)3.0)), objRef);\r\n\r\n            var compiledA = lambda.Compile();\r\n            var exampleA = default(double);\r\n            compiledA(ref exampleA);\r\n            Assert.AreEqual(3.0, exampleA);\r\n\r\n            var compiledB = lambda.CompileFast<ActionRef<double>>(true);\r\n            var exampleB = default(double);\r\n            compiledB(ref exampleB);\r\n            Assert.AreEqual(3.0, exampleB);\r\n\r\n            ActionRef<double> direct = SetSmallConstant;\r\n            var exampleC = default(double);\r\n            direct(ref exampleC);\r\n            Assert.AreEqual(3.0, exampleC);\r\n```"}}
{"actor":{"display_login":"dzmitry-lahoda"}}