#![feature(coverage_attribute)] // compile-flags: --edition=2021 // Regression test for inconsistent handling of function signature spans that // are followed by code using the `?` operator. // // For each of these similar functions, the line containing the function // signature should be handled in the same way. fn a() -> Option { Some(7i32); Some(0) } fn b() -> Option { Some(7i32)?; Some(0) } fn c() -> Option { let _ = Some(7i32)?; Some(0) } fn d() -> Option { let _: () = (); Some(7i32)?; Some(0) } #[coverage(off)] fn main() { a(); b(); c(); d(); }