about summary refs log tree commit diff
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2018-11-16 21:11:24 +0000
committerbors <bors@rust-lang.org>2018-11-16 21:11:24 +0000
commitee821736ccdf1d370bf2c906ce3c133c0fc295d4 (patch)
tree6e4765a4d7b495bda451969034640ca2c0eac170
parent6b9b97bd9b704f85f0184f7a213cc4d62bd9654c (diff)
parent547ac5ef0a2c34fb62611bddb4c45f57049f8f64 (diff)
downloadrust-ee821736ccdf1d370bf2c906ce3c133c0fc295d4.tar.gz
rust-ee821736ccdf1d370bf2c906ce3c133c0fc295d4.zip
Auto merge of #55936 - nrc:save-rename, r=eddyb
save-analysis: be even more aggressive about ignorning macro-generated defs

r? @eddyb
-rw-r--r--src/librustc_save_analysis/dump_visitor.rs12
-rw-r--r--src/librustc_save_analysis/span_utils.rs6
2 files changed, 8 insertions, 10 deletions
diff --git a/src/librustc_save_analysis/dump_visitor.rs b/src/librustc_save_analysis/dump_visitor.rs
index 0c0f50c1fd7..15c8861eb3f 100644
--- a/src/librustc_save_analysis/dump_visitor.rs
+++ b/src/librustc_save_analysis/dump_visitor.rs
@@ -658,11 +658,13 @@ impl<'l, 'tcx: 'l, 'll, O: DumpOutput + 'll> DumpVisitor<'l, 'tcx, 'll, O> {
         impl_items: &'l [ast::ImplItem],
     ) {
         if let Some(impl_data) = self.save_ctxt.get_item_data(item) {
-            if let super::Data::RelationData(rel, imp) = impl_data {
-                self.dumper.dump_relation(rel);
-                self.dumper.dump_impl(imp);
-            } else {
-                span_bug!(item.span, "unexpected data kind: {:?}", impl_data);
+            if !self.span.filter_generated(item.span) {
+                if let super::Data::RelationData(rel, imp) = impl_data {
+                    self.dumper.dump_relation(rel);
+                    self.dumper.dump_impl(imp);
+                } else {
+                    span_bug!(item.span, "unexpected data kind: {:?}", impl_data);
+                }
             }
         }
         self.visit_ty(&typ);
diff --git a/src/librustc_save_analysis/span_utils.rs b/src/librustc_save_analysis/span_utils.rs
index 902353da13f..06b4f33b5db 100644
--- a/src/librustc_save_analysis/span_utils.rs
+++ b/src/librustc_save_analysis/span_utils.rs
@@ -124,14 +124,10 @@ impl<'a> SpanUtils<'a> {
     /// Used to filter out spans of minimal value,
     /// such as references to macro internal variables.
     pub fn filter_generated(&self, span: Span) -> bool {
-        if span.is_dummy() {
+        if generated_code(span) {
             return true;
         }
 
-        if !generated_code(span) {
-            return false;
-        }
-
         //If the span comes from a fake source_file, filter it.
         !self.sess
             .source_map()