@@ -287,26 +287,21 @@ pub fn char_lit(lit: &str) -> (char, isize) {
287287 use std:: char;
288288
289289 let mut chars = lit. chars ( ) ;
290- let c = match ( chars. next ( ) , chars. next ( ) ) {
290+ match ( chars. next ( ) , chars. next ( ) ) {
291291 ( Some ( c) , None ) if c != '\\' => return ( c, 1 ) ,
292292 ( Some ( '\\' ) , Some ( c) ) => match c {
293- '"' => Some ( '"' ) ,
294- 'n' => Some ( '\n' ) ,
295- 'r' => Some ( '\r' ) ,
296- 't' => Some ( '\t' ) ,
297- '\\' => Some ( '\\' ) ,
298- '\'' => Some ( '\'' ) ,
299- '0' => Some ( '\0' ) ,
300- _ => { None }
293+ '"' => return ( '"' , 2 ) ,
294+ 'n' => return ( '\n' , 2 ) ,
295+ 'r' => return ( '\r' , 2 ) ,
296+ 't' => return ( '\t' , 2 ) ,
297+ '\\' => return ( '\\' , 2 ) ,
298+ '\'' => return ( '\'' , 2 ) ,
299+ '0' => return ( '\0' , 2 ) ,
300+ _ => { }
301301 } ,
302302 _ => panic ! ( "lexer accepted invalid char escape `{}`" , lit)
303303 } ;
304304
305- match c {
306- Some ( x) => return ( x, 2 ) ,
307- None => { }
308- }
309-
310305 let msg = format ! ( "lexer should have rejected a bad character escape {}" , lit) ;
311306 let msg2 = & msg[ ..] ;
312307
0 commit comments