{"action":"created","issue":{"url":"https://api.github.com/repos/rust-lang/rust/issues/28235","repository_url":"https://api.github.com/repos/rust-lang/rust","labels_url":"https://api.github.com/repos/rust-lang/rust/issues/28235/labels{/name}","comments_url":"https://api.github.com/repos/rust-lang/rust/issues/28235/comments","events_url":"https://api.github.com/repos/rust-lang/rust/issues/28235/events","html_url":"https://github.com/rust-lang/rust/issues/28235","id":104944538,"number":28235,"title":"Tracking issue for overloaded `+=` operators (RFC 953) (feature augmented_assignments)","user":{"login":"nikomatsakis","id":155238,"avatar_url":"https://avatars.githubusercontent.com/u/155238?v=3","gravatar_id":"","url":"https://api.github.com/users/nikomatsakis","html_url":"https://github.com/nikomatsakis","followers_url":"https://api.github.com/users/nikomatsakis/followers","following_url":"https://api.github.com/users/nikomatsakis/following{/other_user}","gists_url":"https://api.github.com/users/nikomatsakis/gists{/gist_id}","starred_url":"https://api.github.com/users/nikomatsakis/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nikomatsakis/subscriptions","organizations_url":"https://api.github.com/users/nikomatsakis/orgs","repos_url":"https://api.github.com/users/nikomatsakis/repos","events_url":"https://api.github.com/users/nikomatsakis/events{/privacy}","received_events_url":"https://api.github.com/users/nikomatsakis/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/rust-lang/rust/labels/B-unstable","name":"B-unstable","color":"e102d8"},{"url":"https://api.github.com/repos/rust-lang/rust/labels/final-comment-period","name":"final-comment-period","color":"207de5"},{"url":"https://api.github.com/repos/rust-lang/rust/labels/T-lang","name":"T-lang","color":"bfd4f2"},{"url":"https://api.github.com/repos/rust-lang/rust/labels/T-libs","name":"T-libs","color":"bfd4f2"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":8,"created_at":"2015-09-04T18:35:51Z","updated_at":"2016-02-18T01:06:43Z","closed_at":null,"body":"Tracking issue for RFC rust-lang/rfcs#953, which implements support for `+=` operators.\r\n\r\ncc @japaric"},"comment":{"url":"https://api.github.com/repos/rust-lang/rust/issues/comments/185489009","html_url":"https://github.com/rust-lang/rust/issues/28235#issuecomment-185489009","issue_url":"https://api.github.com/repos/rust-lang/rust/issues/28235","id":185489009,"user":{"login":"nikomatsakis","id":155238,"avatar_url":"https://avatars.githubusercontent.com/u/155238?v=3","gravatar_id":"","url":"https://api.github.com/users/nikomatsakis","html_url":"https://github.com/nikomatsakis","followers_url":"https://api.github.com/users/nikomatsakis/followers","following_url":"https://api.github.com/users/nikomatsakis/following{/other_user}","gists_url":"https://api.github.com/users/nikomatsakis/gists{/gist_id}","starred_url":"https://api.github.com/users/nikomatsakis/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nikomatsakis/subscriptions","organizations_url":"https://api.github.com/users/nikomatsakis/orgs","repos_url":"https://api.github.com/users/nikomatsakis/repos","events_url":"https://api.github.com/users/nikomatsakis/events{/privacy}","received_events_url":"https://api.github.com/users/nikomatsakis/received_events","type":"User","site_admin":false},"created_at":"2016-02-18T01:06:43Z","updated_at":"2016-02-18T01:06:43Z","body":"On Sun, Feb 14, 2016 at 01:19:19AM -0800, bluss wrote:\n> The `+=` limitation is that it does not apply on rvalues, so the following does not compile:\n> \n> ```rust\n> //  Increment elements in row `i` by 1.0\n> array.row_mut(i) += 1.0;\n> // scale the 4 x 4 top left quadrant by alpha\n> array.slice_mut(s![..4, ..4]) *= alpha; \n> ```\n> \n> Lifting this restriction doesn't need changing the method signatures.\n\nInteresting. I'm happy to see you overloading call notation to get\nrvalues like that -- I've been thinking of this as an appealing\nalternative to `IndexMove` (since it preserves the \"`[]` is an lvalue\"\nconcept).\n"}}