You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
error[E0277]: cannot multiply `u64` by `NonZeroU8`
--> /home/john/.cargo/registry/src/index.crates.io-6f17d22bba15001f/mp4parse-0.12.0/src/lib.rs:2547:62
|
2547 | static_assertions::const_assert!(<$lhs>::MAX * <$rhs>::MAX <= <$output>::MAX);
| ^ no implementation for `u64 * NonZeroU8`
...
2557 | impl_mul!((U8, std::num::NonZeroU8) => (U16, u16));
| -------------------------------------------------- in this macro invocation
|
= help: the trait `Mul<NonZeroU8>` is not implemented for `u64`
= help: the following other types implement trait `Mul<Rhs>`:
<&'a u64 as Mul<u64>>
<&u64 as Mul<&u64>>
<u64 as Mul<&u64>>
<u64 as Mul>
= note: this error originates in the macro `impl_mul` (in Nightly builds, run with -Z macro-backtrace for more info)
note: erroneous constant used
--> /home/john/.cargo/registry/src/index.crates.io-6f17d22bba15001f/mp4parse-0.12.0/src/lib.rs:2557:1
|
2557 | impl_mul!((U8, std::num::NonZeroU8) => (U16, u16));
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: this note originates in the macro `static_assertions::const_assert` which comes from the expansion of the macro `impl_mul` (in Nightly builds, run with -Z macro-backtrace for more info)
error[E0277]: cannot multiply `u64` by `NonZeroU8`
--> /home/john/.cargo/registry/src/index.crates.io-6f17d22bba15001f/mp4parse-0.12.0/src/lib.rs:2547:62
|
2547 | static_assertions::const_assert!(<$lhs>::MAX * <$rhs>::MAX <= <$output>::MAX);
| ^ no implementation for `u64 * NonZeroU8`
...
2558 | impl_mul!((U32, std::num::NonZeroU8) => (U32MulU8, u64));
| -------------------------------------------------------- in this macro invocation
|
= help: the trait `Mul<NonZeroU8>` is not implemented for `u64`
= help: the following other types implement trait `Mul<Rhs>`:
<&'a u64 as Mul<u64>>
<&u64 as Mul<&u64>>
<u64 as Mul<&u64>>
<u64 as Mul>
= note: this error originates in the macro `impl_mul` (in Nightly builds, run with -Z macro-backtrace for more info)
note: erroneous constant used
--> /home/john/.cargo/registry/src/index.crates.io-6f17d22bba15001f/mp4parse-0.12.0/src/lib.rs:2558:1
|
2558 | impl_mul!((U32, std::num::NonZeroU8) => (U32MulU8, u64));
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: this note originates in the macro `static_assertions::const_assert` which comes from the expansion of the macro `impl_mul` (in Nightly builds, run with -Z macro-backtrace for more info)
Update: Some Cargo.toml hacking on my end fixed this. For nightly users, it'd be nice if a new release could be cut. It looks like it should ameliorate this.
The crates.io version doesn't compile on beta and will also break on stable once rustc 1.70 is released.
The underlying rustc change seems to be rust-lang/rust#89065. It should be fixed by the patch in #376, but no version of mp4parse has been published to crates.io since that was merged.
Description
Update: Some
Cargo.toml
hacking on my end fixed this. Fornightly
users, it'd be nice if a new release could be cut. It looks like it should ameliorate this.For future readers: I had to add
and
to my
Cargo.toml
as an explicit dependency (this crate is only a transitive (grandchild) dependency for my project). Then, I had to patch this repo:The text was updated successfully, but these errors were encountered: