    1|       |#![allow(unused_assignments, unused_variables, while_true)]
    2|       |
    3|       |// This test confirms an earlier problem was resolved, supporting the MIR graph generated by the
    4|       |// structure of this `fmt` function.
    5|       |
    6|       |struct DebugTest;
    7|       |
    8|       |impl std::fmt::Debug for DebugTest {
    9|      1|    fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
   10|      1|        if true {
   11|      1|            if false {
   12|       |                while true {
   13|       |                }
   14|      1|            }
   15|      1|            write!(f, "error")?;
                                            ^0
   16|       |        } else {
   17|       |        }
   18|      1|        Ok(())
   19|      1|    }
   20|       |}
   21|       |
   22|      1|fn main() {
   23|      1|    let debug_test = DebugTest;
   24|      1|    println!("{:?}", debug_test);
   25|      1|}
   26|       |
   27|       |/*
   28|       |
   29|       |This is the error message generated, before the issue was fixed:
   30|       |
   31|       |error: internal compiler error: compiler/rustc_mir/src/transform/coverage/mod.rs:374:42:
   32|       |Error processing: DefId(0:6 ~ bug_incomplete_cov_graph_traversal_simplified[317d]::{impl#0}::fmt):
   33|       |Error { message: "`TraverseCoverageGraphWithLoops` missed some `BasicCoverageBlock`s:
   34|       |[bcb6, bcb7, bcb9]" }
   35|       |
   36|       |*/

