let mut lint_context = None;
let mut iter = rustc_lexer::tokenize(&file_contents).map(|t| {
-- let range = offset..offset + t.len;
++ let range = offset..offset + t.len as usize;
offset = range.end;
LintDeclSearchResult {
fn parse_contents(contents: &str, module: &str, lints: &mut Vec<Lint>) {
let mut offset = 0usize;
let mut iter = tokenize(contents).map(|t| {
-- let range = offset..offset + t.len;
++ let range = offset..offset + t.len as usize;
offset = range.end;
LintDeclSearchResult {
fn parse_deprecated_contents(contents: &str, lints: &mut Vec<DeprecatedLint>) {
let mut offset = 0usize;
let mut iter = tokenize(contents).map(|t| {
-- let range = offset..offset + t.len;
++ let range = offset..offset + t.len as usize;
offset = range.end;
LintDeclSearchResult {
for line in contents.lines() {
let mut offset = 0usize;
let mut iter = tokenize(line).map(|t| {
-- let range = offset..offset + t.len;
++ let range = offset..offset + t.len as usize;
offset = range.end;
LintDeclSearchResult {
use clippy_utils::attrs::is_doc_hidden;
use clippy_utils::diagnostics::span_lint;
- use rustc_ast::ast;
+ use clippy_utils::is_from_proc_macro;
+ use if_chain::if_chain;
+ use rustc_ast::ast::{self, MetaItem, MetaItemKind};
use rustc_hir as hir;
use rustc_lint::{LateContext, LateLintPass, LintContext};
-use rustc_middle::ty::{self, DefIdTree};
+use rustc_middle::ty::DefIdTree;
use rustc_session::{declare_tool_lint, impl_lint_pass};
use rustc_span::def_id::CRATE_DEF_ID;
use rustc_span::source_map::Span;
cx,
};
let body_id = cx.tcx.hir().body_owned_by(
-- impl_item_refs
-- .iter()
-- .find(|iiref| iiref.ident.as_str() == "get_lints")
-- .expect("LintPass needs to implement get_lints")
-- .id
-- .hir_id(),
++ cx.tcx.hir().local_def_id(
++ impl_item_refs
++ .iter()
++ .find(|iiref| iiref.ident.as_str() == "get_lints")
++ .expect("LintPass needs to implement get_lints")
++ .id
++ .hir_id(),
++ ),
);
collector.visit_expr(&cx.tcx.hir().body(body_id).value);
}