{"action":"created","issue":{"url":"https://api.github.com/repos/rust-lang/rfcs/issues/1474","labels_url":"https://api.github.com/repos/rust-lang/rfcs/issues/1474/labels{/name}","comments_url":"https://api.github.com/repos/rust-lang/rfcs/issues/1474/comments","events_url":"https://api.github.com/repos/rust-lang/rfcs/issues/1474/events","html_url":"https://github.com/rust-lang/rfcs/pull/1474","id":128242580,"number":1474,"title":"Generic atomic","user":{"login":"mahkoh","id":1882250,"avatar_url":"https://avatars.githubusercontent.com/u/1882250?v=3","gravatar_id":"","url":"https://api.github.com/users/mahkoh","html_url":"https://github.com/mahkoh","followers_url":"https://api.github.com/users/mahkoh/followers","following_url":"https://api.github.com/users/mahkoh/following{/other_user}","gists_url":"https://api.github.com/users/mahkoh/gists{/gist_id}","starred_url":"https://api.github.com/users/mahkoh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mahkoh/subscriptions","organizations_url":"https://api.github.com/users/mahkoh/orgs","repos_url":"https://api.github.com/users/mahkoh/repos","events_url":"https://api.github.com/users/mahkoh/events{/privacy}","received_events_url":"https://api.github.com/users/mahkoh/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/rust-lang/rfcs/labels/T-compiler","name":"T-compiler","color":"bfd4f2"},{"url":"https://api.github.com/repos/rust-lang/rfcs/labels/T-lang","name":"T-lang","color":"bfd4f2"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":23,"created_at":"2016-01-22T20:51:48Z","updated_at":"2016-01-25T13:03:18Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/rust-lang/rfcs/pulls/1474","html_url":"https://github.com/rust-lang/rfcs/pull/1474","diff_url":"https://github.com/rust-lang/rfcs/pull/1474.diff","patch_url":"https://github.com/rust-lang/rfcs/pull/1474.patch"},"body":"Add compiler support for generic atomic operations."},"comment":{"url":"https://api.github.com/repos/rust-lang/rfcs/issues/comments/174503105","html_url":"https://github.com/rust-lang/rfcs/pull/1474#issuecomment-174503105","issue_url":"https://api.github.com/repos/rust-lang/rfcs/issues/1474","id":174503105,"user":{"login":"arielb1","id":1830974,"avatar_url":"https://avatars.githubusercontent.com/u/1830974?v=3","gravatar_id":"","url":"https://api.github.com/users/arielb1","html_url":"https://github.com/arielb1","followers_url":"https://api.github.com/users/arielb1/followers","following_url":"https://api.github.com/users/arielb1/following{/other_user}","gists_url":"https://api.github.com/users/arielb1/gists{/gist_id}","starred_url":"https://api.github.com/users/arielb1/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arielb1/subscriptions","organizations_url":"https://api.github.com/users/arielb1/orgs","repos_url":"https://api.github.com/users/arielb1/repos","events_url":"https://api.github.com/users/arielb1/events{/privacy}","received_events_url":"https://api.github.com/users/arielb1/received_events","type":"User","site_admin":false},"created_at":"2016-01-25T13:03:18Z","updated_at":"2016-01-25T13:03:18Z","body":"> That's just undefined behavior. \r\n\r\nThat was just me being lazy to illustrate the point. Fixed to use `atomic_load`. Actually trying it, I see that rustc happily to emit bad LLVM. I consider that a bug - we should rather emit an `unreachable`.\r\n\r\n> Another case where rustc is worse than gcc/clang.\r\n\r\nI agree that fully general untyped templates give C++ a big advantage in some places. We think the disadvantages of it are greater."}}