From af3ef52252dfad178d897b036876c2575c20f1f3 Mon Sep 17 00:00:00 2001 From: Steven Sheldon Date: Fri, 18 Oct 2019 08:33:40 -0700 Subject: [PATCH] Fix so the compiler can infer msg_send! return types (#1227) * Fix so the compiler can infer msg_send! return type Currently, due to a quirk in Rust's type inference interacting with the structure of the msg_send! macro, a () return type will be inferred when the compiler cannot otherwise determine the return type. This behavior is expected to change, and in the future could resolve to a ! return type, which results in undefined behavior. Linting has previously been added for this in rust-lang/rust#39216, but it did not catch these cases due to SSheldon/rust-objc#62. An upcoming version of objc will be fixed to stop hiding these errors, at which point they will become compile errors. This change fixes these errors and allows winit to compile with the fixed version of objc. * Bump cocoa to 0.19.1 --- Cargo.toml | 2 +- src/platform_impl/macos/window.rs | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index b2a21fa3a1..679d9065f1 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -37,7 +37,7 @@ version = "0.2" objc = "0.2.3" [target.'cfg(target_os = "macos")'.dependencies] -cocoa = "0.18.4" +cocoa = "0.19.1" core-foundation = "0.6" core-graphics = "0.17.3" dispatch = "0.1.4" diff --git a/src/platform_impl/macos/window.rs b/src/platform_impl/macos/window.rs index 4c9e3f9b32..ab19fe7a67 100644 --- a/src/platform_impl/macos/window.rs +++ b/src/platform_impl/macos/window.rs @@ -786,7 +786,7 @@ impl UnownedWindow { // of the menu bar, and this looks broken, so we must make sure // that the menu bar is disabled. This is done in the window // delegate in `window:willUseFullScreenPresentationOptions:`. - msg_send![*self.ns_window, setLevel: ffi::CGShieldingWindowLevel() + 1]; + let () = msg_send![*self.ns_window, setLevel: ffi::CGShieldingWindowLevel() + 1]; }, ( &Some(Fullscreen::Exclusive(RootVideoMode { ref video_mode })),