File tree 2 files changed +5
-3
lines changed
2 files changed +5
-3
lines changed Original file line number Diff line number Diff line change @@ -909,7 +909,8 @@ impl Token {
909
909
self . is_keyword ( kw)
910
910
|| ( case == Case :: Insensitive
911
911
&& self . is_non_raw_ident_where ( |id| {
912
- id. name . as_str ( ) . to_lowercase ( ) == kw. as_str ( ) . to_lowercase ( )
912
+ // Do an ASCII case-insensitive match, because all keywords are ASCII.
913
+ id. name . as_str ( ) . eq_ignore_ascii_case ( kw. as_str ( ) )
913
914
} ) )
914
915
}
915
916
Original file line number Diff line number Diff line change @@ -655,9 +655,9 @@ impl<'a> Parser<'a> {
655
655
fn check_keyword_case ( & mut self , exp : ExpKeywordPair , case : Case ) -> bool {
656
656
if self . check_keyword ( exp) {
657
657
true
658
- // Do an ASCII case-insensitive match, because all keywords are ASCII.
659
658
} else if case == Case :: Insensitive
660
659
&& let Some ( ( ident, IdentIsRaw :: No ) ) = self . token . ident ( )
660
+ // Do an ASCII case-insensitive match, because all keywords are ASCII.
661
661
&& ident. as_str ( ) . eq_ignore_ascii_case ( exp. kw . as_str ( ) )
662
662
{
663
663
true
@@ -689,7 +689,8 @@ impl<'a> Parser<'a> {
689
689
true
690
690
} else if case == Case :: Insensitive
691
691
&& let Some ( ( ident, IdentIsRaw :: No ) ) = self . token . ident ( )
692
- && ident. as_str ( ) . to_lowercase ( ) == exp. kw . as_str ( ) . to_lowercase ( )
692
+ // Do an ASCII case-insensitive match, because all keywords are ASCII.
693
+ && ident. as_str ( ) . eq_ignore_ascii_case ( exp. kw . as_str ( ) )
693
694
{
694
695
self . dcx ( ) . emit_err ( errors:: KwBadCase { span : ident. span , kw : exp. kw . as_str ( ) } ) ;
695
696
self . bump ( ) ;
You can’t perform that action at this time.
0 commit comments