File tree 1 file changed +17
-8
lines changed
1 file changed +17
-8
lines changed Original file line number Diff line number Diff line change @@ -910,14 +910,23 @@ impl SourceMap {
910
910
911
911
pub fn generate_fn_name_span ( & self , span : Span ) -> Option < Span > {
912
912
let prev_span = self . span_extend_to_prev_str ( span, "fn" , true ) ;
913
- self . span_to_snippet ( prev_span)
914
- . map ( |snippet| {
915
- let len = snippet
916
- . find ( |c : char | !c. is_alphanumeric ( ) && c != '_' )
917
- . expect ( "no label after fn" ) ;
918
- prev_span. with_hi ( BytePos ( prev_span. lo ( ) . 0 + len as u32 ) )
919
- } )
920
- . ok ( )
913
+ if let Ok ( snippet) = self . span_to_snippet ( prev_span) {
914
+ debug ! (
915
+ "generate_fn_name_span: span={:?}, prev_span={:?}, snippet={:?}" ,
916
+ span, prev_span, snippet
917
+ ) ;
918
+
919
+ if snippet. is_empty ( ) {
920
+ return None ;
921
+ } ;
922
+
923
+ let len = snippet
924
+ . find ( |c : char | !c. is_alphanumeric ( ) && c != '_' )
925
+ . expect ( "no label after fn" ) ;
926
+ Some ( prev_span. with_hi ( BytePos ( prev_span. lo ( ) . 0 + len as u32 ) ) )
927
+ } else {
928
+ None
929
+ }
921
930
}
922
931
923
932
/// Takes the span of a type parameter in a function signature and try to generate a span for
You can’t perform that action at this time.
0 commit comments