From 8c29b74b15d494fd963109bade5f31a0ada431d0 Mon Sep 17 00:00:00 2001 From: Mark Rousskov Date: Tue, 12 Nov 2019 11:20:01 -0500 Subject: [PATCH] Remove dead code for encoding/decoding lint IDs This helps decouple the lint system from needing the implicit TLS TyCtxt as well. --- src/librustc/lint/context.rs | 27 +-------------------------- 1 file changed, 1 insertion(+), 26 deletions(-) diff --git a/src/librustc/lint/context.rs b/src/librustc/lint/context.rs index 721baad25639f..dc3bc5fa0cebf 100644 --- a/src/librustc/lint/context.rs +++ b/src/librustc/lint/context.rs @@ -35,7 +35,6 @@ use crate::util::common::time; use errors::DiagnosticBuilder; use std::slice; use rustc_data_structures::sync::{self, ParallelIterator, join, par_iter}; -use rustc_serialize::{Decoder, Decodable, Encoder, Encodable}; use syntax::ast; use syntax::util::lev_distance::find_best_match_for_name; use syntax::visit as ast_visit; @@ -71,7 +70,7 @@ pub struct LintStore { /// Lints that are buffered up early on in the `Session` before the /// `LintLevels` is calculated -#[derive(PartialEq, RustcEncodable, RustcDecodable, Debug)] +#[derive(PartialEq, Debug)] pub struct BufferedEarlyLint { pub lint_id: LintId, pub ast_id: ast::NodeId, @@ -1574,27 +1573,3 @@ pub fn check_ast_crate( } } } - -impl Encodable for LintId { - fn encode(&self, s: &mut S) -> Result<(), S::Error> { - s.emit_str(&self.lint.name.to_lowercase()) - } -} - -impl Decodable for LintId { - #[inline] - fn decode(d: &mut D) -> Result { - let s = d.read_str()?; - ty::tls::with(|tcx| { - match tcx.lint_store.find_lints(&s) { - Ok(ids) => { - if ids.len() != 0 { - panic!("invalid lint-id `{}`", s); - } - Ok(ids[0]) - } - Err(_) => panic!("invalid lint-id `{}`", s), - } - }) - } -}