{"action":"created","issue":{"url":"https://api.github.com/repos/rust-lang/rfcs/issues/2479","repository_url":"https://api.github.com/repos/rust-lang/rfcs","labels_url":"https://api.github.com/repos/rust-lang/rfcs/issues/2479/labels{/name}","comments_url":"https://api.github.com/repos/rust-lang/rfcs/issues/2479/comments","events_url":"https://api.github.com/repos/rust-lang/rfcs/issues/2479/events","html_url":"https://github.com/rust-lang/rfcs/pull/2479","id":333023038,"node_id":"MDExOlB1bGxSZXF1ZXN0MTk1MzU0MDQw","number":2479,"title":"RFC: Accept semicolons as items","user":{"login":"Centril","id":855702,"node_id":"MDQ6VXNlcjg1NTcwMg==","avatar_url":"https://avatars2.githubusercontent.com/u/855702?v=4","gravatar_id":"","url":"https://api.github.com/users/Centril","html_url":"https://github.com/Centril","followers_url":"https://api.github.com/users/Centril/followers","following_url":"https://api.github.com/users/Centril/following{/other_user}","gists_url":"https://api.github.com/users/Centril/gists{/gist_id}","starred_url":"https://api.github.com/users/Centril/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Centril/subscriptions","organizations_url":"https://api.github.com/users/Centril/orgs","repos_url":"https://api.github.com/users/Centril/repos","events_url":"https://api.github.com/users/Centril/events{/privacy}","received_events_url":"https://api.github.com/users/Centril/received_events","type":"User","site_admin":false},"labels":[{"id":211667886,"node_id":"MDU6TGFiZWwyMTE2Njc4ODY=","url":"https://api.github.com/repos/rust-lang/rfcs/labels/T-lang","name":"T-lang","color":"bfd4f2","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":50,"created_at":"2018-06-16T23:45:04Z","updated_at":"2018-06-21T08:07:38Z","closed_at":null,"author_association":"CONTRIBUTOR","pull_request":{"url":"https://api.github.com/repos/rust-lang/rfcs/pulls/2479","html_url":"https://github.com/rust-lang/rfcs/pull/2479","diff_url":"https://github.com/rust-lang/rfcs/pull/2479.diff","patch_url":"https://github.com/rust-lang/rfcs/pull/2479.patch"},"body":"### [🖼️ Rendered](https://github.com/Centril/rfcs/blob/rfc/semicolon-items/text/0000-semicolon-items.md)\r\n\r\n### 📝 Summary\r\n\r\n+ The semicolon (`;`) is now legal, but not recommended, where an item is expected, permitting a user to write `struct Foo {};`, among other things.\r\n+ The `item` fragment specifier in a `macro_rules` matcher will match `;`.\r\n+ To retain a recommended and uniform style, the tool `rustfmt` will remove any extraneous `;`.\r\n+ Furthermore, the compiler will fire a warn-by-default lint when extraneous `;` are encountered, whether they be inside or outside an `fn` body.\r\n\r\n### 💖 Thanks\r\n\r\nTo @ExpHP who co-authored this RFC with me."},"comment":{"url":"https://api.github.com/repos/rust-lang/rfcs/issues/comments/399013969","html_url":"https://github.com/rust-lang/rfcs/pull/2479#issuecomment-399013969","issue_url":"https://api.github.com/repos/rust-lang/rfcs/issues/2479","id":399013969,"node_id":"MDEyOklzc3VlQ29tbWVudDM5OTAxMzk2OQ==","user":{"login":"joshtriplett","id":162737,"node_id":"MDQ6VXNlcjE2MjczNw==","avatar_url":"https://avatars2.githubusercontent.com/u/162737?v=4","gravatar_id":"","url":"https://api.github.com/users/joshtriplett","html_url":"https://github.com/joshtriplett","followers_url":"https://api.github.com/users/joshtriplett/followers","following_url":"https://api.github.com/users/joshtriplett/following{/other_user}","gists_url":"https://api.github.com/users/joshtriplett/gists{/gist_id}","starred_url":"https://api.github.com/users/joshtriplett/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/joshtriplett/subscriptions","organizations_url":"https://api.github.com/users/joshtriplett/orgs","repos_url":"https://api.github.com/users/joshtriplett/repos","events_url":"https://api.github.com/users/joshtriplett/events{/privacy}","received_events_url":"https://api.github.com/users/joshtriplett/received_events","type":"User","site_admin":false},"created_at":"2018-06-21T08:07:38Z","updated_at":"2018-06-21T08:07:38Z","author_association":"MEMBER","body":"Much better, thank you!\r\n\r\n(Also, for future implementation, I'd like to second the comment that `return foo;` should never be treated as having an \"extraneous\" semicolon.)"}}
{"actor":{"display_login":"joshtriplett"}}