@@ -17,16 +17,17 @@ fn invalid_type_err(
1717 ConcatBytesInvalid , ConcatBytesInvalidSuggestion , ConcatBytesNonU8 , ConcatBytesOob ,
1818 } ;
1919 let snippet = cx. sess . source_map ( ) . span_to_snippet ( span) . ok ( ) ;
20+ let dcx = cx. dcx ( ) ;
2021 match ast:: LitKind :: from_token_lit ( token_lit) {
2122 Ok ( ast:: LitKind :: CStr ( _, _) ) => {
2223 // Avoid ambiguity in handling of terminal `NUL` by refusing to
2324 // concatenate C string literals as bytes.
24- cx . emit_err ( errors:: ConcatCStrLit { span : span } ) ;
25+ dcx . emit_err ( errors:: ConcatCStrLit { span : span } ) ;
2526 }
2627 Ok ( ast:: LitKind :: Char ( _) ) => {
2728 let sugg =
2829 snippet. map ( |snippet| ConcatBytesInvalidSuggestion :: CharLit { span, snippet } ) ;
29- cx . sess . emit_err ( ConcatBytesInvalid { span, lit_kind : "character" , sugg } ) ;
30+ dcx . emit_err ( ConcatBytesInvalid { span, lit_kind : "character" , sugg } ) ;
3031 }
3132 Ok ( ast:: LitKind :: Str ( _, _) ) => {
3233 // suggestion would be invalid if we are nested
@@ -35,29 +36,29 @@ fn invalid_type_err(
3536 } else {
3637 None
3738 } ;
38- cx . emit_err ( ConcatBytesInvalid { span, lit_kind : "string" , sugg } ) ;
39+ dcx . emit_err ( ConcatBytesInvalid { span, lit_kind : "string" , sugg } ) ;
3940 }
4041 Ok ( ast:: LitKind :: Float ( _, _) ) => {
41- cx . emit_err ( ConcatBytesInvalid { span, lit_kind : "float" , sugg : None } ) ;
42+ dcx . emit_err ( ConcatBytesInvalid { span, lit_kind : "float" , sugg : None } ) ;
4243 }
4344 Ok ( ast:: LitKind :: Bool ( _) ) => {
44- cx . emit_err ( ConcatBytesInvalid { span, lit_kind : "boolean" , sugg : None } ) ;
45+ dcx . emit_err ( ConcatBytesInvalid { span, lit_kind : "boolean" , sugg : None } ) ;
4546 }
4647 Ok ( ast:: LitKind :: Err ) => { }
4748 Ok ( ast:: LitKind :: Int ( _, _) ) if !is_nested => {
4849 let sugg =
4950 snippet. map ( |snippet| ConcatBytesInvalidSuggestion :: IntLit { span : span, snippet } ) ;
50- cx . emit_err ( ConcatBytesInvalid { span, lit_kind : "numeric" , sugg } ) ;
51+ dcx . emit_err ( ConcatBytesInvalid { span, lit_kind : "numeric" , sugg } ) ;
5152 }
5253 Ok ( ast:: LitKind :: Int (
5354 val,
5455 ast:: LitIntType :: Unsuffixed | ast:: LitIntType :: Unsigned ( ast:: UintTy :: U8 ) ,
5556 ) ) => {
5657 assert ! ( val > u8 :: MAX . into( ) ) ; // must be an error
57- cx . emit_err ( ConcatBytesOob { span } ) ;
58+ dcx . emit_err ( ConcatBytesOob { span } ) ;
5859 }
5960 Ok ( ast:: LitKind :: Int ( _, _) ) => {
60- cx . emit_err ( ConcatBytesNonU8 { span } ) ;
61+ dcx . emit_err ( ConcatBytesNonU8 { span } ) ;
6162 }
6263 Ok ( ast:: LitKind :: ByteStr ( ..) | ast:: LitKind :: Byte ( _) ) => unreachable ! ( ) ,
6364 Err ( err) => {
@@ -72,10 +73,11 @@ fn handle_array_element(
7273 missing_literals : & mut Vec < rustc_span:: Span > ,
7374 expr : & P < rustc_ast:: Expr > ,
7475) -> Option < u8 > {
76+ let dcx = cx. dcx ( ) ;
7577 match expr. kind {
7678 ast:: ExprKind :: Array ( _) | ast:: ExprKind :: Repeat ( _, _) => {
7779 if !* has_errors {
78- cx . emit_err ( errors:: ConcatBytesArray { span : expr. span , bytestr : false } ) ;
80+ dcx . emit_err ( errors:: ConcatBytesArray { span : expr. span , bytestr : false } ) ;
7981 }
8082 * has_errors = true ;
8183 None
@@ -89,7 +91,7 @@ fn handle_array_element(
8991 Ok ( ast:: LitKind :: Byte ( val) ) => Some ( val) ,
9092 Ok ( ast:: LitKind :: ByteStr ( ..) ) => {
9193 if !* has_errors {
92- cx . emit_err ( errors:: ConcatBytesArray { span : expr. span , bytestr : true } ) ;
94+ dcx . emit_err ( errors:: ConcatBytesArray { span : expr. span , bytestr : true } ) ;
9395 }
9496 * has_errors = true ;
9597 None
@@ -104,7 +106,7 @@ fn handle_array_element(
104106 } ,
105107 ast:: ExprKind :: IncludedBytes ( ..) => {
106108 if !* has_errors {
107- cx . emit_err ( errors:: ConcatBytesArray { span : expr. span , bytestr : false } ) ;
109+ dcx . emit_err ( errors:: ConcatBytesArray { span : expr. span , bytestr : false } ) ;
108110 }
109111 * has_errors = true ;
110112 None
@@ -151,7 +153,7 @@ pub fn expand_concat_bytes(
151153 }
152154 }
153155 } else {
154- cx. emit_err ( errors:: ConcatBytesBadRepeat { span : count. value . span } ) ;
156+ cx. dcx ( ) . emit_err ( errors:: ConcatBytesBadRepeat { span : count. value . span } ) ;
155157 }
156158 }
157159 & ast:: ExprKind :: Lit ( token_lit) => match ast:: LitKind :: from_token_lit ( token_lit) {
@@ -180,7 +182,7 @@ pub fn expand_concat_bytes(
180182 }
181183 }
182184 if !missing_literals. is_empty ( ) {
183- cx. emit_err ( errors:: ConcatBytesMissingLiteral { spans : missing_literals } ) ;
185+ cx. dcx ( ) . emit_err ( errors:: ConcatBytesMissingLiteral { spans : missing_literals } ) ;
184186 return base:: MacEager :: expr ( DummyResult :: raw_expr ( sp, true ) ) ;
185187 } else if has_errors {
186188 return base:: MacEager :: expr ( DummyResult :: raw_expr ( sp, true ) ) ;
0 commit comments