+mod issue9608 {
+ fn sig_drop() {
+ enum X {
+ X(std::fs::File),
+ Y(u32),
+ }
+
+ let _ = None.unwrap_or(X::Y(0));
+ }
+}
+
+mod issue8993 {
+ fn g() -> i32 {
+ 3
+ }
+
+ fn f(n: i32) -> i32 {
+ n
+ }
+
+ fn test_map_or() {
+ let _ = Some(4).map_or(g(), |v| v);
+ let _ = Some(4).map_or(g(), f);
+ let _ = Some(4).map_or(0, f);
+ }
+}
+