diff options
| author | Nick Cameron <ncameron@mozilla.com> | 2016-11-21 18:11:36 +1300 |
|---|---|---|
| committer | Nick Cameron <ncameron@mozilla.com> | 2016-11-23 11:53:27 +1300 |
| commit | 3295afa6e2dd9d3b50bce0342199a7d448d480aa (patch) | |
| tree | 4f335ef004baa40e6193ea523cba5f506427b313 /src/librustc_save_analysis | |
| parent | 4bc929013396eede8a22a3e7932fb3a63d2a11da (diff) | |
| download | rust-3295afa6e2dd9d3b50bce0342199a7d448d480aa.tar.gz rust-3295afa6e2dd9d3b50bce0342199a7d448d480aa.zip | |
save-analysis: fix ICE on partially resolved path
Occurs when we produce save-analysis before type checking is complete (due to errors).
Diffstat (limited to 'src/librustc_save_analysis')
| -rw-r--r-- | src/librustc_save_analysis/lib.rs | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/librustc_save_analysis/lib.rs b/src/librustc_save_analysis/lib.rs index 778f0184141..4c59f5e8a83 100644 --- a/src/librustc_save_analysis/lib.rs +++ b/src/librustc_save_analysis/lib.rs @@ -497,7 +497,7 @@ impl<'l, 'tcx: 'l> SaveContext<'l, 'tcx> { } pub fn get_path_data(&self, id: NodeId, path: &ast::Path) -> Option<Data> { - let def = self.tcx.expect_def(id); + let def = option_try!(self.tcx.expect_resolution(id).maybe_full_def()); let sub_span = self.span_utils.span_for_last_ident(path.span); filter!(self.span_utils, sub_span, path.span, None); match def { |
