let intra_link_resolution_failure_name = lint::builtin::INTRA_DOC_LINK_RESOLUTION_FAILURE.name;
let warnings_lint_name = lint::builtin::WARNINGS.name;
+ let missing_docs = rustc_lint::builtin::MISSING_DOCS.name;
let lints = lint::builtin::HardwiredLints.get_lints()
.into_iter()
.chain(rustc_lint::SoftLints.get_lints().into_iter())
let mut sess = session::build_session_(
sessopts, cpath, diagnostic_handler, codemap,
);
+
+ lint::builtin::HardwiredLints.get_lints()
+ .into_iter()
+ .chain(rustc_lint::SoftLints.get_lints().into_iter())
+ .filter_map(|lint| {
+ // We don't want to whitelist *all* lints so let's
+ // ignore those ones.
+ if lint.name == warnings_lint_name ||
+ lint.name == intra_link_resolution_failure_name ||
+ lint.name == missing_docs {
+ None
+ } else {
+ Some(lint)
+ }
+ })
+ .for_each(|l| {
+ sess.driver_lint_caps.insert(lint::LintId::of(l),
+ lint::Allow);
+ });
+
let codegen_backend = rustc_driver::get_codegen_backend(&sess);
let cstore = Rc::new(CStore::new(codegen_backend.metadata_loader()));
rustc_lint::register_builtins(&mut sess.lint_store.borrow_mut(), Some(&sess));
&sess);
let resolver = RefCell::new(resolver);
-
abort_on_err(driver::phase_3_run_analysis_passes(&*codegen_backend,
control,
&sess,