diff --git a/ci/style.rs b/ci/style.rs index 481f57f74d0bcae34c88b7ef9116280cd0b84d35..70fc0a081437797f67c5fa56a58f5ce8be041169 100644 --- a/ci/style.rs +++ b/ci/style.rs @@ -117,7 +117,7 @@ fn check_style(file: &str, path: &Path, err: &mut Errors) { } else { prev_blank = false; } - if line != line.trim_right() { + if line != line.trim_end() { err.error(path, i, "trailing whitespace"); } if line.contains("\t") { @@ -139,7 +139,7 @@ fn check_style(file: &str, path: &Path, err: &mut Errors) { } } - let line = line.trim_left(); + let line = line.trim_start(); let is_pub = line.starts_with("pub "); let line = if is_pub {&line[4..]} else {line}; diff --git a/libc-test/build.rs b/libc-test/build.rs index 06386f81d26612b4a6ddffbfebc17476aca2a41d..722a513c32fea8574d71982f85d3996cf2490e6c 100644 --- a/libc-test/build.rs +++ b/libc-test/build.rs @@ -2098,6 +2098,12 @@ fn test_linux(target: &str) { // FIXME: musl version using by mips build jobs 1.0.15 is ancient: "ifmap" | "ifreq" | "ifconf" if mips32_musl => true, + // FIXME: remove once Ubuntu 20.04 LTS is released, somewhere in 2020. + // ucontext_t added a new field as of glibc 2.28; our struct definition is + // conservative and omits the field, but that means the size doesn't match for newer + // glibcs (see https://github.com/rust-lang/libc/issues/1410) + "ucontext_t" if gnu => true, + _ => false, } }); diff --git a/src/unix/linux_like/linux/gnu/b64/x86_64/mod.rs b/src/unix/linux_like/linux/gnu/b64/x86_64/mod.rs index 1318713a424b6df60b036d47011ce060a70eb194..f3b10084fdecd89ec9348733e401b5c6279beaa6 100644 --- a/src/unix/linux_like/linux/gnu/b64/x86_64/mod.rs +++ b/src/unix/linux_like/linux/gnu/b64/x86_64/mod.rs @@ -285,7 +285,11 @@ s_no_extra_traits! { pub uc_mcontext: mcontext_t, pub uc_sigmask: ::sigset_t, __private: [u8; 512], - __ssp: [::c_ulonglong; 4], + // FIXME: the shadow stack field requires glibc >= 2.28. + // Re-add once we drop compatibility with glibc versions older than + // 2.28. + // + // __ssp: [::c_ulonglong; 4], } }