]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
rust: pin-init: allow the crate to refer to itself as `pin-init` in doc tests
authorBenno Lossin <lossin@kernel.org>
Fri, 16 Jan 2026 10:54:17 +0000 (11:54 +0100)
committerBenno Lossin <lossin@kernel.org>
Sat, 17 Jan 2026 09:49:31 +0000 (10:49 +0100)
The `syn` approach requires use of `::pin_init::...` instead of the
`$crate::...` construct available to declarative macros. To be able to
use the `pin_init` crate from itself (which includes doc tests), we have
to declare it as such.

Reviewed-by: Gary Guo <gary@garyguo.net>
Tested-by: Andreas Hindborg <a.hindborg@kernel.org>
Signed-off-by: Benno Lossin <lossin@kernel.org>
rust/pin-init/src/lib.rs

index 8673008f45d26a330f7ca82fceaee43b29d6560e..0e707f00061f1f11e0c5a5ea442ca7078e0cd885 100644 (file)
@@ -290,6 +290,11 @@ use core::{
     ptr::{self, NonNull},
 };
 
+// This is used by doc-tests -- the proc-macros expand to `::pin_init::...` and without this the
+// doc-tests wouldn't have an extern crate named `pin_init`.
+#[allow(unused_extern_crates)]
+extern crate self as pin_init;
+
 #[doc(hidden)]
 pub mod __internal;
 #[doc(hidden)]