diff options
| author | bors <bors@rust-lang.org> | 2015-06-15 09:02:31 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2015-06-15 09:02:31 +0000 |
| commit | 0d82fb55dbb9b28798ea7c2004fa91fe3ae23b86 (patch) | |
| tree | 2aab8478f66bed0dc97012de5d19c9e64a122ea3 /src | |
| parent | 7517ecf4fc9cfe2adff8a38ecc2ef660692a4b5b (diff) | |
| parent | a54bbac99af8240d78e161ac68653726c4ff27cc (diff) | |
| download | rust-0d82fb55dbb9b28798ea7c2004fa91fe3ae23b86.tar.gz rust-0d82fb55dbb9b28798ea7c2004fa91fe3ae23b86.zip | |
Auto merge of #26307 - nrc:save-bugs, r=cmr
r? @brson (or anyone, really)
Diffstat (limited to 'src')
| -rw-r--r-- | src/librustc_trans/save/mod.rs | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/src/librustc_trans/save/mod.rs b/src/librustc_trans/save/mod.rs index 380d6b0ee65..3ea628704eb 100644 --- a/src/librustc_trans/save/mod.rs +++ b/src/librustc_trans/save/mod.rs @@ -255,16 +255,17 @@ impl<'l, 'tcx: 'l> SaveContext<'l, 'tcx> { match typ.node { // Common case impl for a struct or something basic. ast::TyPath(None, ref path) => { - sub_span = self.span_utils.sub_span_for_type_name(path.span); + sub_span = self.span_utils.sub_span_for_type_name(path.span).unwrap(); type_data = self.lookup_ref_id(typ.id).map(|id| TypeRefData { - span: sub_span.unwrap(), + span: sub_span, scope: parent, ref_id: id, }); }, _ => { // Less useful case, impl for a compound type. - sub_span = self.span_utils.sub_span_for_type_name(typ.span); + let span = typ.span; + sub_span = self.span_utils.sub_span_for_type_name(span).unwrap_or(span); } } @@ -273,7 +274,7 @@ impl<'l, 'tcx: 'l> SaveContext<'l, 'tcx> { Data::ImplData(ImplData { id: item.id, - span: sub_span.unwrap(), + span: sub_span, scope: parent, trait_ref: trait_data, self_ref: type_data, @@ -320,9 +321,10 @@ impl<'l, 'tcx: 'l> SaveContext<'l, 'tcx> { parent: NodeId) -> Option<TypeRefData> { self.lookup_ref_id(trait_ref.ref_id).map(|def_id| { - let sub_span = self.span_utils.sub_span_for_type_name(trait_ref.path.span); + let span = trait_ref.path.span; + let sub_span = self.span_utils.sub_span_for_type_name(span).unwrap_or(span); TypeRefData { - span: sub_span.unwrap(), + span: sub_span, scope: parent, ref_id: def_id, } |
