Skip to content

Commit

Permalink
Ignore errors re: unreachable blocks in dataflow cursor unit tests
Browse files Browse the repository at this point in the history
  • Loading branch information
ecstatic-morse committed Oct 22, 2021
1 parent 0119879 commit c6d69e8
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 0 deletions.
7 changes: 7 additions & 0 deletions compiler/rustc_mir_dataflow/src/framework/cursor.rs
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,13 @@ where
}
}

/// Allows inspection of unreachable basic blocks even with `debug_assertions` enabled.
#[cfg(test)]
pub(crate) fn allow_unreachable(&mut self) {
#[cfg(debug_assertions)]
self.reachable_blocks.insert_all()
}

/// Returns the underlying `Results`.
pub fn results(&self) -> &Results<'tcx, A> {
&self.results.borrow()
Expand Down
2 changes: 2 additions & 0 deletions compiler/rustc_mir_dataflow/src/framework/tests.rs
Original file line number Diff line number Diff line change
Expand Up @@ -268,6 +268,8 @@ fn test_cursor<D: Direction>(analysis: MockAnalysis<'tcx, D>) {
let mut cursor =
Results { entry_sets: analysis.mock_entry_sets(), analysis }.into_results_cursor(body);

cursor.allow_unreachable();

let every_target = || {
body.basic_blocks()
.iter_enumerated()
Expand Down

0 comments on commit c6d69e8

Please sign in to comment.