[INFO] cloning repository https://github.com/so-rose/hopsim
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/so-rose/hopsim" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fso-rose%2Fhopsim", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fso-rose%2Fhopsim'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 07fcbb6020dee80d785575f4dc529b859e3b5314
[INFO] checking so-rose/hopsim against 52995a223f2919dd3e2e427231db90a257350ded for pr-129249-4
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fso-rose%2Fhopsim" "/workspace/builds/worker-3-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/so-rose/hopsim
[INFO] finished tweaking git repo https://github.com/so-rose/hopsim
[INFO] tweaked toml for git repo https://github.com/so-rose/hopsim written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/so-rose/hopsim on toolchain 52995a223f2919dd3e2e427231db90a257350ded
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+52995a223f2919dd3e2e427231db90a257350ded" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/so-rose/hopsim already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+52995a223f2919dd3e2e427231db90a257350ded" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: unused workspace dependency `bytes`
[INFO] [stderr]   --> Cargo.toml:17:25
[INFO] [stderr]    |
[INFO] [stderr] 17 | [workspace.dependencies.bytes]
[INFO] [stderr]    |                         ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::unused_workspace_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the workspace dependency `bytes`
[INFO] [stderr] warning: unused workspace dependency `hopsim`
[INFO] [stderr]   --> Cargo.toml:43:25
[INFO] [stderr]    |
[INFO] [stderr] 43 | [workspace.dependencies.hopsim]
[INFO] [stderr]    |                         ^^^^^^
[INFO] [stderr]    |
[INFO] [stderr] help: consider removing the workspace dependency `hopsim`
[INFO] [stderr] warning: unused workspace dependency `minigrid`
[INFO] [stderr]   --> Cargo.toml:83:25
[INFO] [stderr]    |
[INFO] [stderr] 83 | [workspace.dependencies.minigrid]
[INFO] [stderr]    |                         ^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr] help: consider removing the workspace dependency `minigrid`
[INFO] [stderr] warning: unused workspace dependency `ndarray`
[INFO] [stderr]   --> Cargo.toml:87:25
[INFO] [stderr]    |
[INFO] [stderr] 87 | [workspace.dependencies.ndarray]
[INFO] [stderr]    |                         ^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr] help: consider removing the workspace dependency `ndarray`
[INFO] [stderr] warning: unused workspace dependency `parking_lot`
[INFO] [stderr]    --> Cargo.toml:106:25
[INFO] [stderr]     |
[INFO] [stderr] 106 | [workspace.dependencies.parking_lot]
[INFO] [stderr]     |                         ^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr] help: consider removing the workspace dependency `parking_lot`
[INFO] [stderr] warning: unused workspace dependency `portable-atomic`
[INFO] [stderr]    --> Cargo.toml:114:25
[INFO] [stderr]     |
[INFO] [stderr] 114 | [workspace.dependencies.portable-atomic]
[INFO] [stderr]     |                         ^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr] help: consider removing the workspace dependency `portable-atomic`
[INFO] [stderr] warning: unused workspace dependency `pyo3`
[INFO] [stderr]    --> Cargo.toml:118:25
[INFO] [stderr]     |
[INFO] [stderr] 118 | [workspace.dependencies.pyo3]
[INFO] [stderr]     |                         ^^^^
[INFO] [stderr]     |
[INFO] [stderr] help: consider removing the workspace dependency `pyo3`
[INFO] [stderr] warning: unused workspace dependency `rayon`
[INFO] [stderr]    --> Cargo.toml:122:25
[INFO] [stderr]     |
[INFO] [stderr] 122 | [workspace.dependencies.rayon]
[INFO] [stderr]     |                         ^^^^^
[INFO] [stderr]     |
[INFO] [stderr] help: consider removing the workspace dependency `rayon`
[INFO] [stderr] warning: unused field `homepage` in `workspace.package`
[INFO] [stderr]    --> Cargo.toml:177:1
[INFO] [stderr]     |
[INFO] [stderr] 177 | homepage = "https://git.sofus.io/so-rose/hopsim"
[INFO] [stderr]     | ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `cargo::unused_workspace_package_fields` is set to `warn` by default
[INFO] [stderr] help: consider removing the field `workspace.package.homepage`
[INFO] [stderr] warning: workspace (manifest) generated 9 warnings
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 6c913d7eaeb24cdd4141dffa9bb84840772d428f2fd4589f34e860b7d72b2af3
[INFO] running `Command { std: "docker" "start" "6c913d7eaeb24cdd4141dffa9bb84840772d428f2fd4589f34e860b7d72b2af3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "6c913d7eaeb24cdd4141dffa9bb84840772d428f2fd4589f34e860b7d72b2af3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "6c913d7eaeb24cdd4141dffa9bb84840772d428f2fd4589f34e860b7d72b2af3" "/opt/rustwide/cargo-home/bin/cargo" "+52995a223f2919dd3e2e427231db90a257350ded" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "6c913d7eaeb24cdd4141dffa9bb84840772d428f2fd4589f34e860b7d72b2af3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "6c913d7eaeb24cdd4141dffa9bb84840772d428f2fd4589f34e860b7d72b2af3" "/opt/rustwide/cargo-home/bin/cargo" "+52995a223f2919dd3e2e427231db90a257350ded" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: unused workspace dependency `bytes`
[INFO] [stderr]   --> Cargo.toml:17:25
[INFO] [stderr]    |
[INFO] [stderr] 17 | [workspace.dependencies.bytes]
[INFO] [stderr]    |                         ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::unused_workspace_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the workspace dependency `bytes`
[INFO] [stderr] warning: unused workspace dependency `hopsim`
[INFO] [stderr]   --> Cargo.toml:43:25
[INFO] [stderr]    |
[INFO] [stderr] 43 | [workspace.dependencies.hopsim]
[INFO] [stderr]    |                         ^^^^^^
[INFO] [stderr]    |
[INFO] [stderr] help: consider removing the workspace dependency `hopsim`
[INFO] [stderr] warning: unused workspace dependency `minigrid`
[INFO] [stderr]   --> Cargo.toml:83:25
[INFO] [stderr]    |
[INFO] [stderr] 83 | [workspace.dependencies.minigrid]
[INFO] [stderr]    |                         ^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr] help: consider removing the workspace dependency `minigrid`
[INFO] [stderr] warning: unused workspace dependency `ndarray`
[INFO] [stderr]   --> Cargo.toml:87:25
[INFO] [stderr]    |
[INFO] [stderr] 87 | [workspace.dependencies.ndarray]
[INFO] [stderr]    |                         ^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr] help: consider removing the workspace dependency `ndarray`
[INFO] [stderr] warning: unused workspace dependency `parking_lot`
[INFO] [stderr]    --> Cargo.toml:106:25
[INFO] [stderr]     |
[INFO] [stderr] 106 | [workspace.dependencies.parking_lot]
[INFO] [stderr]     |                         ^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr] help: consider removing the workspace dependency `parking_lot`
[INFO] [stderr] warning: unused workspace dependency `portable-atomic`
[INFO] [stderr]    --> Cargo.toml:114:25
[INFO] [stderr]     |
[INFO] [stderr] 114 | [workspace.dependencies.portable-atomic]
[INFO] [stderr]     |                         ^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr] help: consider removing the workspace dependency `portable-atomic`
[INFO] [stderr] warning: unused workspace dependency `pyo3`
[INFO] [stderr]    --> Cargo.toml:118:25
[INFO] [stderr]     |
[INFO] [stderr] 118 | [workspace.dependencies.pyo3]
[INFO] [stderr]     |                         ^^^^
[INFO] [stderr]     |
[INFO] [stderr] help: consider removing the workspace dependency `pyo3`
[INFO] [stderr] warning: unused workspace dependency `rayon`
[INFO] [stderr]    --> Cargo.toml:122:25
[INFO] [stderr]     |
[INFO] [stderr] 122 | [workspace.dependencies.rayon]
[INFO] [stderr]     |                         ^^^^^
[INFO] [stderr]     |
[INFO] [stderr] help: consider removing the workspace dependency `rayon`
[INFO] [stderr] warning: unused field `homepage` in `workspace.package`
[INFO] [stderr]    --> Cargo.toml:177:1
[INFO] [stderr]     |
[INFO] [stderr] 177 | homepage = "https://git.sofus.io/so-rose/hopsim"
[INFO] [stderr]     | ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `cargo::unused_workspace_package_fields` is set to `warn` by default
[INFO] [stderr] help: consider removing the field `workspace.package.homepage`
[INFO] [stderr] warning: workspace (manifest) generated 9 warnings
[INFO] [stderr]    Compiling quote v1.0.46
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling memchr v2.8.3
[INFO] [stderr]    Compiling regex-syntax v0.8.11
[INFO] [stderr]     Checking smallvec v1.15.2
[INFO] [stderr]    Compiling cc v1.2.67
[INFO] [stderr]    Compiling libloading v0.8.9
[INFO] [stderr]    Compiling winnow v1.0.4
[INFO] [stderr]    Compiling matrixmultiply v0.3.11
[INFO] [stderr]    Compiling toml_datetime v1.1.1+spec-1.1.0
[INFO] [stderr]    Compiling hdf5-metno-types v0.11.1
[INFO] [stderr]     Checking num-complex v0.4.6
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]     Checking mio v1.2.2
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]     Checking ascii v1.1.0
[INFO] [stderr]    Compiling hdf5-metno v0.13.0
[INFO] [stderr]     Checking allocator-api2 v0.4.0
[INFO] [stderr]     Checking tracing-log v0.2.0
[INFO] [stderr]     Checking rayon v1.12.0
[INFO] [stderr]     Checking console v0.16.4
[INFO] [stderr]     Checking unit-prefix v0.5.2
[INFO] [stderr]     Checking indexmap v2.14.0
[INFO] [stderr]    Compiling syn v2.0.119
[INFO] [stderr]     Checking serde_spanned v1.1.1
[INFO] [stderr]     Checking encoding_rs v0.8.35
[INFO] [stderr]     Checking toml_parser v1.1.2+spec-1.1.0
[INFO] [stderr]     Checking approx v0.5.1
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]     Checking ndarray v0.17.2
[INFO] [stderr]    Compiling cmake v0.1.58
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]     Checking tokio v1.52.3
[INFO] [stderr]     Checking toml v1.1.3+spec-1.1.0
[INFO] [stderr]    Compiling hdf5-metno-src v0.10.2
[INFO] [stderr]     Checking terminal_size v0.4.4
[INFO] [stderr]     Checking clap_builder v4.6.2
[INFO] [stderr]    Compiling regex-automata v0.4.16
[INFO] [stderr]    Compiling toml_edit v0.25.13+spec-1.1.0
[INFO] [stderr]    Compiling proc-macro-crate v3.5.0
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling strum_macros v0.28.0
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling subenum v1.2.0
[INFO] [stderr]    Compiling hdf5-metno-derive v0.10.1
[INFO] [stderr]    Compiling clap_derive v4.6.3
[INFO] [stderr]    Compiling pin-project-internal v1.1.13
[INFO] [stderr]     Checking tokio-util v0.7.18
[INFO] [stderr]     Checking tokio-stream v0.1.18
[INFO] [stderr]    Compiling regex v1.13.1
[INFO] [stderr]     Checking pin-project v1.1.13
[INFO] [stderr]     Checking thingbuf v0.1.6
[INFO] [stderr]    Compiling hdf5-metno-sys v0.12.0
[INFO] [stderr]    Compiling physical_constants v0.5.0
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]     Checking hopsim-fdtd-naive v0.1.0 (/opt/rustwide/workdir/pkgs/hopsim-fdtd-naive)
[INFO] [stderr]     Checking hopsim-fdtd-cpu v0.1.0 (/opt/rustwide/workdir/pkgs/hopsim-fdtd-cpu)
[INFO] [stderr]     Checking hopsim-simdata v0.1.0 (/opt/rustwide/workdir/pkgs/hopsim-simdata)
[INFO] [stderr]     Checking hopsim-fdtd-cuda v0.1.0 (/opt/rustwide/workdir/pkgs/hopsim-fdtd-cuda)
[INFO] [stderr]     Checking hopsim-fdtd v0.1.0 (/opt/rustwide/workdir/pkgs/hopsim-fdtd)
[INFO] [stderr]     Checking minigrid v0.1.0 (/opt/rustwide/workdir/pkgs/minigrid)
[INFO] [stderr]     Checking strum v0.28.0
[INFO] [stderr]     Checking clap v4.6.3
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking compact_str v0.10.0
[INFO] [stderr]     Checking arrayvec v0.7.8
[INFO] [stderr]     Checking tracing-serde v0.2.0
[INFO] [stderr]     Checking patharg v0.4.1
[INFO] [stderr]     Checking clap-verbosity-flag v3.0.4
[INFO] [stderr]     Checking vte v0.15.0
[INFO] [stderr]     Checking tracing-subscriber v0.3.23
[INFO] [stderr]     Checking num-format v0.4.4
[INFO] [stderr]     Checking vt100 v0.16.2
[INFO] [stderr]     Checking miniexpr v0.1.0 (/opt/rustwide/workdir/pkgs/miniexpr)
[INFO] [stderr]     Checking indicatif v0.18.6
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:269:34
[INFO] [stdout]     |
[INFO] [stdout] 253 |   macro_rules! impl_binary_op_with_expr {
[INFO] [stdout] ...
[INFO] [stdout] 269 |                   self.try_binary_op_with_expr($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                                ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 275 | / impl_binary_op_with_expr!(
[INFO] [stdout] 276 | |     core::ops::Add<Expr<T, AR>>,
[INFO] [stdout] 277 | |     core::ops::Add,
[INFO] [stdout] 278 | |     add,
[INFO] [stdout] 279 | |     BinaryOp::Add
[INFO] [stdout] 280 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout]     = note: `#[deny(self_type_conversion)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:269:34
[INFO] [stdout]     |
[INFO] [stdout] 253 |   macro_rules! impl_binary_op_with_expr {
[INFO] [stdout] ...
[INFO] [stdout] 269 |                   self.try_binary_op_with_expr($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                                ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 281 | / impl_binary_op_with_expr!(
[INFO] [stdout] 282 | |     core::ops::Sub<Expr<T, AR>>,
[INFO] [stdout] 283 | |     core::ops::Sub,
[INFO] [stdout] 284 | |     sub,
[INFO] [stdout] 285 | |     BinaryOp::Sub
[INFO] [stdout] 286 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:269:34
[INFO] [stdout]     |
[INFO] [stdout] 253 |   macro_rules! impl_binary_op_with_expr {
[INFO] [stdout] ...
[INFO] [stdout] 269 |                   self.try_binary_op_with_expr($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                                ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 287 | / impl_binary_op_with_expr!(
[INFO] [stdout] 288 | |     core::ops::Mul<Expr<T, AR>>,
[INFO] [stdout] 289 | |     core::ops::Mul,
[INFO] [stdout] 290 | |     mul,
[INFO] [stdout] 291 | |     BinaryOp::Mul
[INFO] [stdout] 292 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:269:34
[INFO] [stdout]     |
[INFO] [stdout] 253 |   macro_rules! impl_binary_op_with_expr {
[INFO] [stdout] ...
[INFO] [stdout] 269 |                   self.try_binary_op_with_expr($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                                ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 293 | / impl_binary_op_with_expr!(
[INFO] [stdout] 294 | |     core::ops::Div<Expr<T, AR>>,
[INFO] [stdout] 295 | |     core::ops::Div,
[INFO] [stdout] 296 | |     div,
[INFO] [stdout] 297 | |     BinaryOp::Div
[INFO] [stdout] 298 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:269:34
[INFO] [stdout]     |
[INFO] [stdout] 253 |   macro_rules! impl_binary_op_with_expr {
[INFO] [stdout] ...
[INFO] [stdout] 269 |                   self.try_binary_op_with_expr($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                                ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 299 | / impl_binary_op_with_expr!(
[INFO] [stdout] 300 | |     core::ops::Rem<Expr<T, AR>>,
[INFO] [stdout] 301 | |     core::ops::Rem,
[INFO] [stdout] 302 | |     rem,
[INFO] [stdout] 303 | |     BinaryOp::Rem
[INFO] [stdout] 304 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:269:34
[INFO] [stdout]     |
[INFO] [stdout] 253 | macro_rules! impl_binary_op_with_expr {
[INFO] [stdout] ...
[INFO] [stdout] 269 |                 self.try_binary_op_with_expr($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                              ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 305 | impl_binary_op_with_expr!(Pow<Expr<T, AR>>, Pow, pow, BinaryOp::Pow);
[INFO] [stdout]     | -------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:269:34
[INFO] [stdout]     |
[INFO] [stdout] 253 | macro_rules! impl_binary_op_with_expr {
[INFO] [stdout] ...
[INFO] [stdout] 269 |                 self.try_binary_op_with_expr($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                              ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 306 | impl_binary_op_with_expr!(Min<Expr<T, AR>>, Min, min, BinaryOp::Min);
[INFO] [stdout]     | -------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:269:34
[INFO] [stdout]     |
[INFO] [stdout] 253 | macro_rules! impl_binary_op_with_expr {
[INFO] [stdout] ...
[INFO] [stdout] 269 |                 self.try_binary_op_with_expr($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                              ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 307 | impl_binary_op_with_expr!(Max<Expr<T, AR>>, Max, max, BinaryOp::Max);
[INFO] [stdout]     | -------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:269:34
[INFO] [stdout]     |
[INFO] [stdout] 253 | macro_rules! impl_binary_op_with_expr {
[INFO] [stdout] ...
[INFO] [stdout] 269 |                 self.try_binary_op_with_expr($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                              ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 308 | impl_binary_op_with_expr!(Dot<Expr<T, AR>>, Dot, dot, BinaryOp::Dot);
[INFO] [stdout]     | -------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:330:35
[INFO] [stdout]     |
[INFO] [stdout] 315 |   macro_rules! impl_binary_op_with_value {
[INFO] [stdout] ...
[INFO] [stdout] 330 |                   self.try_binary_op_with_value($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                                 ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 336 | / impl_binary_op_with_value!(
[INFO] [stdout] 337 | |     core::ops::Add<T>,
[INFO] [stdout] 338 | |     core::ops::Add,
[INFO] [stdout] 339 | |     add,
[INFO] [stdout] 340 | |     BinaryOp::Add
[INFO] [stdout] 341 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:330:35
[INFO] [stdout]     |
[INFO] [stdout] 315 |   macro_rules! impl_binary_op_with_value {
[INFO] [stdout] ...
[INFO] [stdout] 330 |                   self.try_binary_op_with_value($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                                 ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 342 | / impl_binary_op_with_value!(
[INFO] [stdout] 343 | |     core::ops::Sub<T>,
[INFO] [stdout] 344 | |     core::ops::Sub,
[INFO] [stdout] 345 | |     sub,
[INFO] [stdout] 346 | |     BinaryOp::Sub
[INFO] [stdout] 347 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:330:35
[INFO] [stdout]     |
[INFO] [stdout] 315 |   macro_rules! impl_binary_op_with_value {
[INFO] [stdout] ...
[INFO] [stdout] 330 |                   self.try_binary_op_with_value($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                                 ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 348 | / impl_binary_op_with_value!(
[INFO] [stdout] 349 | |     core::ops::Mul<T>,
[INFO] [stdout] 350 | |     core::ops::Mul,
[INFO] [stdout] 351 | |     mul,
[INFO] [stdout] 352 | |     BinaryOp::Mul
[INFO] [stdout] 353 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:330:35
[INFO] [stdout]     |
[INFO] [stdout] 315 |   macro_rules! impl_binary_op_with_value {
[INFO] [stdout] ...
[INFO] [stdout] 330 |                   self.try_binary_op_with_value($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                                 ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 354 | / impl_binary_op_with_value!(
[INFO] [stdout] 355 | |     core::ops::Div<T>,
[INFO] [stdout] 356 | |     core::ops::Div,
[INFO] [stdout] 357 | |     div,
[INFO] [stdout] 358 | |     BinaryOp::Div
[INFO] [stdout] 359 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:330:35
[INFO] [stdout]     |
[INFO] [stdout] 315 |   macro_rules! impl_binary_op_with_value {
[INFO] [stdout] ...
[INFO] [stdout] 330 |                   self.try_binary_op_with_value($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                                 ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 360 | / impl_binary_op_with_value!(
[INFO] [stdout] 361 | |     core::ops::Rem<T>,
[INFO] [stdout] 362 | |     core::ops::Rem,
[INFO] [stdout] 363 | |     rem,
[INFO] [stdout] 364 | |     BinaryOp::Rem
[INFO] [stdout] 365 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:330:35
[INFO] [stdout]     |
[INFO] [stdout] 315 | macro_rules! impl_binary_op_with_value {
[INFO] [stdout] ...
[INFO] [stdout] 330 |                 self.try_binary_op_with_value($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                               ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 366 | impl_binary_op_with_value!(Pow<T>, Pow, pow, BinaryOp::Pow);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:330:35
[INFO] [stdout]     |
[INFO] [stdout] 315 | macro_rules! impl_binary_op_with_value {
[INFO] [stdout] ...
[INFO] [stdout] 330 |                 self.try_binary_op_with_value($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                               ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 367 | impl_binary_op_with_value!(Min<T>, Min, min, BinaryOp::Min);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:330:35
[INFO] [stdout]     |
[INFO] [stdout] 315 | macro_rules! impl_binary_op_with_value {
[INFO] [stdout] ...
[INFO] [stdout] 330 |                 self.try_binary_op_with_value($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                               ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 368 | impl_binary_op_with_value!(Max<T>, Max, max, BinaryOp::Max);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:330:35
[INFO] [stdout]     |
[INFO] [stdout] 315 | macro_rules! impl_binary_op_with_value {
[INFO] [stdout] ...
[INFO] [stdout] 330 |                 self.try_binary_op_with_value($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                               ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 369 | impl_binary_op_with_value!(Dot<T>, Dot, dot, BinaryOp::Dot);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:392:38
[INFO] [stdout]     |
[INFO] [stdout] 376 |   macro_rules! impl_binary_op_with_constant {
[INFO] [stdout] ...
[INFO] [stdout] 392 |                   self.try_binary_op_with_constant($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                                    ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 398 | / impl_binary_op_with_constant!(
[INFO] [stdout] 399 | |     core::ops::Add<Constant>,
[INFO] [stdout] 400 | |     core::ops::Add,
[INFO] [stdout] 401 | |     add,
[INFO] [stdout] 402 | |     BinaryOp::Add
[INFO] [stdout] 403 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:392:38
[INFO] [stdout]     |
[INFO] [stdout] 376 |   macro_rules! impl_binary_op_with_constant {
[INFO] [stdout] ...
[INFO] [stdout] 392 |                   self.try_binary_op_with_constant($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                                    ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 404 | / impl_binary_op_with_constant!(
[INFO] [stdout] 405 | |     core::ops::Sub<Constant>,
[INFO] [stdout] 406 | |     core::ops::Sub,
[INFO] [stdout] 407 | |     sub,
[INFO] [stdout] 408 | |     BinaryOp::Sub
[INFO] [stdout] 409 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:392:38
[INFO] [stdout]     |
[INFO] [stdout] 376 |   macro_rules! impl_binary_op_with_constant {
[INFO] [stdout] ...
[INFO] [stdout] 392 |                   self.try_binary_op_with_constant($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                                    ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 410 | / impl_binary_op_with_constant!(
[INFO] [stdout] 411 | |     core::ops::Mul<Constant>,
[INFO] [stdout] 412 | |     core::ops::Mul,
[INFO] [stdout] 413 | |     mul,
[INFO] [stdout] 414 | |     BinaryOp::Mul
[INFO] [stdout] 415 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:392:38
[INFO] [stdout]     |
[INFO] [stdout] 376 |   macro_rules! impl_binary_op_with_constant {
[INFO] [stdout] ...
[INFO] [stdout] 392 |                   self.try_binary_op_with_constant($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                                    ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 416 | / impl_binary_op_with_constant!(
[INFO] [stdout] 417 | |     core::ops::Div<Constant>,
[INFO] [stdout] 418 | |     core::ops::Div,
[INFO] [stdout] 419 | |     div,
[INFO] [stdout] 420 | |     BinaryOp::Div
[INFO] [stdout] 421 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:392:38
[INFO] [stdout]     |
[INFO] [stdout] 376 |   macro_rules! impl_binary_op_with_constant {
[INFO] [stdout] ...
[INFO] [stdout] 392 |                   self.try_binary_op_with_constant($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                                    ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 422 | / impl_binary_op_with_constant!(
[INFO] [stdout] 423 | |     core::ops::Rem<Constant>,
[INFO] [stdout] 424 | |     core::ops::Rem,
[INFO] [stdout] 425 | |     rem,
[INFO] [stdout] 426 | |     BinaryOp::Rem
[INFO] [stdout] 427 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:392:38
[INFO] [stdout]     |
[INFO] [stdout] 376 | macro_rules! impl_binary_op_with_constant {
[INFO] [stdout] ...
[INFO] [stdout] 392 |                 self.try_binary_op_with_constant($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                                  ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 428 | impl_binary_op_with_constant!(Pow<Constant>, Pow, pow, BinaryOp::Pow);
[INFO] [stdout]     | --------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:392:38
[INFO] [stdout]     |
[INFO] [stdout] 376 | macro_rules! impl_binary_op_with_constant {
[INFO] [stdout] ...
[INFO] [stdout] 392 |                 self.try_binary_op_with_constant($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                                  ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 429 | impl_binary_op_with_constant!(Min<Constant>, Min, min, BinaryOp::Min);
[INFO] [stdout]     | --------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:392:38
[INFO] [stdout]     |
[INFO] [stdout] 376 | macro_rules! impl_binary_op_with_constant {
[INFO] [stdout] ...
[INFO] [stdout] 392 |                 self.try_binary_op_with_constant($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                                  ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 430 | impl_binary_op_with_constant!(Max<Constant>, Max, max, BinaryOp::Max);
[INFO] [stdout]     | --------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:392:38
[INFO] [stdout]     |
[INFO] [stdout] 376 | macro_rules! impl_binary_op_with_constant {
[INFO] [stdout] ...
[INFO] [stdout] 392 |                 self.try_binary_op_with_constant($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                                  ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 431 | impl_binary_op_with_constant!(Dot<Constant>, Dot, dot, BinaryOp::Dot);
[INFO] [stdout]     | --------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:454:33
[INFO] [stdout]     |
[INFO] [stdout] 438 |   macro_rules! impl_binary_op_with_arg {
[INFO] [stdout] ...
[INFO] [stdout] 454 |                   self.try_binary_op_with_arg($op.into()).unwrap()
[INFO] [stdout]     |                                               ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 460 | / impl_binary_op_with_arg!(
[INFO] [stdout] 461 | |     core::ops::Add<Arg>,
[INFO] [stdout] 462 | |     core::ops::Add,
[INFO] [stdout] 463 | |     add,
[INFO] [stdout] 464 | |     BinaryOp::Add
[INFO] [stdout] 465 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:454:33
[INFO] [stdout]     |
[INFO] [stdout] 438 |   macro_rules! impl_binary_op_with_arg {
[INFO] [stdout] ...
[INFO] [stdout] 454 |                   self.try_binary_op_with_arg($op.into()).unwrap()
[INFO] [stdout]     |                                               ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 466 | / impl_binary_op_with_arg!(
[INFO] [stdout] 467 | |     core::ops::Sub<Arg>,
[INFO] [stdout] 468 | |     core::ops::Sub,
[INFO] [stdout] 469 | |     sub,
[INFO] [stdout] 470 | |     BinaryOp::Sub
[INFO] [stdout] 471 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:454:33
[INFO] [stdout]     |
[INFO] [stdout] 438 |   macro_rules! impl_binary_op_with_arg {
[INFO] [stdout] ...
[INFO] [stdout] 454 |                   self.try_binary_op_with_arg($op.into()).unwrap()
[INFO] [stdout]     |                                               ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 472 | / impl_binary_op_with_arg!(
[INFO] [stdout] 473 | |     core::ops::Mul<Arg>,
[INFO] [stdout] 474 | |     core::ops::Mul,
[INFO] [stdout] 475 | |     mul,
[INFO] [stdout] 476 | |     BinaryOp::Mul
[INFO] [stdout] 477 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:454:33
[INFO] [stdout]     |
[INFO] [stdout] 438 |   macro_rules! impl_binary_op_with_arg {
[INFO] [stdout] ...
[INFO] [stdout] 454 |                   self.try_binary_op_with_arg($op.into()).unwrap()
[INFO] [stdout]     |                                               ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 478 | / impl_binary_op_with_arg!(
[INFO] [stdout] 479 | |     core::ops::Div<Arg>,
[INFO] [stdout] 480 | |     core::ops::Div,
[INFO] [stdout] 481 | |     div,
[INFO] [stdout] 482 | |     BinaryOp::Div
[INFO] [stdout] 483 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:454:33
[INFO] [stdout]     |
[INFO] [stdout] 438 |   macro_rules! impl_binary_op_with_arg {
[INFO] [stdout] ...
[INFO] [stdout] 454 |                   self.try_binary_op_with_arg($op.into()).unwrap()
[INFO] [stdout]     |                                               ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 484 | / impl_binary_op_with_arg!(
[INFO] [stdout] 485 | |     core::ops::Rem<Arg>,
[INFO] [stdout] 486 | |     core::ops::Rem,
[INFO] [stdout] 487 | |     rem,
[INFO] [stdout] 488 | |     BinaryOp::Rem
[INFO] [stdout] 489 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:454:33
[INFO] [stdout]     |
[INFO] [stdout] 438 | macro_rules! impl_binary_op_with_arg {
[INFO] [stdout] ...
[INFO] [stdout] 454 |                 self.try_binary_op_with_arg($op.into()).unwrap()
[INFO] [stdout]     |                                             ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 490 | impl_binary_op_with_arg!(Pow<Arg>, Pow, pow, BinaryOp::Pow);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:454:33
[INFO] [stdout]     |
[INFO] [stdout] 438 | macro_rules! impl_binary_op_with_arg {
[INFO] [stdout] ...
[INFO] [stdout] 454 |                 self.try_binary_op_with_arg($op.into()).unwrap()
[INFO] [stdout]     |                                             ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 491 | impl_binary_op_with_arg!(Min<Arg>, Min, min, BinaryOp::Min);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:454:33
[INFO] [stdout]     |
[INFO] [stdout] 438 | macro_rules! impl_binary_op_with_arg {
[INFO] [stdout] ...
[INFO] [stdout] 454 |                 self.try_binary_op_with_arg($op.into()).unwrap()
[INFO] [stdout]     |                                             ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 492 | impl_binary_op_with_arg!(Max<Arg>, Max, max, BinaryOp::Max);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:454:33
[INFO] [stdout]     |
[INFO] [stdout] 438 | macro_rules! impl_binary_op_with_arg {
[INFO] [stdout] ...
[INFO] [stdout] 454 |                 self.try_binary_op_with_arg($op.into()).unwrap()
[INFO] [stdout]     |                                             ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 493 | impl_binary_op_with_arg!(Dot<Arg>, Dot, dot, BinaryOp::Dot);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `miniexpr` (lib test) due to 36 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:269:34
[INFO] [stdout]     |
[INFO] [stdout] 253 |   macro_rules! impl_binary_op_with_expr {
[INFO] [stdout] ...
[INFO] [stdout] 269 |                   self.try_binary_op_with_expr($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                                ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 275 | / impl_binary_op_with_expr!(
[INFO] [stdout] 276 | |     core::ops::Add<Expr<T, AR>>,
[INFO] [stdout] 277 | |     core::ops::Add,
[INFO] [stdout] 278 | |     add,
[INFO] [stdout] 279 | |     BinaryOp::Add
[INFO] [stdout] 280 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout]     = note: `#[deny(self_type_conversion)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:269:34
[INFO] [stdout]     |
[INFO] [stdout] 253 |   macro_rules! impl_binary_op_with_expr {
[INFO] [stdout] ...
[INFO] [stdout] 269 |                   self.try_binary_op_with_expr($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                                ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 281 | / impl_binary_op_with_expr!(
[INFO] [stdout] 282 | |     core::ops::Sub<Expr<T, AR>>,
[INFO] [stdout] 283 | |     core::ops::Sub,
[INFO] [stdout] 284 | |     sub,
[INFO] [stdout] 285 | |     BinaryOp::Sub
[INFO] [stdout] 286 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:269:34
[INFO] [stdout]     |
[INFO] [stdout] 253 |   macro_rules! impl_binary_op_with_expr {
[INFO] [stdout] ...
[INFO] [stdout] 269 |                   self.try_binary_op_with_expr($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                                ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 287 | / impl_binary_op_with_expr!(
[INFO] [stdout] 288 | |     core::ops::Mul<Expr<T, AR>>,
[INFO] [stdout] 289 | |     core::ops::Mul,
[INFO] [stdout] 290 | |     mul,
[INFO] [stdout] 291 | |     BinaryOp::Mul
[INFO] [stdout] 292 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:269:34
[INFO] [stdout]     |
[INFO] [stdout] 253 |   macro_rules! impl_binary_op_with_expr {
[INFO] [stdout] ...
[INFO] [stdout] 269 |                   self.try_binary_op_with_expr($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                                ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 293 | / impl_binary_op_with_expr!(
[INFO] [stdout] 294 | |     core::ops::Div<Expr<T, AR>>,
[INFO] [stdout] 295 | |     core::ops::Div,
[INFO] [stdout] 296 | |     div,
[INFO] [stdout] 297 | |     BinaryOp::Div
[INFO] [stdout] 298 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:269:34
[INFO] [stdout]     |
[INFO] [stdout] 253 |   macro_rules! impl_binary_op_with_expr {
[INFO] [stdout] ...
[INFO] [stdout] 269 |                   self.try_binary_op_with_expr($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                                ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 299 | / impl_binary_op_with_expr!(
[INFO] [stdout] 300 | |     core::ops::Rem<Expr<T, AR>>,
[INFO] [stdout] 301 | |     core::ops::Rem,
[INFO] [stdout] 302 | |     rem,
[INFO] [stdout] 303 | |     BinaryOp::Rem
[INFO] [stdout] 304 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:269:34
[INFO] [stdout]     |
[INFO] [stdout] 253 | macro_rules! impl_binary_op_with_expr {
[INFO] [stdout] ...
[INFO] [stdout] 269 |                 self.try_binary_op_with_expr($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                              ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 305 | impl_binary_op_with_expr!(Pow<Expr<T, AR>>, Pow, pow, BinaryOp::Pow);
[INFO] [stdout]     | -------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:269:34
[INFO] [stdout]     |
[INFO] [stdout] 253 | macro_rules! impl_binary_op_with_expr {
[INFO] [stdout] ...
[INFO] [stdout] 269 |                 self.try_binary_op_with_expr($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                              ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 306 | impl_binary_op_with_expr!(Min<Expr<T, AR>>, Min, min, BinaryOp::Min);
[INFO] [stdout]     | -------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:269:34
[INFO] [stdout]     |
[INFO] [stdout] 253 | macro_rules! impl_binary_op_with_expr {
[INFO] [stdout] ...
[INFO] [stdout] 269 |                 self.try_binary_op_with_expr($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                              ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 307 | impl_binary_op_with_expr!(Max<Expr<T, AR>>, Max, max, BinaryOp::Max);
[INFO] [stdout]     | -------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:269:34
[INFO] [stdout]     |
[INFO] [stdout] 253 | macro_rules! impl_binary_op_with_expr {
[INFO] [stdout] ...
[INFO] [stdout] 269 |                 self.try_binary_op_with_expr($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                              ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 308 | impl_binary_op_with_expr!(Dot<Expr<T, AR>>, Dot, dot, BinaryOp::Dot);
[INFO] [stdout]     | -------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:330:35
[INFO] [stdout]     |
[INFO] [stdout] 315 |   macro_rules! impl_binary_op_with_value {
[INFO] [stdout] ...
[INFO] [stdout] 330 |                   self.try_binary_op_with_value($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                                 ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 336 | / impl_binary_op_with_value!(
[INFO] [stdout] 337 | |     core::ops::Add<T>,
[INFO] [stdout] 338 | |     core::ops::Add,
[INFO] [stdout] 339 | |     add,
[INFO] [stdout] 340 | |     BinaryOp::Add
[INFO] [stdout] 341 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:330:35
[INFO] [stdout]     |
[INFO] [stdout] 315 |   macro_rules! impl_binary_op_with_value {
[INFO] [stdout] ...
[INFO] [stdout] 330 |                   self.try_binary_op_with_value($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                                 ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 342 | / impl_binary_op_with_value!(
[INFO] [stdout] 343 | |     core::ops::Sub<T>,
[INFO] [stdout] 344 | |     core::ops::Sub,
[INFO] [stdout] 345 | |     sub,
[INFO] [stdout] 346 | |     BinaryOp::Sub
[INFO] [stdout] 347 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:330:35
[INFO] [stdout]     |
[INFO] [stdout] 315 |   macro_rules! impl_binary_op_with_value {
[INFO] [stdout] ...
[INFO] [stdout] 330 |                   self.try_binary_op_with_value($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                                 ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 348 | / impl_binary_op_with_value!(
[INFO] [stdout] 349 | |     core::ops::Mul<T>,
[INFO] [stdout] 350 | |     core::ops::Mul,
[INFO] [stdout] 351 | |     mul,
[INFO] [stdout] 352 | |     BinaryOp::Mul
[INFO] [stdout] 353 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:330:35
[INFO] [stdout]     |
[INFO] [stdout] 315 |   macro_rules! impl_binary_op_with_value {
[INFO] [stdout] ...
[INFO] [stdout] 330 |                   self.try_binary_op_with_value($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                                 ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 354 | / impl_binary_op_with_value!(
[INFO] [stdout] 355 | |     core::ops::Div<T>,
[INFO] [stdout] 356 | |     core::ops::Div,
[INFO] [stdout] 357 | |     div,
[INFO] [stdout] 358 | |     BinaryOp::Div
[INFO] [stdout] 359 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:330:35
[INFO] [stdout]     |
[INFO] [stdout] 315 |   macro_rules! impl_binary_op_with_value {
[INFO] [stdout] ...
[INFO] [stdout] 330 |                   self.try_binary_op_with_value($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                                 ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 360 | / impl_binary_op_with_value!(
[INFO] [stdout] 361 | |     core::ops::Rem<T>,
[INFO] [stdout] 362 | |     core::ops::Rem,
[INFO] [stdout] 363 | |     rem,
[INFO] [stdout] 364 | |     BinaryOp::Rem
[INFO] [stdout] 365 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:330:35
[INFO] [stdout]     |
[INFO] [stdout] 315 | macro_rules! impl_binary_op_with_value {
[INFO] [stdout] ...
[INFO] [stdout] 330 |                 self.try_binary_op_with_value($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                               ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 366 | impl_binary_op_with_value!(Pow<T>, Pow, pow, BinaryOp::Pow);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:330:35
[INFO] [stdout]     |
[INFO] [stdout] 315 | macro_rules! impl_binary_op_with_value {
[INFO] [stdout] ...
[INFO] [stdout] 330 |                 self.try_binary_op_with_value($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                               ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 367 | impl_binary_op_with_value!(Min<T>, Min, min, BinaryOp::Min);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:330:35
[INFO] [stdout]     |
[INFO] [stdout] 315 | macro_rules! impl_binary_op_with_value {
[INFO] [stdout] ...
[INFO] [stdout] 330 |                 self.try_binary_op_with_value($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                               ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 368 | impl_binary_op_with_value!(Max<T>, Max, max, BinaryOp::Max);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:330:35
[INFO] [stdout]     |
[INFO] [stdout] 315 | macro_rules! impl_binary_op_with_value {
[INFO] [stdout] ...
[INFO] [stdout] 330 |                 self.try_binary_op_with_value($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                               ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 369 | impl_binary_op_with_value!(Dot<T>, Dot, dot, BinaryOp::Dot);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:392:38
[INFO] [stdout]     |
[INFO] [stdout] 376 |   macro_rules! impl_binary_op_with_constant {
[INFO] [stdout] ...
[INFO] [stdout] 392 |                   self.try_binary_op_with_constant($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                                    ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 398 | / impl_binary_op_with_constant!(
[INFO] [stdout] 399 | |     core::ops::Add<Constant>,
[INFO] [stdout] 400 | |     core::ops::Add,
[INFO] [stdout] 401 | |     add,
[INFO] [stdout] 402 | |     BinaryOp::Add
[INFO] [stdout] 403 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:392:38
[INFO] [stdout]     |
[INFO] [stdout] 376 |   macro_rules! impl_binary_op_with_constant {
[INFO] [stdout] ...
[INFO] [stdout] 392 |                   self.try_binary_op_with_constant($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                                    ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 404 | / impl_binary_op_with_constant!(
[INFO] [stdout] 405 | |     core::ops::Sub<Constant>,
[INFO] [stdout] 406 | |     core::ops::Sub,
[INFO] [stdout] 407 | |     sub,
[INFO] [stdout] 408 | |     BinaryOp::Sub
[INFO] [stdout] 409 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:392:38
[INFO] [stdout]     |
[INFO] [stdout] 376 |   macro_rules! impl_binary_op_with_constant {
[INFO] [stdout] ...
[INFO] [stdout] 392 |                   self.try_binary_op_with_constant($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                                    ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 410 | / impl_binary_op_with_constant!(
[INFO] [stdout] 411 | |     core::ops::Mul<Constant>,
[INFO] [stdout] 412 | |     core::ops::Mul,
[INFO] [stdout] 413 | |     mul,
[INFO] [stdout] 414 | |     BinaryOp::Mul
[INFO] [stdout] 415 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:392:38
[INFO] [stdout]     |
[INFO] [stdout] 376 |   macro_rules! impl_binary_op_with_constant {
[INFO] [stdout] ...
[INFO] [stdout] 392 |                   self.try_binary_op_with_constant($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                                    ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 416 | / impl_binary_op_with_constant!(
[INFO] [stdout] 417 | |     core::ops::Div<Constant>,
[INFO] [stdout] 418 | |     core::ops::Div,
[INFO] [stdout] 419 | |     div,
[INFO] [stdout] 420 | |     BinaryOp::Div
[INFO] [stdout] 421 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:392:38
[INFO] [stdout]     |
[INFO] [stdout] 376 |   macro_rules! impl_binary_op_with_constant {
[INFO] [stdout] ...
[INFO] [stdout] 392 |                   self.try_binary_op_with_constant($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                                    ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 422 | / impl_binary_op_with_constant!(
[INFO] [stdout] 423 | |     core::ops::Rem<Constant>,
[INFO] [stdout] 424 | |     core::ops::Rem,
[INFO] [stdout] 425 | |     rem,
[INFO] [stdout] 426 | |     BinaryOp::Rem
[INFO] [stdout] 427 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:392:38
[INFO] [stdout]     |
[INFO] [stdout] 376 | macro_rules! impl_binary_op_with_constant {
[INFO] [stdout] ...
[INFO] [stdout] 392 |                 self.try_binary_op_with_constant($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                                  ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 428 | impl_binary_op_with_constant!(Pow<Constant>, Pow, pow, BinaryOp::Pow);
[INFO] [stdout]     | --------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:392:38
[INFO] [stdout]     |
[INFO] [stdout] 376 | macro_rules! impl_binary_op_with_constant {
[INFO] [stdout] ...
[INFO] [stdout] 392 |                 self.try_binary_op_with_constant($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                                  ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 429 | impl_binary_op_with_constant!(Min<Constant>, Min, min, BinaryOp::Min);
[INFO] [stdout]     | --------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:392:38
[INFO] [stdout]     |
[INFO] [stdout] 376 | macro_rules! impl_binary_op_with_constant {
[INFO] [stdout] ...
[INFO] [stdout] 392 |                 self.try_binary_op_with_constant($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                                  ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 430 | impl_binary_op_with_constant!(Max<Constant>, Max, max, BinaryOp::Max);
[INFO] [stdout]     | --------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:392:38
[INFO] [stdout]     |
[INFO] [stdout] 376 | macro_rules! impl_binary_op_with_constant {
[INFO] [stdout] ...
[INFO] [stdout] 392 |                 self.try_binary_op_with_constant($op.into(), rhs).unwrap()
[INFO] [stdout]     |                                                  ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 431 | impl_binary_op_with_constant!(Dot<Constant>, Dot, dot, BinaryOp::Dot);
[INFO] [stdout]     | --------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:454:33
[INFO] [stdout]     |
[INFO] [stdout] 438 |   macro_rules! impl_binary_op_with_arg {
[INFO] [stdout] ...
[INFO] [stdout] 454 |                   self.try_binary_op_with_arg($op.into()).unwrap()
[INFO] [stdout]     |                                               ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 460 | / impl_binary_op_with_arg!(
[INFO] [stdout] 461 | |     core::ops::Add<Arg>,
[INFO] [stdout] 462 | |     core::ops::Add,
[INFO] [stdout] 463 | |     add,
[INFO] [stdout] 464 | |     BinaryOp::Add
[INFO] [stdout] 465 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:454:33
[INFO] [stdout]     |
[INFO] [stdout] 438 |   macro_rules! impl_binary_op_with_arg {
[INFO] [stdout] ...
[INFO] [stdout] 454 |                   self.try_binary_op_with_arg($op.into()).unwrap()
[INFO] [stdout]     |                                               ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 466 | / impl_binary_op_with_arg!(
[INFO] [stdout] 467 | |     core::ops::Sub<Arg>,
[INFO] [stdout] 468 | |     core::ops::Sub,
[INFO] [stdout] 469 | |     sub,
[INFO] [stdout] 470 | |     BinaryOp::Sub
[INFO] [stdout] 471 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:454:33
[INFO] [stdout]     |
[INFO] [stdout] 438 |   macro_rules! impl_binary_op_with_arg {
[INFO] [stdout] ...
[INFO] [stdout] 454 |                   self.try_binary_op_with_arg($op.into()).unwrap()
[INFO] [stdout]     |                                               ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 472 | / impl_binary_op_with_arg!(
[INFO] [stdout] 473 | |     core::ops::Mul<Arg>,
[INFO] [stdout] 474 | |     core::ops::Mul,
[INFO] [stdout] 475 | |     mul,
[INFO] [stdout] 476 | |     BinaryOp::Mul
[INFO] [stdout] 477 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:454:33
[INFO] [stdout]     |
[INFO] [stdout] 438 |   macro_rules! impl_binary_op_with_arg {
[INFO] [stdout] ...
[INFO] [stdout] 454 |                   self.try_binary_op_with_arg($op.into()).unwrap()
[INFO] [stdout]     |                                               ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 478 | / impl_binary_op_with_arg!(
[INFO] [stdout] 479 | |     core::ops::Div<Arg>,
[INFO] [stdout] 480 | |     core::ops::Div,
[INFO] [stdout] 481 | |     div,
[INFO] [stdout] 482 | |     BinaryOp::Div
[INFO] [stdout] 483 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:454:33
[INFO] [stdout]     |
[INFO] [stdout] 438 |   macro_rules! impl_binary_op_with_arg {
[INFO] [stdout] ...
[INFO] [stdout] 454 |                   self.try_binary_op_with_arg($op.into()).unwrap()
[INFO] [stdout]     |                                               ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 484 | / impl_binary_op_with_arg!(
[INFO] [stdout] 485 | |     core::ops::Rem<Arg>,
[INFO] [stdout] 486 | |     core::ops::Rem,
[INFO] [stdout] 487 | |     rem,
[INFO] [stdout] 488 | |     BinaryOp::Rem
[INFO] [stdout] 489 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:454:33
[INFO] [stdout]     |
[INFO] [stdout] 438 | macro_rules! impl_binary_op_with_arg {
[INFO] [stdout] ...
[INFO] [stdout] 454 |                 self.try_binary_op_with_arg($op.into()).unwrap()
[INFO] [stdout]     |                                             ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 490 | impl_binary_op_with_arg!(Pow<Arg>, Pow, pow, BinaryOp::Pow);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:454:33
[INFO] [stdout]     |
[INFO] [stdout] 438 | macro_rules! impl_binary_op_with_arg {
[INFO] [stdout] ...
[INFO] [stdout] 454 |                 self.try_binary_op_with_arg($op.into()).unwrap()
[INFO] [stdout]     |                                             ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 491 | impl_binary_op_with_arg!(Min<Arg>, Min, min, BinaryOp::Min);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:454:33
[INFO] [stdout]     |
[INFO] [stdout] 438 | macro_rules! impl_binary_op_with_arg {
[INFO] [stdout] ...
[INFO] [stdout] 454 |                 self.try_binary_op_with_arg($op.into()).unwrap()
[INFO] [stdout]     |                                             ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 492 | impl_binary_op_with_arg!(Max<Arg>, Max, max, BinaryOp::Max);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `BinaryOp`
[INFO] [stdout]    --> pkgs/miniexpr/src/expr/ops.rs:454:33
[INFO] [stdout]     |
[INFO] [stdout] 438 | macro_rules! impl_binary_op_with_arg {
[INFO] [stdout] ...
[INFO] [stdout] 454 |                 self.try_binary_op_with_arg($op.into()).unwrap()
[INFO] [stdout]     |                                             ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 493 | impl_binary_op_with_arg!(Dot<Arg>, Dot, dot, BinaryOp::Dot);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<BinaryOp as Into<BinaryOp>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `miniexpr` (lib) due to 36 previous errors
[INFO] [stderr] warning: unused dependency `thiserror`
[INFO] [stderr]   --> pkgs/hopsim-fdtd/Cargo.toml:15:1
[INFO] [stderr]    |
[INFO] [stderr] 15 | thiserror = { workspace = true }
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `thiserror`
[INFO] [stderr] warning: `hopsim-fdtd` (manifest) generated 1 warning
[INFO] [stderr] warning: unused dependency `thiserror`
[INFO] [stderr]   --> pkgs/hopsim-fdtd-cpu/Cargo.toml:15:1
[INFO] [stderr]    |
[INFO] [stderr] 15 | thiserror = { workspace = true }
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `thiserror`
[INFO] [stderr] warning: `hopsim-fdtd-cpu` (manifest) generated 1 warning
[INFO] [stderr] warning: unused dependency `thiserror`
[INFO] [stderr]   --> pkgs/hopsim-fdtd-cuda/Cargo.toml:15:1
[INFO] [stderr]    |
[INFO] [stderr] 15 | thiserror = { workspace = true }
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `thiserror`
[INFO] [stderr] warning: `hopsim-fdtd-cuda` (manifest) generated 1 warning
[INFO] [stderr] warning: unused dependency `thiserror`
[INFO] [stderr]   --> pkgs/hopsim-fdtd-naive/Cargo.toml:15:1
[INFO] [stderr]    |
[INFO] [stderr] 15 | thiserror = { workspace = true }
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `thiserror`
[INFO] [stderr] warning: `hopsim-fdtd-naive` (manifest) generated 1 warning
[INFO] [stderr] warning: unused dependency `thiserror`
[INFO] [stderr]   --> pkgs/hopsim-simdata/Cargo.toml:15:1
[INFO] [stderr]    |
[INFO] [stderr] 15 | thiserror = { workspace = true }
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `thiserror`
[INFO] [stderr] warning: `hopsim-simdata` (manifest) generated 1 warning
[INFO] [stderr] warning: unused dependency `compact_str`
[INFO] [stderr]   --> pkgs/miniexpr/Cargo.toml:22:1
[INFO] [stderr]    |
[INFO] [stderr] 22 | compact_str = { workspace = true, optional = true }
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `compact_str`
[INFO] [stderr] warning: `miniexpr` (manifest) generated 1 warning
[INFO] [stderr] warning: unused dependency `num-traits`
[INFO] [stderr]   --> pkgs/minigrid/Cargo.toml:15:1
[INFO] [stderr]    |
[INFO] [stderr] 15 | num-traits = { workspace = true }
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `num-traits`
[INFO] [stderr] warning: unused dependency `thiserror`
[INFO] [stderr]   --> pkgs/minigrid/Cargo.toml:16:1
[INFO] [stderr]    |
[INFO] [stderr] 16 | thiserror = { workspace = true }
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr] help: consider removing the dependency on `thiserror`
[INFO] [stderr] warning: `minigrid` (manifest) generated 2 warnings
[INFO] running `Command { std: "docker" "inspect" "6c913d7eaeb24cdd4141dffa9bb84840772d428f2fd4589f34e860b7d72b2af3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6c913d7eaeb24cdd4141dffa9bb84840772d428f2fd4589f34e860b7d72b2af3", kill_on_drop: false }`
[INFO] [stdout] 6c913d7eaeb24cdd4141dffa9bb84840772d428f2fd4589f34e860b7d72b2af3
