{"action":"created","issue":{"url":"https://api.github.com/repos/servo/servo/issues/8067","repository_url":"https://api.github.com/repos/servo/servo","labels_url":"https://api.github.com/repos/servo/servo/issues/8067/labels{/name}","comments_url":"https://api.github.com/repos/servo/servo/issues/8067/comments","events_url":"https://api.github.com/repos/servo/servo/issues/8067/events","html_url":"https://github.com/servo/servo/issues/8067","id":112034906,"number":8067,"title":"Inconsistencies with 'must_root' lint when using named enums","user":{"login":"frewsxcv","id":416575,"avatar_url":"https://avatars.githubusercontent.com/u/416575?v=3","gravatar_id":"","url":"https://api.github.com/users/frewsxcv","html_url":"https://github.com/frewsxcv","followers_url":"https://api.github.com/users/frewsxcv/followers","following_url":"https://api.github.com/users/frewsxcv/following{/other_user}","gists_url":"https://api.github.com/users/frewsxcv/gists{/gist_id}","starred_url":"https://api.github.com/users/frewsxcv/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/frewsxcv/subscriptions","organizations_url":"https://api.github.com/users/frewsxcv/orgs","repos_url":"https://api.github.com/users/frewsxcv/repos","events_url":"https://api.github.com/users/frewsxcv/events{/privacy}","received_events_url":"https://api.github.com/users/frewsxcv/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/servo/servo/labels/A-plugins","name":"A-plugins","color":"d7e102"},{"url":"https://api.github.com/repos/servo/servo/labels/I-safety","name":"I-safety","color":"e10c02"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":6,"created_at":"2015-10-18T18:57:02Z","updated_at":"2016-04-06T19:55:20Z","closed_at":null,"body":"This compiles fine:\r\n\r\n```rust\r\n#[derive(JSTraceable)]\r\nenum AnEnum {\r\n    SomeVariant(JS<Node>)\r\n}\r\n\r\n#[dom_struct]\r\npub struct Test {\r\n    reflector_: Reflector,\r\n    #[ignore_heap_size_of = \"\"]\r\n    an_enum: AnEnum,\r\n}\r\n```\r\n\r\n------------\r\n\r\nThis has compile errors:\r\n\r\n```rust\r\n#[derive(JSTraceable)]\r\nenum AnEnum {\r\n    SomeVariant {node: JS<Node>}\r\n}\r\n\r\n#[dom_struct]\r\npub struct Test {\r\n    reflector_: Reflector,\r\n    #[ignore_heap_size_of = \"\"]\r\n    an_enum: AnEnum,\r\n}\r\n```\r\n\r\n```\r\n   Compiling script v0.0.1 (file:///Users/coreyf/Development/rust/servo/components/servo)\r\n/Users/coreyf/Development/rust/servo/components/script/dom/htmlcollection.rs:34:18: 34:32 error: Type must be rooted, use #[must_root] on the struct definition to propagate, #[deny(unrooted_must_root)] on by default\r\n/Users/coreyf/Development/rust/servo/components/script/dom/htmlcollection.rs:34     SomeVariant {node: JS<Node>}\r\n                                                                                                 ^~~~~~~~~~~~~~\r\nerror: aborting due to previous error\r\nCould not compile `script`.\r\n\r\nTo learn more, run the command again with --verbose.\r\nBuild completed in 20.17s\r\n```"},"comment":{"url":"https://api.github.com/repos/servo/servo/issues/comments/206532310","html_url":"https://github.com/servo/servo/issues/8067#issuecomment-206532310","issue_url":"https://api.github.com/repos/servo/servo/issues/8067","id":206532310,"user":{"login":"frewsxcv","id":416575,"avatar_url":"https://avatars.githubusercontent.com/u/416575?v=3","gravatar_id":"","url":"https://api.github.com/users/frewsxcv","html_url":"https://github.com/frewsxcv","followers_url":"https://api.github.com/users/frewsxcv/followers","following_url":"https://api.github.com/users/frewsxcv/following{/other_user}","gists_url":"https://api.github.com/users/frewsxcv/gists{/gist_id}","starred_url":"https://api.github.com/users/frewsxcv/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/frewsxcv/subscriptions","organizations_url":"https://api.github.com/users/frewsxcv/orgs","repos_url":"https://api.github.com/users/frewsxcv/repos","events_url":"https://api.github.com/users/frewsxcv/events{/privacy}","received_events_url":"https://api.github.com/users/frewsxcv/received_events","type":"User","site_admin":false},"created_at":"2016-04-06T19:55:20Z","updated_at":"2016-04-06T19:55:20Z","body":"Apply whatever license you want to my example."}}