Commit 624063b9 authored by Miguel Ojeda's avatar Miguel Ojeda
Browse files

rust: enable Clippy's `check-private-items`

In Rust 1.76.0, Clippy added the `check-private-items` lint configuration
option. When turned on (the default is off), it makes several lints
check private items as well.

In our case, it affects two lints we have enabled [1]:
`missing_safety_doc` and `unnecessary_safety_doc`.

It also seems to affect the new `too_long_first_doc_paragraph` lint [2],
even though the documentation does not mention it.

Thus allow the few instances remaining we currently hit and enable
the lint.

Link: https://doc.rust-lang.org/nightly/clippy/lint_configuration.html#check-private-items [1]
Link: https://rust-lang.github.io/rust-clippy/master/index.html#/too_long_first_doc_paragraph

 [2]
Reviewed-by: default avatarTrevor Gross <tmgross@umich.edu>
Reviewed-by: default avatarAlice Ryhl <aliceryhl@google.com>
Tested-by: default avatarGary Guo <gary@garyguo.net>
Reviewed-by: default avatarGary Guo <gary@garyguo.net>
Link: https://lore.kernel.org/r/20240904204347.168520-16-ojeda@kernel.org


Signed-off-by: default avatarMiguel Ojeda <ojeda@kernel.org>
parent 2f390cc5
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: GPL-2.0

check-private-items = true

disallowed-macros = [
    # The `clippy::dbg_macro` lint only works with `std::dbg!`, thus we simulate
    # it here, see: https://github.com/rust-lang/rust-clippy/issues/11303.
+1 −0
Original line number Diff line number Diff line
@@ -125,6 +125,7 @@
//! use core::{ptr::addr_of_mut, marker::PhantomPinned, pin::Pin};
//! # mod bindings {
//! #     #![allow(non_camel_case_types)]
//! #     #![allow(clippy::missing_safety_doc)]
//! #     pub struct foo;
//! #     pub unsafe fn init_foo(_ptr: *mut foo) {}
//! #     pub unsafe fn destroy_foo(_ptr: *mut foo) {}
+2 −0
Original line number Diff line number Diff line
@@ -54,6 +54,7 @@ unsafe fn __pinned_init(self, slot: *mut T) -> Result<(), E> {
pub unsafe trait HasPinData {
    type PinData: PinData;

    #[allow(clippy::missing_safety_doc)]
    unsafe fn __pin_data() -> Self::PinData;
}

@@ -83,6 +84,7 @@ fn make_closure<F, O, E>(self, f: F) -> F
pub unsafe trait HasInitData {
    type InitData: InitData;

    #[allow(clippy::missing_safety_doc)]
    unsafe fn __init_data() -> Self::InitData;
}

+1 −0
Original line number Diff line number Diff line
@@ -989,6 +989,7 @@ fn drop(&mut self) {
        //
        // The functions are `unsafe` to prevent accidentally calling them.
        #[allow(dead_code)]
        #[allow(clippy::missing_safety_doc)]
        impl<$($impl_generics)*> $pin_data<$($ty_generics)*>
        where $($whr)*
        {
+1 −0
Original line number Diff line number Diff line
@@ -14,6 +14,7 @@
use crate::str::RawFormatter;

// Called from `vsprintf` with format specifier `%pA`.
#[allow(clippy::missing_safety_doc)]
#[no_mangle]
unsafe extern "C" fn rust_fmt_argument(
    buf: *mut c_char,