{"action":"created","issue":{"url":"https://api.github.com/repos/Manishearth/rust-clippy/issues/831","repository_url":"https://api.github.com/repos/Manishearth/rust-clippy","labels_url":"https://api.github.com/repos/Manishearth/rust-clippy/issues/831/labels{/name}","comments_url":"https://api.github.com/repos/Manishearth/rust-clippy/issues/831/comments","events_url":"https://api.github.com/repos/Manishearth/rust-clippy/issues/831/events","html_url":"https://github.com/Manishearth/rust-clippy/issues/831","id":145459615,"number":831,"title":"Lint missing lints in LintPasses","user":{"login":"llogiq","id":4200835,"avatar_url":"https://avatars.githubusercontent.com/u/4200835?v=3","gravatar_id":"","url":"https://api.github.com/users/llogiq","html_url":"https://github.com/llogiq","followers_url":"https://api.github.com/users/llogiq/followers","following_url":"https://api.github.com/users/llogiq/following{/other_user}","gists_url":"https://api.github.com/users/llogiq/gists{/gist_id}","starred_url":"https://api.github.com/users/llogiq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/llogiq/subscriptions","organizations_url":"https://api.github.com/users/llogiq/orgs","repos_url":"https://api.github.com/users/llogiq/repos","events_url":"https://api.github.com/users/llogiq/events{/privacy}","received_events_url":"https://api.github.com/users/llogiq/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/Manishearth/rust-clippy/labels/E-medium","name":"E-medium","color":"fbca04"},{"url":"https://api.github.com/repos/Manishearth/rust-clippy/labels/L-bug","name":"L-bug","color":"fef2c0"},{"url":"https://api.github.com/repos/Manishearth/rust-clippy/labels/T-middle","name":"T-middle","color":"006b75"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":2,"created_at":"2016-04-03T06:20:33Z","updated_at":"2016-04-03T10:46:54Z","closed_at":null,"body":"If we miss a Lint in the `lint_array!` of the `*LintPass`, we will get strange and confusing behavior (like lint warnings + `unknown_lint`).\r\n\r\nThis requires walking the call graph and recording any lint symbol on the way. Then checking the `get_lints` method if all recorded lints are present.\r\n\r\nNote that this would be the first lint that is specifically aimed at helping write lints."},"comment":{"url":"https://api.github.com/repos/Manishearth/rust-clippy/issues/comments/204940657","html_url":"https://github.com/Manishearth/rust-clippy/issues/831#issuecomment-204940657","issue_url":"https://api.github.com/repos/Manishearth/rust-clippy/issues/831","id":204940657,"user":{"login":"llogiq","id":4200835,"avatar_url":"https://avatars.githubusercontent.com/u/4200835?v=3","gravatar_id":"","url":"https://api.github.com/users/llogiq","html_url":"https://github.com/llogiq","followers_url":"https://api.github.com/users/llogiq/followers","following_url":"https://api.github.com/users/llogiq/following{/other_user}","gists_url":"https://api.github.com/users/llogiq/gists{/gist_id}","starred_url":"https://api.github.com/users/llogiq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/llogiq/subscriptions","organizations_url":"https://api.github.com/users/llogiq/orgs","repos_url":"https://api.github.com/users/llogiq/repos","events_url":"https://api.github.com/users/llogiq/events{/privacy}","received_events_url":"https://api.github.com/users/llogiq/received_events","type":"User","site_admin":false},"created_at":"2016-04-03T10:46:54Z","updated_at":"2016-04-03T10:46:54Z","body":"We don't need to follow the call graph, just identify the reachable functions for any LintPass implementation. The naive set-based algorithm should work nicely."}}