about summary refs log tree commit diff
diff options
context:
space:
mode:
authorljedrz <ljedrz@gmail.com>2018-12-19 13:08:17 +0100
committerljedrz <ljedrz@gmail.com>2018-12-19 13:08:17 +0100
commit3294a69abb1749bba8769df867f65cd37a93a30c (patch)
tree724f8d0a9f156b5d02d5727784a61b76381aec03
parente7b4bc35e99ee3c5b2b42a1b8b3f9cd6eca1f0b2 (diff)
downloadrust-3294a69abb1749bba8769df867f65cd37a93a30c.tar.gz
rust-3294a69abb1749bba8769df867f65cd37a93a30c.zip
query: faster stack reversal in remove_cycle
-rw-r--r--src/librustc/ty/query/job.rs8
1 files changed, 3 insertions, 5 deletions
diff --git a/src/librustc/ty/query/job.rs b/src/librustc/ty/query/job.rs
index 1439e41bb31..2e6cd8e0ec3 100644
--- a/src/librustc/ty/query/job.rs
+++ b/src/librustc/ty/query/job.rs
@@ -390,11 +390,9 @@ fn remove_cycle<'tcx>(
                                       DUMMY_SP,
                                       &mut stack,
                                       &mut visited) {
-        // Reverse the stack so earlier entries require later entries
-        stack.reverse();
-
-        // The stack is a vector of pairs of spans and queries
-        let (mut spans, queries): (Vec<_>, Vec<_>) = stack.into_iter().unzip();
+        // The stack is a vector of pairs of spans and queries; reverse it so that
+        // the earlier entries require later entries
+        let (mut spans, queries): (Vec<_>, Vec<_>) = stack.into_iter().rev().unzip();
 
         // Shift the spans so that queries are matched with the span for their waitee
         spans.rotate_right(1);