[INFO] cloning repository https://github.com/luojunyuan/screen_orientation [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/luojunyuan/screen_orientation" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fluojunyuan%2Fscreen_orientation", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fluojunyuan%2Fscreen_orientation'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] d4a066dc75e3acfc9346faaa27d8bd7f61d95758 [INFO] checking luojunyuan/screen_orientation against master#af4a5a13a15fa0c60e06321077ef452f769b42fd for pr-122960-3 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fluojunyuan%2Fscreen_orientation" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/luojunyuan/screen_orientation on toolchain af4a5a13a15fa0c60e06321077ef452f769b42fd [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+af4a5a13a15fa0c60e06321077ef452f769b42fd" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/luojunyuan/screen_orientation [INFO] finished tweaking git repo https://github.com/luojunyuan/screen_orientation [INFO] tweaked toml for git repo https://github.com/luojunyuan/screen_orientation written to /workspace/builds/worker-0-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/luojunyuan/screen_orientation already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+af4a5a13a15fa0c60e06321077ef452f769b42fd" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded windows v0.20.0 [INFO] [stderr] Downloaded windows_gen v0.20.0 [INFO] [stderr] Downloaded windows_macros v0.20.0 [INFO] [stderr] Downloaded windows_quote v0.20.0 [INFO] [stderr] Downloaded windows_reader v0.20.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+af4a5a13a15fa0c60e06321077ef452f769b42fd" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 91eadb4d51f98dd5487a6fbfd12edeadfd090071a01de783a8c7265ec860a1c1 [INFO] running `Command { std: "docker" "start" "-a" "91eadb4d51f98dd5487a6fbfd12edeadfd090071a01de783a8c7265ec860a1c1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "91eadb4d51f98dd5487a6fbfd12edeadfd090071a01de783a8c7265ec860a1c1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "91eadb4d51f98dd5487a6fbfd12edeadfd090071a01de783a8c7265ec860a1c1", kill_on_drop: false }` [INFO] [stdout] 91eadb4d51f98dd5487a6fbfd12edeadfd090071a01de783a8c7265ec860a1c1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+af4a5a13a15fa0c60e06321077ef452f769b42fd" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 916f1036785098f114bf8c1b4f24ef7f27b0719e70d27d9e3a6d12282206c429 [INFO] running `Command { std: "docker" "start" "-a" "916f1036785098f114bf8c1b4f24ef7f27b0719e70d27d9e3a6d12282206c429", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.29 [INFO] [stderr] Compiling unicode-xid v0.2.2 [INFO] [stderr] Compiling syn v1.0.76 [INFO] [stderr] Compiling windows_quote v0.20.0 [INFO] [stderr] Compiling windows_reader v0.20.0 [INFO] [stderr] Compiling const-sha1 v0.2.0 [INFO] [stderr] Checking windows_gen v0.20.0 [INFO] [stderr] Compiling quote v1.0.9 [INFO] [stderr] Compiling windows_macros v0.20.0 [INFO] [stderr] Compiling windows v0.20.0 [INFO] [stderr] Compiling bindings v0.1.0 (/opt/rustwide/workdir/bindings) [INFO] [stdout] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stdout] --> /opt/rustwide/target/debug/build/bindings-066fee9a79f92dc3/out/windows.rs:1:3655 [INFO] [stdout] | [INFO] [stdout] 1 | ... { if ! value . 0 . is_null ( ) { unsafe { :: std :: boxed :: Box :: from_raw ( value . 0 ) ; } } } } } impl < 'a > :: windows :: Into... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 1 | # [ allow ( unused_variables , non_upper_case_globals , non_snake_case , unused_unsafe , non_camel_case_types , dead_code , clippy :: all ) ] pub mod Windows { # [ allow ( unused_variables , non_upper_case_globals , non_snake_case , unused_unsafe , non_camel_case_types , dead_code , clippy :: all ) ] pub mod Win32 { # [ allow ( unused_variables , non_upper_case_globals , non_snake_case , unused_unsafe , non_camel_case_types , dead_code , clippy :: all ) ] pub mod Foundation { # [ repr ( transparent ) ] # [ derive ( :: std :: default :: Default , :: std :: clone :: Clone , :: std :: marker :: Copy , :: std :: cmp :: PartialEq , :: std :: cmp :: Eq , :: std :: fmt :: Debug ) ] pub struct BOOL ( pub i32 ) ; unsafe impl :: windows :: Abi for BOOL { type Abi = Self ; type DefaultType = Self ; } impl BOOL { # [ inline ] pub fn as_bool ( self ) -> bool { ! ( self . 0 == 0 ) } # [ inline ] pub fn ok ( self ) -> :: windows :: Result < ( ) > { if self . as_bool ( ) { Ok ( ( ) ) } else { Err ( :: windows :: Error :: from_win32 ( ) ) } } # [ inline ] # [ track_caller ] pub fn unwrap ( self ) { self . ok ( ) . unwrap ( ) ; } # [ inline ] # [ track_caller ] pub fn expect ( self , msg : & str ) { self . ok ( ) . expect ( msg ) ; } } impl :: std :: convert :: From < BOOL > for bool { fn from ( value : BOOL ) -> Self { value . as_bool ( ) } } impl :: std :: convert :: From < & BOOL > for bool { fn from ( value : & BOOL ) -> Self { value . as_bool ( ) } } impl :: std :: convert :: From < bool > for BOOL { fn from ( value : bool ) -> Self { if value { BOOL ( 1 ) } else { BOOL ( 0 ) } } } impl :: std :: convert :: From < & bool > for BOOL { fn from ( value : & bool ) -> Self { ( * value ) . into ( ) } } impl :: std :: cmp :: PartialEq < bool > for BOOL { fn eq ( & self , other : & bool ) -> bool { self . as_bool ( ) == * other } } impl :: std :: cmp :: PartialEq < BOOL > for bool { fn eq ( & self , other : & BOOL ) -> bool { * self == other . as_bool ( ) } } impl std :: ops :: Not for BOOL { type Output = Self ; fn not ( self ) -> Self :: Output { if self . as_bool ( ) { BOOL ( 0 ) } else { BOOL ( 1 ) } } } impl < 'a > :: windows :: IntoParam < 'a , BOOL > for bool { fn into_param ( self ) -> :: windows :: Param < 'a , BOOL > { :: windows :: Param :: Owned ( self . into ( ) ) } } # [ derive ( :: std :: clone :: Clone , :: std :: marker :: Copy ) ] # [ repr ( C ) ] pub struct POINTL { pub x : i32 , pub y : i32 } impl POINTL { } impl :: std :: default :: Default for POINTL { fn default ( ) -> Self { unsafe { :: std :: mem :: zeroed ( ) } } } impl :: std :: fmt :: Debug for POINTL { fn fmt ( & self , fmt : & mut :: std :: fmt :: Formatter < '_ > ) -> :: std :: fmt :: Result { fmt . debug_struct ( "POINTL" ) . field ( "x" , & self . x ) . field ( "y" , & self . y ) . finish ( ) } } impl :: std :: cmp :: PartialEq for POINTL { fn eq ( & self , other : & Self ) -> bool { self . x == other . x && self . y == other . y } } impl :: std :: cmp :: Eq for POINTL { } unsafe impl :: windows :: Abi for POINTL { type Abi = Self ; type DefaultType = Self ; } # [ derive ( :: std :: clone :: Clone , :: std :: marker :: Copy , :: std :: fmt :: Debug , :: std :: cmp :: PartialEq , :: std :: cmp :: Eq ) ] # [ repr ( transparent ) ] pub struct PSTR ( pub * mut u8 ) ; impl :: std :: default :: Default for PSTR { fn default ( ) -> Self { Self ( :: std :: ptr :: null_mut ( ) ) } } unsafe impl :: windows :: Abi for PSTR { type Abi = Self ; type DefaultType = Self ; unsafe fn drop_param ( param : & mut :: windows :: Param < '_ , Self > ) { if let :: windows :: Param :: Boxed ( value ) = param { if ! value . 0 . is_null ( ) { unsafe { let _ = :: std :: boxed :: Box :: from_raw ( value . 0 ) ; } } } } } impl < 'a > :: windows :: IntoParam < 'a , PSTR > for & str { fn into_param ( self ) -> :: windows :: Param < 'a , PSTR > { :: windows :: Param :: Boxed ( PSTR ( :: std :: boxed :: Box :: < [ u8 ] > :: into_raw ( self . bytes ( ) . chain ( :: std :: iter :: once ( 0 ) ) . collect :: < std :: vec :: Vec < u8 >> ( ) . into_boxed_slice ( ) ) as _ ) ) } } impl < 'a > :: windows :: IntoParam < 'a , PSTR > for String { fn into_param ( self ) -> :: windows :: Param < 'a , PSTR > { :: windows :: Param :: Boxed ( PSTR ( :: std :: boxed :: Box :: < [ u8 ] > :: into_raw ( self . bytes ( ) . chain ( :: std :: iter :: once ( 0 ) ) . collect :: < std :: vec :: Vec < u8 >> ( ) . into_boxed_slice ( ) ) as _ ) ) } } } # [ allow ( unused_variables , non_upper_case_globals , non_snake_case , unused_unsafe , non_camel_case_types , dead_code , clippy :: all ) ] pub mod Graphics { # [ allow ( unused_variables , non_upper_case_globals , non_snake_case , unused_unsafe , non_camel_case_types , dead_code , clippy :: all ) ] pub mod Gdi { # [ derive ( :: std :: clone :: Clone , :: std :: marker :: Copy ) ] # [ repr ( C ) ] pub struct DISPLAY_DEVICEA { pub cb : u32 , pub DeviceName : [ super::super::System::SystemServices:: CHAR ;32 ] , pub DeviceString : [ super::super::System::SystemServices:: CHAR ;128 ] , pub StateFlags : u32 , pub DeviceID : [ super::super::System::SystemServices:: CHAR ;128 ] , pub DeviceKey : [ super::super::System::SystemServices:: CHAR ;128 ] } impl DISPLAY_DEVICEA { } impl :: std :: default :: Default for DISPLAY_DEVICEA { fn default ( ) -> Self { unsafe { :: std :: mem :: zeroed ( ) } } } impl :: std :: fmt :: Debug for DISPLAY_DEVICEA { fn fmt ( & self , fmt : & mut :: std :: fmt :: Formatter < '_ > ) -> :: std :: fmt :: Result { fmt . debug_struct ( "DISPLAY_DEVICEA" ) . field ( "cb" , & self . cb ) . field ( "DeviceName" , & self . DeviceName ) . field ( "DeviceString" , & self . DeviceString ) . field ( "StateFlags" , & self . StateFlags ) . field ( "DeviceID" , & self . DeviceID ) . field ( "DeviceKey" , & self . DeviceKey ) . finish ( ) } } impl :: std :: cmp :: PartialEq for DISPLAY_DEVICEA { fn eq ( & self , other : & Self ) -> bool { self . cb == other . cb && self . DeviceName == other . DeviceName && self . DeviceString == other . DeviceString && self . StateFlags == other . StateFlags && self . DeviceID == other . DeviceID && self . DeviceKey == other . DeviceKey } } impl :: std :: cmp :: Eq for DISPLAY_DEVICEA { } unsafe impl :: windows :: Abi for DISPLAY_DEVICEA { type Abi = Self ; type DefaultType = Self ; } # [ derive ( :: std :: cmp :: PartialEq , :: std :: cmp :: Eq , :: std :: marker :: Copy , :: std :: clone :: Clone , :: std :: default :: Default , :: std :: fmt :: Debug ) ] # [ repr ( transparent ) ] pub struct ENUM_DISPLAY_SETTINGS_MODE ( pub u32 ) ; pub const ENUM_CURRENT_SETTINGS : ENUM_DISPLAY_SETTINGS_MODE = ENUM_DISPLAY_SETTINGS_MODE ( 4294967295u32 ) ; pub const ENUM_REGISTRY_SETTINGS : ENUM_DISPLAY_SETTINGS_MODE = ENUM_DISPLAY_SETTINGS_MODE ( 4294967294u32 ) ; impl :: std :: convert :: From < u32 > for ENUM_DISPLAY_SETTINGS_MODE { fn from ( value : u32 ) -> Self { Self ( value ) } } unsafe impl :: windows :: Abi for ENUM_DISPLAY_SETTINGS_MODE { type Abi = Self ; type DefaultType = Self ; } impl :: std :: ops :: BitOr for ENUM_DISPLAY_SETTINGS_MODE { type Output = Self ; fn bitor ( self , rhs : Self ) -> Self { Self ( self . 0 | rhs . 0 ) } } impl :: std :: ops :: BitAnd for ENUM_DISPLAY_SETTINGS_MODE { type Output = Self ; fn bitand ( self , rhs : Self ) -> Self { Self ( self . 0 & rhs . 0 ) } } impl :: std :: ops :: BitOrAssign for ENUM_DISPLAY_SETTINGS_MODE { fn bitor_assign ( & mut self , rhs : Self ) { self . 0 . bitor_assign ( rhs . 0 ) } } impl :: std :: ops :: BitAndAssign for ENUM_DISPLAY_SETTINGS_MODE { fn bitand_assign ( & mut self , rhs : Self ) { self . 0 . bitand_assign ( rhs . 0 ) } } impl :: std :: ops :: Not for ENUM_DISPLAY_SETTINGS_MODE { type Output = Self ; fn not ( self ) -> Self { Self ( self . 0 . not ( ) ) } } pub unsafe fn EnumDisplayDevicesA < 'a , > ( lpdevice : impl :: windows :: IntoParam < 'a , super::super::Foundation:: PSTR > , idevnum : u32 , lpdisplaydevice : * mut DISPLAY_DEVICEA , dwflags : u32 , ) -> super::super::Foundation:: BOOL { # [ cfg ( windows ) ] { # [ link ( name ="user32" ) ] extern "system" { fn EnumDisplayDevicesA ( lpdevice : super::super::Foundation:: PSTR , idevnum : u32 , lpdisplaydevice : * mut DISPLAY_DEVICEA , dwflags : u32 ) -> super::super::Foundation:: BOOL ; } :: std :: mem :: transmute ( EnumDisplayDevicesA ( lpdevice . into_param ( ) . abi ( ) , :: std :: mem :: transmute ( idevnum ) , :: std :: mem :: transmute ( lpdisplaydevice ) , :: std :: mem :: transmute ( dwflags ) ) ) } # [ cfg ( not ( windows ) ) ] unimplemented ! ( "Unsupported target OS" ) ; } pub unsafe fn EnumDisplaySettingsA < 'a , > ( lpszdevicename : impl :: windows :: IntoParam < 'a , super::super::Foundation:: PSTR > , imodenum : ENUM_DISPLAY_SETTINGS_MODE , lpdevmode : * mut super::super::UI::DisplayDevices:: DEVMODEA , ) -> super::super::Foundation:: BOOL { # [ cfg ( windows ) ] { # [ link ( name ="user32" ) ] extern "system" { fn EnumDisplaySettingsA ( lpszdevicename : super::super::Foundation:: PSTR , imodenum : ENUM_DISPLAY_SETTINGS_MODE , lpdevmode : * mut super::super::UI::DisplayDevices:: DEVMODEA ) -> super::super::Foundation:: BOOL ; } :: std :: mem :: transmute ( EnumDisplaySettingsA ( lpszdevicename . into_param ( ) . abi ( ) , :: std :: mem :: transmute ( imodenum ) , :: std :: mem :: transmute ( lpdevmode ) ) ) } # [ cfg ( not ( windows ) ) ] unimplemented ! ( "Unsupported target OS" ) ; } } } # [ allow ( unused_variables , non_upper_case_globals , non_snake_case , unused_unsafe , non_camel_case_types , dead_code , clippy :: all ) ] pub mod System { # [ allow ( unused_variables , non_upper_case_globals , non_snake_case , unused_unsafe , non_camel_case_types , dead_code , clippy :: all ) ] pub mod SystemServices { # [ derive ( :: std :: clone :: Clone , :: std :: marker :: Copy , :: std :: fmt :: Debug , :: std :: cmp :: PartialEq , :: std :: cmp :: Eq ) ] # [ repr ( transparent ) ] pub struct CHAR ( pub u8 ) ; impl :: std :: default :: Default for CHAR { fn default ( ) -> Self { unsafe { :: std :: mem :: zeroed ( ) } } } unsafe impl :: windows :: Handle for CHAR { } unsafe impl :: windows :: Abi for CHAR { type Abi = Self ; type DefaultType = Self ; } } } # [ allow ( unused_variables , non_upper_case_globals , non_snake_case , unused_unsafe , non_camel_case_types , dead_code , clippy :: all ) ] pub mod UI { # [ allow ( unused_variables , non_upper_case_globals , non_snake_case , unused_unsafe , non_camel_case_types , dead_code , clippy :: all ) ] pub mod DisplayDevices { # [ derive ( :: std :: clone :: Clone , :: std :: marker :: Copy ) ] # [ repr ( C ) ] pub struct DEVMODEA { pub dmDeviceName : [ u8 ;32 ] , pub dmSpecVersion : u16 , pub dmDriverVersion : u16 , pub dmSize : u16 , pub dmDriverExtra : u16 , pub dmFields : u32 , pub Anonymous1 : DEVMODEA_0 , pub dmColor : i16 , pub dmDuplex : i16 , pub dmYResolution : i16 , pub dmTTOption : i16 , pub dmCollate : i16 , pub dmFormName : [ u8 ;32 ] , pub dmLogPixels : u16 , pub dmBitsPerPel : u32 , pub dmPelsWidth : u32 , pub dmPelsHeight : u32 , pub Anonymous2 : DEVMODEA_1 , pub dmDisplayFrequency : u32 , pub dmICMMethod : u32 , pub dmICMIntent : u32 , pub dmMediaType : u32 , pub dmDitherType : u32 , pub dmReserved1 : u32 , pub dmReserved2 : u32 , pub dmPanningWidth : u32 , pub dmPanningHeight : u32 } impl DEVMODEA { } impl :: std :: default :: Default for DEVMODEA { fn default ( ) -> Self { unsafe { :: std :: mem :: zeroed ( ) } } } impl :: std :: cmp :: PartialEq for DEVMODEA { fn eq ( & self , _other : & Self ) -> bool { unimplemented ! ( ) } } impl :: std :: cmp :: Eq for DEVMODEA { } unsafe impl :: windows :: Abi for DEVMODEA { type Abi = Self ; type DefaultType = Self ; } # [ derive ( :: std :: clone :: Clone , :: std :: marker :: Copy ) ] # [ repr ( C ) ] pub union DEVMODEA_0 { pub Anonymous1 : DEVMODEA_0_0 , pub Anonymous2 : DEVMODEA_0_1 } impl DEVMODEA_0 { } impl :: std :: default :: Default for DEVMODEA_0 { fn default ( ) -> Self { unsafe { :: std :: mem :: zeroed ( ) } } } impl :: std :: cmp :: PartialEq for DEVMODEA_0 { fn eq ( & self , _other : & Self ) -> bool { unimplemented ! ( ) } } impl :: std :: cmp :: Eq for DEVMODEA_0 { } unsafe impl :: windows :: Abi for DEVMODEA_0 { type Abi = Self ; type DefaultType = Self ; } # [ derive ( :: std :: clone :: Clone , :: std :: marker :: Copy ) ] # [ repr ( C ) ] pub struct DEVMODEA_0_0 { pub dmOrientation : i16 , pub dmPaperSize : i16 , pub dmPaperLength : i16 , pub dmPaperWidth : i16 , pub dmScale : i16 , pub dmCopies : i16 , pub dmDefaultSource : i16 , pub dmPrintQuality : i16 } impl DEVMODEA_0_0 { } impl :: std :: default :: Default for DEVMODEA_0_0 { fn default ( ) -> Self { unsafe { :: std :: mem :: zeroed ( ) } } } impl :: std :: fmt :: Debug for DEVMODEA_0_0 { fn fmt ( & self , fmt : & mut :: std :: fmt :: Formatter < '_ > ) -> :: std :: fmt :: Result { fmt . debug_struct ( "_Anonymous1_e__Struct" ) . field ( "dmOrientation" , & self . dmOrientation ) . field ( "dmPaperSize" , & self . dmPaperSize ) . field ( "dmPaperLength" , & self . dmPaperLength ) . field ( "dmPaperWidth" , & self . dmPaperWidth ) . field ( "dmScale" , & self . dmScale ) . field ( "dmCopies" , & self . dmCopies ) . field ( "dmDefaultSource" , & self . dmDefaultSource ) . field ( "dmPrintQuality" , & self . dmPrintQuality ) . finish ( ) } } impl :: std :: cmp :: PartialEq for DEVMODEA_0_0 { fn eq ( & self , other : & Self ) -> bool { self . dmOrientation == other . dmOrientation && self . dmPaperSize == other . dmPaperSize && self . dmPaperLength == other . dmPaperLength && self . dmPaperWidth == other . dmPaperWidth && self . dmScale == other . dmScale && self . dmCopies == other . dmCopies && self . dmDefaultSource == other . dmDefaultSource && self . dmPrintQuality == other . dmPrintQuality } } impl :: std :: cmp :: Eq for DEVMODEA_0_0 { } unsafe impl :: windows :: Abi for DEVMODEA_0_0 { type Abi = Self ; type DefaultType = Self ; } # [ derive ( :: std :: clone :: Clone , :: std :: marker :: Copy ) ] # [ repr ( C ) ] pub struct DEVMODEA_0_1 { pub dmPosition : super::super::Foundation:: POINTL , pub dmDisplayOrientation : u32 , pub dmDisplayFixedOutput : u32 } impl DEVMODEA_0_1 { } impl :: std :: default :: Default for DEVMODEA_0_1 { fn default ( ) -> Self { unsafe { :: std :: mem :: zeroed ( ) } } } impl :: std :: fmt :: Debug for DEVMODEA_0_1 { fn fmt ( & self , fmt : & mut :: std :: fmt :: Formatter < '_ > ) -> :: std :: fmt :: Result { fmt . debug_struct ( "_Anonymous2_e__Struct" ) . field ( "dmPosition" , & self . dmPosition ) . field ( "dmDisplayOrientation" , & self . dmDisplayOrientation ) . field ( "dmDisplayFixedOutput" , & self . dmDisplayFixedOutput ) . finish ( ) } } impl :: std :: cmp :: PartialEq for DEVMODEA_0_1 { fn eq ( & self , other : & Self ) -> bool { self . dmPosition == other . dmPosition && self . dmDisplayOrientation == other . dmDisplayOrientation && self . dmDisplayFixedOutput == other . dmDisplayFixedOutput } } impl :: std :: cmp :: Eq for DEVMODEA_0_1 { } unsafe impl :: windows :: Abi for DEVMODEA_0_1 { type Abi = Self ; type DefaultType = Self ; } # [ derive ( :: std :: clone :: Clone , :: std :: marker :: Copy ) ] # [ repr ( C ) ] pub union DEVMODEA_1 { pub dmDisplayFlags : u32 , pub dmNup : u32 } impl DEVMODEA_1 { } impl :: std :: default :: Default for DEVMODEA_1 { fn default ( ) -> Self { unsafe { :: std :: mem :: zeroed ( ) } } } impl :: std :: cmp :: PartialEq for DEVMODEA_1 { fn eq ( & self , _other : & Self ) -> bool { unimplemented ! ( ) } } impl :: std :: cmp :: Eq for DEVMODEA_1 { } unsafe impl :: windows :: Abi for DEVMODEA_1 { type Abi = Self ; type DefaultType = Self ; } } } } } [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking screen_orientation v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `bindings::Windows::Win32::Foundation::PSTR` [INFO] [stdout] --> src/main.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use bindings::Windows::Win32::Foundation::PSTR; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `bindings::Windows::Win32::Foundation::PSTR` [INFO] [stdout] --> src/main.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use bindings::Windows::Win32::Foundation::PSTR; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `CHAR: IntoParam<'_, PSTR>` is not satisfied [INFO] [stdout] --> src/main.rs:33:42 [INFO] [stdout] | [INFO] [stdout] 33 | if false != EnumDisplaySettingsA(this_is_char, ENUM_CURRENT_SETTINGS, dm_ptr).as_bool() [INFO] [stdout] | -------------------- ^^^^^^^^^^^^ the trait `IntoParam<'_, PSTR>` is not implemented for `CHAR` [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `IntoParam<'a, T>`: [INFO] [stdout] <&'a Option as IntoParam<'a, T>> [INFO] [stdout] <&'a T as IntoParam<'a, T>> [INFO] [stdout] <&'a windows::bindings::Windows::Foundation::IPropertyValue as IntoParam<'a, IInspectable>> [INFO] [stdout] <&'a windows::bindings::Windows::Foundation::IReference as IntoParam<'a, IInspectable>> [INFO] [stdout] <&'a windows::bindings::Windows::Foundation::IStringable as IntoParam<'a, IInspectable>> [INFO] [stdout] <&IAgileObject as IntoParam<'a, IUnknown>> [INFO] [stdout] <&str as IntoParam<'a, HSTRING>> [INFO] [stdout] <&str as IntoParam<'a, PSTR>> [INFO] [stdout] and 36 others [INFO] [stdout] note: required by a bound in `EnumDisplaySettingsA` [INFO] [stdout] --> /opt/rustwide/target/debug/build/bindings-066fee9a79f92dc3/out/windows.rs:1:8620 [INFO] [stdout] | [INFO] [stdout] 1 | ...me : impl :: windows :: IntoParam < 'a , super::super::Foundation:: PSTR > , imodenum : ENUM_DISPLAY_SETTINGS_MODE , lpdevmode : * mut... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `EnumDisplaySettingsA` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 1 previous error; 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0277`. [INFO] [stdout] [INFO] [stderr] error: could not compile `screen_orientation` (bin "screen_orientation") due to 2 previous errors; 1 warning emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error[E0277]: the trait bound `CHAR: IntoParam<'_, PSTR>` is not satisfied [INFO] [stdout] --> src/main.rs:33:42 [INFO] [stdout] | [INFO] [stdout] 33 | if false != EnumDisplaySettingsA(this_is_char, ENUM_CURRENT_SETTINGS, dm_ptr).as_bool() [INFO] [stdout] | -------------------- ^^^^^^^^^^^^ the trait `IntoParam<'_, PSTR>` is not implemented for `CHAR` [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `IntoParam<'a, T>`: [INFO] [stdout] <&'a Option as IntoParam<'a, T>> [INFO] [stdout] <&'a T as IntoParam<'a, T>> [INFO] [stdout] <&'a windows::bindings::Windows::Foundation::IPropertyValue as IntoParam<'a, IInspectable>> [INFO] [stdout] <&'a windows::bindings::Windows::Foundation::IReference as IntoParam<'a, IInspectable>> [INFO] [stdout] <&'a windows::bindings::Windows::Foundation::IStringable as IntoParam<'a, IInspectable>> [INFO] [stdout] <&IAgileObject as IntoParam<'a, IUnknown>> [INFO] [stdout] <&str as IntoParam<'a, HSTRING>> [INFO] [stdout] <&str as IntoParam<'a, PSTR>> [INFO] [stdout] and 36 others [INFO] [stdout] note: required by a bound in `EnumDisplaySettingsA` [INFO] [stdout] --> /opt/rustwide/target/debug/build/bindings-066fee9a79f92dc3/out/windows.rs:1:8620 [INFO] [stdout] | [INFO] [stdout] 1 | ...me : impl :: windows :: IntoParam < 'a , super::super::Foundation:: PSTR > , imodenum : ENUM_DISPLAY_SETTINGS_MODE , lpdevmode : * mut... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `EnumDisplaySettingsA` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 1 previous error; 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0277`. [INFO] [stdout] [INFO] [stderr] error: could not compile `screen_orientation` (bin "screen_orientation" test) due to 2 previous errors; 1 warning emitted [INFO] running `Command { std: "docker" "inspect" "916f1036785098f114bf8c1b4f24ef7f27b0719e70d27d9e3a6d12282206c429", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "916f1036785098f114bf8c1b4f24ef7f27b0719e70d27d9e3a6d12282206c429", kill_on_drop: false }` [INFO] [stdout] 916f1036785098f114bf8c1b4f24ef7f27b0719e70d27d9e3a6d12282206c429