{"action":"closed","issue":{"url":"https://api.github.com/repos/rust-lang/rust/issues/19538","labels_url":"https://api.github.com/repos/rust-lang/rust/issues/19538/labels{/name}","comments_url":"https://api.github.com/repos/rust-lang/rust/issues/19538/comments","events_url":"https://api.github.com/repos/rust-lang/rust/issues/19538/events","html_url":"https://github.com/rust-lang/rust/issues/19538","id":51034088,"number":19538,"title":"Be more informative with object-unsafe supertraits","user":{"login":"cmr","id":704250,"avatar_url":"https://avatars.githubusercontent.com/u/704250?v=3","gravatar_id":"","url":"https://api.github.com/users/cmr","html_url":"https://github.com/cmr","followers_url":"https://api.github.com/users/cmr/followers","following_url":"https://api.github.com/users/cmr/following{/other_user}","gists_url":"https://api.github.com/users/cmr/gists{/gist_id}","starred_url":"https://api.github.com/users/cmr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cmr/subscriptions","organizations_url":"https://api.github.com/users/cmr/orgs","repos_url":"https://api.github.com/users/cmr/repos","events_url":"https://api.github.com/users/cmr/events{/privacy}","received_events_url":"https://api.github.com/users/cmr/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/rust-lang/rust/labels/A-diagnostics","name":"A-diagnostics","color":"d7e102"},{"url":"https://api.github.com/repos/rust-lang/rust/labels/E-easy","name":"E-easy","color":"02e10c"},{"url":"https://api.github.com/repos/rust-lang/rust/labels/I-papercut","name":"I-papercut","color":"e10c02"}],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":4,"created_at":"2014-12-04T21:51:09Z","updated_at":"2015-06-25T01:54:15Z","closed_at":"2015-06-25T01:54:15Z","body":"Currently, we say:\r\n\r\n```\r\nfoo.rs:14:22: 14:32 error: cannot convert to a trait object because trait `Foo` is not object-safe [E0038]\r\nfoo.rs:14     let test: &Bar = &mut thing;\r\n                               ^~~~~~~~~~\r\nnote: cannot call a generic method (`foo`) through a trait object\r\n```\r\n\r\nBut we should include the information that it's *Bar* that is not object-safe, because `Foo` is not and it inherits from `Foo`."}}