warning: the following packages contain code that will be rejected by a future version of Rust: multiboot v0.7.0
note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2`
$ cargo report future-incompatibilities --id 2
The following warnings were discovered during the build. These warnings are an
indication that the packages contain code that will become an error in a
future release of Rust. These warnings typically cover changes to close
soundness problems, unintended or undocumented behavior, or critical problems
that cannot be fixed in a backwards-compatible fashion, and are not expected
to be in wide use.
Each warning should contain a link for more information on what the warning
means and how to resolve it.
To solve this problem, you can try the following approaches:
- If the issue is not solved by updating the dependencies, a fix has to be
implemented by those dependencies. You can help with that by notifying the
maintainers of this problem (e.g. by creating a bug report) or by proposing a
fix to the maintainers (e.g. by creating a pull request):
- multiboot:0.7.0
- Repository: https://github.com/gz/rust-multiboot
- Detailed warning command: `cargo report future-incompatibilities --id 2 --package multiboot:0.7.0`
- If waiting for an upstream fix is not an option, you can use the `[patch]`
section in `Cargo.toml` to use your own version of the dependency. For more
information, see:
https://doc.rust-lang.org/cargo/reference/overriding-dependencies.html#the-patch-section
The package `multiboot v0.7.0` currently triggers the following future incompatibility lints:
> warning: reference to packed field is unaligned
> --> /home/mkroening/.cargo/registry/src/github.com-1ecc6299db9ec823/multiboot-0.7.0/src/information.rs:676:17
> |
> 676 | self.size, self.base_addr, self.length, self.mtype
> | ^^^^^^^^^
> |
> = note: `#[allow(unaligned_references)]` on by default
> = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
> = note: for more information, see issue #82523 <https://github.com/rust-lang/rust/issues/82523>
> = note: fields of packed structs are not properly aligned, and creating a misaligned reference is undefined behavior (even if that reference is never dereferenced)
> = help: copy the field contents to a local variable, or replace the reference with a raw pointer and use `read_unaligned`/`write_unaligned` (loads and stores via `*p` must be properly aligned even when using raw pointers)
> = note: this warning originates in the macro `$crate::format_args` (in Nightly builds, run with -Z macro-backtrace for more info)
>
> warning: reference to packed field is unaligned
> --> /home/mkroening/.cargo/registry/src/github.com-1ecc6299db9ec823/multiboot-0.7.0/src/information.rs:676:28
> |
> 676 | self.size, self.base_addr, self.length, self.mtype
> | ^^^^^^^^^^^^^^
> |
> = note: `#[allow(unaligned_references)]` on by default
> = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
> = note: for more information, see issue #82523 <https://github.com/rust-lang/rust/issues/82523>
> = note: fields of packed structs are not properly aligned, and creating a misaligned reference is undefined behavior (even if that reference is never dereferenced)
> = help: copy the field contents to a local variable, or replace the reference with a raw pointer and use `read_unaligned`/`write_unaligned` (loads and stores via `*p` must be properly aligned even when using raw pointers)
> = note: this warning originates in the macro `$crate::format_args` (in Nightly builds, run with -Z macro-backtrace for more info)
>
> warning: reference to packed field is unaligned
> --> /home/mkroening/.cargo/registry/src/github.com-1ecc6299db9ec823/multiboot-0.7.0/src/information.rs:676:44
> |
> 676 | self.size, self.base_addr, self.length, self.mtype
> | ^^^^^^^^^^^
> |
> = note: `#[allow(unaligned_references)]` on by default
> = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
> = note: for more information, see issue #82523 <https://github.com/rust-lang/rust/issues/82523>
> = note: fields of packed structs are not properly aligned, and creating a misaligned reference is undefined behavior (even if that reference is never dereferenced)
> = help: copy the field contents to a local variable, or replace the reference with a raw pointer and use `read_unaligned`/`write_unaligned` (loads and stores via `*p` must be properly aligned even when using raw pointers)
> = note: this warning originates in the macro `$crate::format_args` (in Nightly builds, run with -Z macro-backtrace for more info)
>
> warning: reference to packed field is unaligned
> --> /home/mkroening/.cargo/registry/src/github.com-1ecc6299db9ec823/multiboot-0.7.0/src/information.rs:676:57
> |
> 676 | self.size, self.base_addr, self.length, self.mtype
> | ^^^^^^^^^^
> |
> = note: `#[allow(unaligned_references)]` on by default
> = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
> = note: for more information, see issue #82523 <https://github.com/rust-lang/rust/issues/82523>
> = note: fields of packed structs are not properly aligned, and creating a misaligned reference is undefined behavior (even if that reference is never dereferenced)
> = help: copy the field contents to a local variable, or replace the reference with a raw pointer and use `read_unaligned`/`write_unaligned` (loads and stores via `*p` must be properly aligned even when using raw pointers)
> = note: this warning originates in the macro `$crate::format_args` (in Nightly builds, run with -Z macro-backtrace for more info)
>
The issues seem to be fixed already and just need to be released. :)