@@ -8,7 +8,7 @@ use rustc_lint::{EarlyContext, EarlyLintPass};
88use rustc_middle:: lint:: in_external_macro;
99use rustc_session:: { declare_tool_lint, impl_lint_pass} ;
1010use rustc_span:: source_map:: Span ;
11- use rustc_span:: symbol:: { Ident , SymbolStr } ;
11+ use rustc_span:: symbol:: { Ident , Symbol } ;
1212use std:: cmp:: Ordering ;
1313
1414declare_clippy_lint ! {
@@ -75,7 +75,7 @@ pub struct NonExpressiveNames {
7575impl_lint_pass ! ( NonExpressiveNames => [ SIMILAR_NAMES , MANY_SINGLE_CHAR_NAMES , JUST_UNDERSCORES_AND_DIGITS ] ) ;
7676
7777struct ExistingName {
78- interned : SymbolStr ,
78+ interned : Symbol ,
7979 span : Span ,
8080 len : usize ,
8181 exemptions : & ' static [ & ' static str ] ,
@@ -218,18 +218,19 @@ impl<'a, 'tcx, 'b> SimilarNamesNameVisitor<'a, 'tcx, 'b> {
218218 let mut split_at = None ;
219219 match existing_name. len . cmp ( & count) {
220220 Ordering :: Greater => {
221- if existing_name. len - count != 1 || levenstein_not_1 ( & interned_name, & existing_name. interned ) {
221+ if existing_name. len - count != 1 || levenstein_not_1 ( & interned_name, & existing_name. interned . as_str ( ) ) {
222222 continue ;
223223 }
224224 } ,
225225 Ordering :: Less => {
226- if count - existing_name. len != 1 || levenstein_not_1 ( & existing_name. interned , & interned_name) {
226+ if count - existing_name. len != 1 || levenstein_not_1 ( & existing_name. interned . as_str ( ) , & interned_name) {
227227 continue ;
228228 }
229229 } ,
230230 Ordering :: Equal => {
231231 let mut interned_chars = interned_name. chars ( ) ;
232- let mut existing_chars = existing_name. interned . chars ( ) ;
232+ let interned_str = existing_name. interned . as_str ( ) ;
233+ let mut existing_chars = interned_str. chars ( ) ;
233234 let first_i = interned_chars. next ( ) . expect ( "we know we have at least one char" ) ;
234235 let first_e = existing_chars. next ( ) . expect ( "we know we have at least one char" ) ;
235236 let eq_or_numeric = |( a, b) : ( char , char ) | a == b || a. is_numeric ( ) && b. is_numeric ( ) ;
@@ -302,7 +303,7 @@ impl<'a, 'tcx, 'b> SimilarNamesNameVisitor<'a, 'tcx, 'b> {
302303 }
303304 self . 0 . names . push ( ExistingName {
304305 exemptions : get_exemptions ( & interned_name) . unwrap_or ( & [ ] ) ,
305- interned : interned_name ,
306+ interned : ident . name ,
306307 span : ident. span ,
307308 len : count,
308309 } ) ;
0 commit comments