[INFO] fetching crate ndrs 0.5.0...
[INFO] checking ndrs-0.5.0 against master#6eda7419e71fdbc1185ed5be7e6bff1a474ab5cd for pr-153721
[INFO] extracting crate ndrs 0.5.0 into /workspace/builds/worker-7-tc1/source
[INFO] started tweaking crates.io crate ndrs 0.5.0
[INFO] finished tweaking crates.io crate ndrs 0.5.0
[INFO] tweaked toml for crates.io crate ndrs 0.5.0 written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate ndrs 0.5.0 on toolchain 6eda7419e71fdbc1185ed5be7e6bff1a474ab5cd
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+6eda7419e71fdbc1185ed5be7e6bff1a474ab5cd" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate ndrs 0.5.0 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" "+6eda7419e71fdbc1185ed5be7e6bff1a474ab5cd" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded npyz v0.9.0
[INFO] [stderr]   Downloaded find_cuda_helper v0.2.0
[INFO] [stderr]   Downloaded filenamify v0.1.2
[INFO] [stderr]   Downloaded vcvars v0.1.6
[INFO] [stderr]   Downloaded py_literal v0.4.0
[INFO] [stderr]   Downloaded ctor v0.2.9
[INFO] [stderr]   Downloaded cudaforge v0.1.5
[INFO] [stderr]   Downloaded jiff-static v0.2.23
[INFO] [stderr]   Downloaded cudarc v0.19.4
[INFO] [stderr]   Downloaded jiff v0.2.23
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/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:3e793bdf10248eb2ddbd6b0faebed8155c11b4589982e2893733958d93e8d540" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 16dc4018294dfcec92f9216169185ea4f7acb8d79d84b6b7106e8f8529d5c035
[INFO] running `Command { std: "docker" "start" "16dc4018294dfcec92f9216169185ea4f7acb8d79d84b6b7106e8f8529d5c035", 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" "16dc4018294dfcec92f9216169185ea4f7acb8d79d84b6b7106e8f8529d5c035" "/opt/rustwide/cargo-home/bin/cargo" "+6eda7419e71fdbc1185ed5be7e6bff1a474ab5cd" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "16dc4018294dfcec92f9216169185ea4f7acb8d79d84b6b7106e8f8529d5c035", 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" "16dc4018294dfcec92f9216169185ea4f7acb8d79d84b6b7106e8f8529d5c035" "/opt/rustwide/cargo-home/bin/cargo" "+6eda7419e71fdbc1185ed5be7e6bff1a474ab5cd" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling libc v0.2.185
[INFO] [stderr]    Compiling typenum v1.20.0
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling regex-syntax v0.8.10
[INFO] [stderr]    Compiling ucd-trie v0.1.7
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling rayon-core v1.13.0
[INFO] [stderr]    Compiling linux-raw-sys v0.12.1
[INFO] [stderr]    Compiling bitflags v2.11.1
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling vcvars v0.1.6
[INFO] [stderr]    Compiling lazy_static v1.5.0
[INFO] [stderr]    Compiling glob v0.3.3
[INFO] [stderr]     Checking hashbrown v0.17.0
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]    Compiling env_home v0.1.0
[INFO] [stderr]    Compiling walkdir v2.5.0
[INFO] [stderr]    Compiling pest v2.8.6
[INFO] [stderr]    Compiling itertools v0.10.5
[INFO] [stderr]     Checking miniz_oxide v0.8.9
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.18
[INFO] [stderr]     Checking object v0.37.3
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]     Checking fixedbitset v0.4.2
[INFO] [stderr]    Compiling crossbeam-deque v0.8.6
[INFO] [stderr]     Checking indexmap v2.14.0
[INFO] [stderr]    Compiling cc v1.2.60
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]     Checking regex-automata v0.4.14
[INFO] [stderr]    Compiling rayon v1.12.0
[INFO] [stderr]    Compiling num_cpus v1.17.0
[INFO] [stderr]    Compiling fs2 v0.4.3
[INFO] [stderr]     Checking num-bigint v0.4.6
[INFO] [stderr]     Checking petgraph v0.6.5
[INFO] [stderr]     Checking num-complex v0.4.6
[INFO] [stderr]    Compiling crypto-common v0.1.7
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling pest_meta v2.8.6
[INFO] [stderr]    Compiling find_cuda_helper v0.2.0
[INFO] [stderr]    Compiling which v7.0.3
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling cudarc v0.19.4
[INFO] [stderr]     Checking smallvec v1.15.1
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]     Checking anstream v1.0.0
[INFO] [stderr]     Checking getrandom v0.4.2
[INFO] [stderr]     Checking libloading v0.9.0
[INFO] [stderr]     Checking fastrand v2.4.1
[INFO] [stderr]     Checking jiff v0.2.23
[INFO] [stderr]     Checking threadpool v1.8.1
[INFO] [stderr]    Compiling pest_generator v2.8.6
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling bytemuck_derive v1.10.2
[INFO] [stderr]    Compiling ctor v0.2.9
[INFO] [stderr]     Checking tempfile v3.27.0
[INFO] [stderr]     Checking regex v1.12.3
[INFO] [stderr]    Compiling pest_derive v2.8.6
[INFO] [stderr]     Checking env_filter v1.0.1
[INFO] [stderr]     Checking py_literal v0.4.0
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]     Checking backtrace v0.3.76
[INFO] [stderr]     Checking bytemuck v1.25.0
[INFO] [stderr]     Checking npyz v0.9.0
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking env_logger v0.11.10
[INFO] [stderr]    Compiling filenamify v0.1.2
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling cudaforge v0.1.5
[INFO] [stderr]    Compiling ndrs v0.5.0 (/opt/rustwide/workdir)
[INFO] [stderr] warning: ndrs@0.5.0: /opt/rustwide/workdir/kernel/src/cpu/ops.cpp: In function 'void cpu_strided_copy(const uint8_t*, size_t, const size_t*, int, const size_t*, uint8_t*, size_t, const size_t*, size_t, size_t)':
[INFO] [stderr] warning: ndrs@0.5.0: /opt/rustwide/workdir/kernel/src/cpu/ops.cpp:74:31: warning: comparison of integer expressions of different signedness: 'int64_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
[INFO] [stderr] warning: ndrs@0.5.0:    74 |     for (int64_t idx = 0; idx < total_elements; ++idx) {
[INFO] [stderr] warning: ndrs@0.5.0:       |                           ~~~~^~~~~~~~~~~~~~~~
[INFO] [stderr] warning: ndrs@0.5.0: /opt/rustwide/workdir/kernel/src/cpu/ops.cpp: In function 'void cpu_contiguous(const uint8_t*, size_t, const size_t*, int, const size_t*, uint8_t*, size_t, size_t)':
[INFO] [stderr] warning: ndrs@0.5.0: /opt/rustwide/workdir/kernel/src/cpu/ops.cpp:94:31: warning: comparison of integer expressions of different signedness: 'int64_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
[INFO] [stderr] warning: ndrs@0.5.0:    94 |     for (int64_t idx = 0; idx < total_elements; ++idx) {
[INFO] [stderr] warning: ndrs@0.5.0:       |                           ~~~~^~~~~~~~~~~~~~~~
[INFO] [stderr] warning: ndrs@0.5.0: /opt/rustwide/workdir/kernel/src/cpu/ops.cpp: In instantiation of 'void cpu_strided_binary(const T*, const size_t*, const T*, const size_t*, T*, const size_t*, const size_t*, int, size_t, Op) [with T = float; Op = add_op<float>; size_t = long unsigned int]':
[INFO] [stderr] warning: ndrs@0.5.0: /opt/rustwide/workdir/kernel/src/cpu/ops.cpp:55:1:   required from here
[INFO] [stderr] warning: ndrs@0.5.0: /opt/rustwide/workdir/kernel/src/cpu/ops.cpp:29:33: warning: comparison of integer expressions of different signedness: 'int64_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
[INFO] [stderr] warning: ndrs@0.5.0:    29 |     for (int64_t idx = 0; idx < total_elements; ++idx) {
[INFO] [stderr] warning: ndrs@0.5.0:       |                                 ^~~~~~~~~~~~~~
[INFO] [stderr] warning: ndrs@0.5.0: /opt/rustwide/workdir/kernel/src/cpu/ops.cpp: In instantiation of 'void cpu_strided_binary(const T*, const size_t*, const T*, const size_t*, T*, const size_t*, const size_t*, int, size_t, Op) [with T = float; Op = sub_op<float>; size_t = long unsigned int]':
[INFO] [stderr] warning: ndrs@0.5.0: /opt/rustwide/workdir/kernel/src/cpu/ops.cpp:56:1:   required from here
[INFO] [stderr] warning: ndrs@0.5.0: /opt/rustwide/workdir/kernel/src/cpu/ops.cpp:29:33: warning: comparison of integer expressions of different signedness: 'int64_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
[INFO] [stderr] warning: ndrs@0.5.0: /opt/rustwide/workdir/kernel/src/cpu/ops.cpp: In instantiation of 'void cpu_strided_binary(const T*, const size_t*, const T*, const size_t*, T*, const size_t*, const size_t*, int, size_t, Op) [with T = float; Op = mul_op<float>; size_t = long unsigned int]':
[INFO] [stderr] warning: ndrs@0.5.0: /opt/rustwide/workdir/kernel/src/cpu/ops.cpp:57:1:   required from here
[INFO] [stderr] warning: ndrs@0.5.0: /opt/rustwide/workdir/kernel/src/cpu/ops.cpp:29:33: warning: comparison of integer expressions of different signedness: 'int64_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
[INFO] [stderr] warning: ndrs@0.5.0: /opt/rustwide/workdir/kernel/src/cpu/ops.cpp: In instantiation of 'void cpu_strided_binary(const T*, const size_t*, const T*, const size_t*, T*, const size_t*, const size_t*, int, size_t, Op) [with T = float; Op = div_op<float>; size_t = long unsigned int]':
[INFO] [stderr] warning: ndrs@0.5.0: /opt/rustwide/workdir/kernel/src/cpu/ops.cpp:58:1:   required from here
[INFO] [stderr] warning: ndrs@0.5.0: /opt/rustwide/workdir/kernel/src/cpu/ops.cpp:29:33: warning: comparison of integer expressions of different signedness: 'int64_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
[INFO] [stderr] warning: ndrs@0.5.0: /opt/rustwide/workdir/kernel/src/cpu/ops.cpp: In instantiation of 'void cpu_strided_binary(const T*, const size_t*, const T*, const size_t*, T*, const size_t*, const size_t*, int, size_t, Op) [with T = int; Op = add_op<int>; size_t = long unsigned int]':
[INFO] [stderr] warning: ndrs@0.5.0: /opt/rustwide/workdir/kernel/src/cpu/ops.cpp:61:1:   required from here
[INFO] [stderr] warning: ndrs@0.5.0: /opt/rustwide/workdir/kernel/src/cpu/ops.cpp:29:33: warning: comparison of integer expressions of different signedness: 'int64_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
[INFO] [stderr] warning: ndrs@0.5.0: /opt/rustwide/workdir/kernel/src/cpu/ops.cpp: In instantiation of 'void cpu_strided_binary(const T*, const size_t*, const T*, const size_t*, T*, const size_t*, const size_t*, int, size_t, Op) [with T = int; Op = sub_op<int>; size_t = long unsigned int]':
[INFO] [stderr] warning: ndrs@0.5.0: /opt/rustwide/workdir/kernel/src/cpu/ops.cpp:62:1:   required from here
[INFO] [stderr] warning: ndrs@0.5.0: /opt/rustwide/workdir/kernel/src/cpu/ops.cpp:29:33: warning: comparison of integer expressions of different signedness: 'int64_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
[INFO] [stderr] warning: ndrs@0.5.0: /opt/rustwide/workdir/kernel/src/cpu/ops.cpp: In instantiation of 'void cpu_strided_binary(const T*, const size_t*, const T*, const size_t*, T*, const size_t*, const size_t*, int, size_t, Op) [with T = int; Op = mul_op<int>; size_t = long unsigned int]':
[INFO] [stderr] warning: ndrs@0.5.0: /opt/rustwide/workdir/kernel/src/cpu/ops.cpp:63:1:   required from here
[INFO] [stderr] warning: ndrs@0.5.0: /opt/rustwide/workdir/kernel/src/cpu/ops.cpp:29:33: warning: comparison of integer expressions of different signedness: 'int64_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
[INFO] [stderr] warning: ndrs@0.5.0: /opt/rustwide/workdir/kernel/src/cpu/ops.cpp: In instantiation of 'void cpu_strided_binary(const T*, const size_t*, const T*, const size_t*, T*, const size_t*, const size_t*, int, size_t, Op) [with T = int; Op = div_op<int>; size_t = long unsigned int]':
[INFO] [stderr] warning: ndrs@0.5.0: /opt/rustwide/workdir/kernel/src/cpu/ops.cpp:64:1:   required from here
[INFO] [stderr] warning: ndrs@0.5.0: /opt/rustwide/workdir/kernel/src/cpu/ops.cpp:29:33: warning: comparison of integer expressions of different signedness: 'int64_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
[INFO] [stdout] warning: unused imports: `Context`, `Result`, `anyhow`, and `bail`
[INFO] [stdout]  --> src/backend/cpu/event.rs:1:14
[INFO] [stdout]   |
[INFO] [stdout] 1 | use anyhow::{Context, Result, anyhow, bail};
[INFO] [stdout]   |              ^^^^^^^  ^^^^^^  ^^^^^^  ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Duration`
[INFO] [stdout]  --> src/backend/cpu/event.rs:4:17
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::time::{Duration, Instant};
[INFO] [stdout]   |                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Context`, `Result`, `anyhow`, and `bail`
[INFO] [stdout]  --> src/backend/cpu/stream.rs:3:14
[INFO] [stdout]   |
[INFO] [stdout] 3 | use anyhow::{Context, Result, anyhow, bail};
[INFO] [stdout]   |              ^^^^^^^  ^^^^^^  ^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DriverError`
[INFO] [stdout]  --> src/backend/cuda/device.rs:2:47
[INFO] [stdout]   |
[INFO] [stdout] 2 | use cudarc::driver::{CudaContext, CudaStream, DriverError};
[INFO] [stdout]   |                                               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `CudaStream`
[INFO] [stdout]  --> src/backend/cuda/elementwise_kernel.rs:7:35
[INFO] [stdout]   |
[INFO] [stdout] 7 | use cudarc::driver::{CudaContext, CudaStream, LaunchConfig, PushKernelArg};
[INFO] [stdout]   |                                   ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Context`, `Result`, `anyhow`, and `bail`
[INFO] [stdout]  --> src/backend/cuda/raw_kernel.rs:1:14
[INFO] [stdout]   |
[INFO] [stdout] 1 | use anyhow::{Context, Result, anyhow, bail};
[INFO] [stdout]   |              ^^^^^^^  ^^^^^^  ^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `LaunchConfig`
[INFO] [stdout]  --> src/backend/cuda/raw_kernel.rs:2:59
[INFO] [stdout]   |
[INFO] [stdout] 2 | use cudarc::driver::{CudaContext, CudaStream, LaunchArgs, LaunchConfig};
[INFO] [stdout]   |                                                           ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `cudarc::driver::PushKernelArg`
[INFO] [stdout]  --> src/backend/cuda/raw_kernel.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use cudarc::driver::PushKernelArg;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DevicePtrMut` and `DevicePtr`
[INFO] [stdout]  --> src/backend/cuda/raw_kernel.rs:7:22
[INFO] [stdout]   |
[INFO] [stdout] 7 | use cudarc::driver::{DevicePtr, DevicePtrMut};
[INFO] [stdout]   |                      ^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `get_dtype_info`
[INFO] [stdout]  --> src/builtin_kernels/cpu/elementwise.rs:2:34
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::dtype::{DTypeMapping, get_dtype_info};
[INFO] [stdout]   |                                  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::elementwise::*`
[INFO] [stdout]  --> src/builtin_kernels/cpu/fill.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use super::elementwise::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsView`
[INFO] [stdout]  --> src/builtin_kernels/cpu/fill.rs:7:34
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::view::{ArcTensorView, AsView, RcTensorView};
[INFO] [stdout]   |                                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `elementwise::*`
[INFO] [stdout]  --> src/builtin_kernels/cpu/mod.rs:4:9
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub use elementwise::*;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `fill::*`
[INFO] [stdout]  --> src/builtin_kernels/cpu/mod.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub use fill::*;
[INFO] [stdout]   |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::dtype::DTypeMapping`
[INFO] [stdout]  --> src/builtin_kernels/cuda/elementwise.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::dtype::DTypeMapping;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `parking_lot::ReentrantMutex`
[INFO] [stdout]  --> src/builtin_kernels/cuda/elementwise.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use parking_lot::ReentrantMutex;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::RefCell`
[INFO] [stdout]  --> src/builtin_kernels/cuda/elementwise.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::cell::RefCell;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::rc::Rc`
[INFO] [stdout]  --> src/builtin_kernels/cuda/elementwise.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::rc::Rc;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/builtin_kernels/cuda/elementwise.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::cuda::get_stream`
[INFO] [stdout]   --> src/builtin_kernels/cuda/fill.rs:12:21
[INFO] [stdout]    |
[INFO] [stdout] 12 |                 use crate::cuda::get_stream;
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 51 | impl_fill_for_view!(RcTensorView);
[INFO] [stdout]    | --------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_fill_for_view` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::device::Device`
[INFO] [stdout]   --> src/builtin_kernels/cuda/fill.rs:13:21
[INFO] [stdout]    |
[INFO] [stdout] 13 |                 use crate::device::Device;
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 51 | impl_fill_for_view!(RcTensorView);
[INFO] [stdout]    | --------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_fill_for_view` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::cuda::get_stream`
[INFO] [stdout]   --> src/builtin_kernels/cuda/fill.rs:33:21
[INFO] [stdout]    |
[INFO] [stdout] 33 |                 use crate::cuda::get_stream;
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 52 | impl_fill_for_view!(ArcTensorView);
[INFO] [stdout]    | ---------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_fill_for_view` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::device::Device`
[INFO] [stdout]   --> src/builtin_kernels/cuda/fill.rs:34:21
[INFO] [stdout]    |
[INFO] [stdout] 34 |                 use crate::device::Device;
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 52 | impl_fill_for_view!(ArcTensorView);
[INFO] [stdout]    | ---------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_fill_for_view` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `elementwise::*`
[INFO] [stdout]  --> src/builtin_kernels/cuda/mod.rs:4:9
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub use elementwise::*;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `fill::*`
[INFO] [stdout]  --> src/builtin_kernels/cuda/mod.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub use fill::*;
[INFO] [stdout]   |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `cpu::*`
[INFO] [stdout]  --> src/builtin_kernels/mod.rs:4:9
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub use cpu::*;
[INFO] [stdout]   |         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `cuda::*`
[INFO] [stdout]  --> src/builtin_kernels/mod.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub use cuda::*;
[INFO] [stdout]   |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Context`, `Result`, and `anyhow`
[INFO] [stdout]  --> src/dtype.rs:1:14
[INFO] [stdout]   |
[INFO] [stdout] 1 | use anyhow::{Context, Result, anyhow, bail};
[INFO] [stdout]   |              ^^^^^^^  ^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `anyhow`
[INFO] [stdout]  --> src/tensor/construction.rs:6:31
[INFO] [stdout]   |
[INFO] [stdout] 6 | use anyhow::{Context, Result, anyhow, bail};
[INFO] [stdout]   |                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `cudarc::driver::DevicePtr`
[INFO] [stdout]  --> src/tensor/construction.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use cudarc::driver::DevicePtr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `get_dtype_info`
[INFO] [stdout]  --> src/tensor/conversion.rs:2:34
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::dtype::{DTypeMapping, get_dtype_info};
[INFO] [stdout]   |                                  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Result` and `anyhow`
[INFO] [stdout]  --> src/tensor/conversion.rs:4:23
[INFO] [stdout]   |
[INFO] [stdout] 4 | use anyhow::{Context, Result, anyhow, bail};
[INFO] [stdout]   |                       ^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/tensor/conversion.rs:9:22
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Context`, `Result`, `anyhow`, and `bail`
[INFO] [stdout]  --> src/tensor/handle.rs:4:14
[INFO] [stdout]   |
[INFO] [stdout] 4 | use anyhow::{Context, Result, anyhow, bail};
[INFO] [stdout]   |              ^^^^^^^  ^^^^^^  ^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `parking_lot::ReentrantMutex`
[INFO] [stdout]  --> src/tensor/handle_ops/conversion.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use parking_lot::ReentrantMutex;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::RefCell`
[INFO] [stdout]  --> src/tensor/handle_ops/conversion.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::cell::RefCell;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::rc::Rc`
[INFO] [stdout]  --> src/tensor/handle_ops/conversion.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::rc::Rc;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/tensor/handle_ops/conversion.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::dtype::DTypeMapping`
[INFO] [stdout]  --> src/tensor/handle_ops/creation.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::dtype::DTypeMapping;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Context`, `Result`, `anyhow`, and `bail`
[INFO] [stdout]  --> src/tensor/handle_ops/creation.rs:4:14
[INFO] [stdout]   |
[INFO] [stdout] 4 | use anyhow::{Context, Result, anyhow, bail};
[INFO] [stdout]   |              ^^^^^^^  ^^^^^^  ^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::Tensor`
[INFO] [stdout]  --> src/tensor/handle_ops/mod.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use super::Tensor;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Context`, `Result`, `anyhow`, and `bail`
[INFO] [stdout]  --> src/tensor/handle_ops/mod.rs:8:14
[INFO] [stdout]   |
[INFO] [stdout] 8 | use anyhow::{Context, Result, anyhow, bail};
[INFO] [stdout]   |              ^^^^^^^  ^^^^^^  ^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Context`, `Result`, and `anyhow`
[INFO] [stdout]  --> src/tensor/io.rs:1:14
[INFO] [stdout]   |
[INFO] [stdout] 1 | use anyhow::{Context, Result, anyhow, bail};
[INFO] [stdout]   |              ^^^^^^^  ^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RcTensor`
[INFO] [stdout]   --> src/tensor/io.rs:13:21
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::tensor::{RcTensor, Tensor};
[INFO] [stdout]    |                     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `access::*`
[INFO] [stdout]   --> src/tensor/mod.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub use access::*;
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `construction::*`
[INFO] [stdout]   --> src/tensor/mod.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub use construction::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `conversion::*`
[INFO] [stdout]   --> src/tensor/mod.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub use conversion::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: glob import doesn't reexport anything with visibility `pub` because no imported item is public enough
[INFO] [stdout]   --> src/tensor/mod.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub use data::*;
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the most public imported item is `pub(crate)`
[INFO] [stdout]   --> src/tensor/mod.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub use data::*;
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    = help: reduce the glob import's visibility or increase visibility of imported items
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Context` and `anyhow`
[INFO] [stdout]  --> src/view/broadcast.rs:2:14
[INFO] [stdout]   |
[INFO] [stdout] 2 | use anyhow::{Context, Result, anyhow, bail};
[INFO] [stdout]   |              ^^^^^^^          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Context`, `anyhow`, and `bail`
[INFO] [stdout]  --> src/view/trait_def.rs:5:14
[INFO] [stdout]   |
[INFO] [stdout] 5 | use anyhow::{Context, Result, anyhow, bail};
[INFO] [stdout]   |              ^^^^^^^          ^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `SliceArg` and `SliceInfo`
[INFO] [stdout]  --> src/view/views.rs:2:20
[INFO] [stdout]   |
[INFO] [stdout] 2 | use super::slice::{SliceArg, SliceInfo};
[INFO] [stdout]   |                    ^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::cuda`
[INFO] [stdout]  --> src/view/views.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::cuda;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::cuda::Stream`
[INFO] [stdout]  --> src/view/views.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::cuda::Stream;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::kernel::*`
[INFO] [stdout]  --> src/view/views.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::kernel::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `anyhow`
[INFO] [stdout]   --> src/view/views.rs:10:31
[INFO] [stdout]    |
[INFO] [stdout] 10 | use anyhow::{Context, Result, anyhow, bail};
[INFO] [stdout]    |                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `parking_lot::ReentrantMutexGuard`
[INFO] [stdout]   --> src/view/views.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use parking_lot::ReentrantMutexGuard;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RefMut` and `Ref`
[INFO] [stdout]   --> src/view/views.rs:15:17
[INFO] [stdout]    |
[INFO] [stdout] 15 | use std::cell::{Ref, RefMut};
[INFO] [stdout]    |                 ^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DerefMut` and `Deref`
[INFO] [stdout]   --> src/view/views.rs:16:16
[INFO] [stdout]    |
[INFO] [stdout] 16 | use std::ops::{Deref, DerefMut};
[INFO] [stdout]    |                ^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::rc::Rc`
[INFO] [stdout]   --> src/view/views.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use std::rc::Rc;
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Arc` and `Mutex`
[INFO] [stdout]   --> src/view/views.rs:18:17
[INFO] [stdout]    |
[INFO] [stdout] 18 | use std::sync::{Arc, Mutex};
[INFO] [stdout]    |                 ^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Context`, `Result`, `anyhow`, and `bail`
[INFO] [stdout]  --> src/view_ops/binary.rs:1:14
[INFO] [stdout]   |
[INFO] [stdout] 1 | use anyhow::{Context, Result, anyhow, bail};
[INFO] [stdout]   |              ^^^^^^^  ^^^^^^  ^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Context`, `Result`, `anyhow`, and `bail`
[INFO] [stdout]  --> src/view_ops/copy.rs:1:14
[INFO] [stdout]   |
[INFO] [stdout] 1 | use anyhow::{Context, Result, anyhow, bail};
[INFO] [stdout]   |              ^^^^^^^  ^^^^^^  ^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::dtype::get_dtype_info`
[INFO] [stdout]  --> src/view_ops/device_transfer.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::dtype::get_dtype_info;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::tensor::DataPtr`
[INFO] [stdout]  --> src/view_ops/device_transfer.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::tensor::DataPtr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::view::TensorViewOps`
[INFO] [stdout]  --> src/view_ops/device_transfer.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::view::TensorViewOps;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Context`, `Result`, `anyhow`, and `bail`
[INFO] [stdout]  --> src/view_ops/device_transfer.rs:5:14
[INFO] [stdout]   |
[INFO] [stdout] 5 | use anyhow::{Context, Result, anyhow, bail};
[INFO] [stdout]   |              ^^^^^^^  ^^^^^^  ^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Context`, `Result`, `anyhow`, and `bail`
[INFO] [stdout]  --> src/view_ops/matmul.rs:1:14
[INFO] [stdout]   |
[INFO] [stdout] 1 | use anyhow::{Context, Result, anyhow, bail};
[INFO] [stdout]   |              ^^^^^^^  ^^^^^^  ^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Context`, `Result`, `anyhow`, and `bail`
[INFO] [stdout]  --> src/view_ops/shape.rs:1:14
[INFO] [stdout]   |
[INFO] [stdout] 1 | use anyhow::{Context, Result, anyhow, bail};
[INFO] [stdout]   |              ^^^^^^^  ^^^^^^  ^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Context`, `Result`, `anyhow`, and `bail`
[INFO] [stdout]  --> src/backend/cpu/event.rs:1:14
[INFO] [stdout]   |
[INFO] [stdout] 1 | use anyhow::{Context, Result, anyhow, bail};
[INFO] [stdout]   |              ^^^^^^^  ^^^^^^  ^^^^^^  ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Duration`
[INFO] [stdout]  --> src/backend/cpu/event.rs:4:17
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::time::{Duration, Instant};
[INFO] [stdout]   |                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Context`, `Result`, `anyhow`, and `bail`
[INFO] [stdout]  --> src/backend/cpu/stream.rs:3:14
[INFO] [stdout]   |
[INFO] [stdout] 3 | use anyhow::{Context, Result, anyhow, bail};
[INFO] [stdout]   |              ^^^^^^^  ^^^^^^  ^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DriverError`
[INFO] [stdout]  --> src/backend/cuda/device.rs:2:47
[INFO] [stdout]   |
[INFO] [stdout] 2 | use cudarc::driver::{CudaContext, CudaStream, DriverError};
[INFO] [stdout]   |                                               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `CudaStream`
[INFO] [stdout]  --> src/backend/cuda/elementwise_kernel.rs:7:35
[INFO] [stdout]   |
[INFO] [stdout] 7 | use cudarc::driver::{CudaContext, CudaStream, LaunchConfig, PushKernelArg};
[INFO] [stdout]   |                                   ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Context`, `Result`, `anyhow`, and `bail`
[INFO] [stdout]  --> src/backend/cuda/raw_kernel.rs:1:14
[INFO] [stdout]   |
[INFO] [stdout] 1 | use anyhow::{Context, Result, anyhow, bail};
[INFO] [stdout]   |              ^^^^^^^  ^^^^^^  ^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `LaunchConfig`
[INFO] [stdout]  --> src/backend/cuda/raw_kernel.rs:2:59
[INFO] [stdout]   |
[INFO] [stdout] 2 | use cudarc::driver::{CudaContext, CudaStream, LaunchArgs, LaunchConfig};
[INFO] [stdout]   |                                                           ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `cudarc::driver::PushKernelArg`
[INFO] [stdout]  --> src/backend/cuda/raw_kernel.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use cudarc::driver::PushKernelArg;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DevicePtrMut` and `DevicePtr`
[INFO] [stdout]  --> src/backend/cuda/raw_kernel.rs:7:22
[INFO] [stdout]   |
[INFO] [stdout] 7 | use cudarc::driver::{DevicePtr, DevicePtrMut};
[INFO] [stdout]   |                      ^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `get_dtype_info`
[INFO] [stdout]  --> src/builtin_kernels/cpu/elementwise.rs:2:34
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::dtype::{DTypeMapping, get_dtype_info};
[INFO] [stdout]   |                                  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::elementwise::*`
[INFO] [stdout]  --> src/builtin_kernels/cpu/fill.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use super::elementwise::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsView`
[INFO] [stdout]  --> src/builtin_kernels/cpu/fill.rs:7:34
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::view::{ArcTensorView, AsView, RcTensorView};
[INFO] [stdout]   |                                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `elementwise::*`
[INFO] [stdout]  --> src/builtin_kernels/cpu/mod.rs:4:9
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub use elementwise::*;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `fill::*`
[INFO] [stdout]  --> src/builtin_kernels/cpu/mod.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub use fill::*;
[INFO] [stdout]   |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::dtype::DTypeMapping`
[INFO] [stdout]  --> src/builtin_kernels/cuda/elementwise.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::dtype::DTypeMapping;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `parking_lot::ReentrantMutex`
[INFO] [stdout]  --> src/builtin_kernels/cuda/elementwise.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use parking_lot::ReentrantMutex;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::RefCell`
[INFO] [stdout]  --> src/builtin_kernels/cuda/elementwise.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::cell::RefCell;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::rc::Rc`
[INFO] [stdout]  --> src/builtin_kernels/cuda/elementwise.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::rc::Rc;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/builtin_kernels/cuda/elementwise.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::cuda::get_stream`
[INFO] [stdout]   --> src/builtin_kernels/cuda/fill.rs:12:21
[INFO] [stdout]    |
[INFO] [stdout] 12 |                 use crate::cuda::get_stream;
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 51 | impl_fill_for_view!(RcTensorView);
[INFO] [stdout]    | --------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_fill_for_view` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::device::Device`
[INFO] [stdout]   --> src/builtin_kernels/cuda/fill.rs:13:21
[INFO] [stdout]    |
[INFO] [stdout] 13 |                 use crate::device::Device;
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 51 | impl_fill_for_view!(RcTensorView);
[INFO] [stdout]    | --------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_fill_for_view` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::cuda::get_stream`
[INFO] [stdout]   --> src/builtin_kernels/cuda/fill.rs:33:21
[INFO] [stdout]    |
[INFO] [stdout] 33 |                 use crate::cuda::get_stream;
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 52 | impl_fill_for_view!(ArcTensorView);
[INFO] [stdout]    | ---------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_fill_for_view` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::device::Device`
[INFO] [stdout]   --> src/builtin_kernels/cuda/fill.rs:34:21
[INFO] [stdout]    |
[INFO] [stdout] 34 |                 use crate::device::Device;
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 52 | impl_fill_for_view!(ArcTensorView);
[INFO] [stdout]    | ---------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_fill_for_view` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `elementwise::*`
[INFO] [stdout]  --> src/builtin_kernels/cuda/mod.rs:4:9
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub use elementwise::*;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `fill::*`
[INFO] [stdout]  --> src/builtin_kernels/cuda/mod.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub use fill::*;
[INFO] [stdout]   |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `cpu::*`
[INFO] [stdout]  --> src/builtin_kernels/mod.rs:4:9
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub use cpu::*;
[INFO] [stdout]   |         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `cuda::*`
[INFO] [stdout]  --> src/builtin_kernels/mod.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub use cuda::*;
[INFO] [stdout]   |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Context`, `Result`, and `anyhow`
[INFO] [stdout]  --> src/dtype.rs:1:14
[INFO] [stdout]   |
[INFO] [stdout] 1 | use anyhow::{Context, Result, anyhow, bail};
[INFO] [stdout]   |              ^^^^^^^  ^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]    --> src/macros.rs:158:9
[INFO] [stdout]     |
[INFO] [stdout] 158 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `anyhow`
[INFO] [stdout]  --> src/tensor/construction.rs:6:31
[INFO] [stdout]   |
[INFO] [stdout] 6 | use anyhow::{Context, Result, anyhow, bail};
[INFO] [stdout]   |                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `cudarc::driver::DevicePtr`
[INFO] [stdout]  --> src/tensor/construction.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use cudarc::driver::DevicePtr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `get_dtype_info`
[INFO] [stdout]  --> src/tensor/conversion.rs:2:34
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::dtype::{DTypeMapping, get_dtype_info};
[INFO] [stdout]   |                                  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Result` and `anyhow`
[INFO] [stdout]  --> src/tensor/conversion.rs:4:23
[INFO] [stdout]   |
[INFO] [stdout] 4 | use anyhow::{Context, Result, anyhow, bail};
[INFO] [stdout]   |                       ^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/tensor/conversion.rs:9:22
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Context`, `Result`, `anyhow`, and `bail`
[INFO] [stdout]  --> src/tensor/handle.rs:4:14
[INFO] [stdout]   |
[INFO] [stdout] 4 | use anyhow::{Context, Result, anyhow, bail};
[INFO] [stdout]   |              ^^^^^^^  ^^^^^^  ^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `parking_lot::ReentrantMutex`
[INFO] [stdout]  --> src/tensor/handle_ops/conversion.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use parking_lot::ReentrantMutex;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::RefCell`
[INFO] [stdout]  --> src/tensor/handle_ops/conversion.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::cell::RefCell;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::rc::Rc`
[INFO] [stdout]  --> src/tensor/handle_ops/conversion.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::rc::Rc;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/tensor/handle_ops/conversion.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::dtype::DTypeMapping`
[INFO] [stdout]  --> src/tensor/handle_ops/creation.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::dtype::DTypeMapping;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Context`, `Result`, `anyhow`, and `bail`
[INFO] [stdout]  --> src/tensor/handle_ops/creation.rs:4:14
[INFO] [stdout]   |
[INFO] [stdout] 4 | use anyhow::{Context, Result, anyhow, bail};
[INFO] [stdout]   |              ^^^^^^^  ^^^^^^  ^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::Tensor`
[INFO] [stdout]  --> src/tensor/handle_ops/mod.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use super::Tensor;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Context`, `Result`, `anyhow`, and `bail`
[INFO] [stdout]  --> src/tensor/handle_ops/mod.rs:8:14
[INFO] [stdout]   |
[INFO] [stdout] 8 | use anyhow::{Context, Result, anyhow, bail};
[INFO] [stdout]   |              ^^^^^^^  ^^^^^^  ^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Context`, `Result`, and `anyhow`
[INFO] [stdout]  --> src/tensor/io.rs:1:14
[INFO] [stdout]   |
[INFO] [stdout] 1 | use anyhow::{Context, Result, anyhow, bail};
[INFO] [stdout]   |              ^^^^^^^  ^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RcTensor`
[INFO] [stdout]   --> src/tensor/io.rs:13:21
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::tensor::{RcTensor, Tensor};
[INFO] [stdout]    |                     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `access::*`
[INFO] [stdout]   --> src/tensor/mod.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub use access::*;
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `construction::*`
[INFO] [stdout]   --> src/tensor/mod.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub use construction::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `conversion::*`
[INFO] [stdout]   --> src/tensor/mod.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub use conversion::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: glob import doesn't reexport anything with visibility `pub` because no imported item is public enough
[INFO] [stdout]   --> src/tensor/mod.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub use data::*;
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the most public imported item is `pub(crate)`
[INFO] [stdout]   --> src/tensor/mod.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub use data::*;
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    = help: reduce the glob import's visibility or increase visibility of imported items
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Context` and `anyhow`
[INFO] [stdout]  --> src/view/broadcast.rs:2:14
[INFO] [stdout]   |
[INFO] [stdout] 2 | use anyhow::{Context, Result, anyhow, bail};
[INFO] [stdout]   |              ^^^^^^^          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Context`, `anyhow`, and `bail`
[INFO] [stdout]  --> src/view/trait_def.rs:5:14
[INFO] [stdout]   |
[INFO] [stdout] 5 | use anyhow::{Context, Result, anyhow, bail};
[INFO] [stdout]   |              ^^^^^^^          ^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `SliceArg` and `SliceInfo`
[INFO] [stdout]  --> src/view/views.rs:2:20
[INFO] [stdout]   |
[INFO] [stdout] 2 | use super::slice::{SliceArg, SliceInfo};
[INFO] [stdout]   |                    ^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::cuda`
[INFO] [stdout]  --> src/view/views.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::cuda;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::cuda::Stream`
[INFO] [stdout]  --> src/view/views.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::cuda::Stream;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::kernel::*`
[INFO] [stdout]  --> src/view/views.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::kernel::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `anyhow`
[INFO] [stdout]   --> src/view/views.rs:10:31
[INFO] [stdout]    |
[INFO] [stdout] 10 | use anyhow::{Context, Result, anyhow, bail};
[INFO] [stdout]    |                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `parking_lot::ReentrantMutexGuard`
[INFO] [stdout]   --> src/view/views.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use parking_lot::ReentrantMutexGuard;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RefMut` and `Ref`
[INFO] [stdout]   --> src/view/views.rs:15:17
[INFO] [stdout]    |
[INFO] [stdout] 15 | use std::cell::{Ref, RefMut};
[INFO] [stdout]    |                 ^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DerefMut` and `Deref`
[INFO] [stdout]   --> src/view/views.rs:16:16
[INFO] [stdout]    |
[INFO] [stdout] 16 | use std::ops::{Deref, DerefMut};
[INFO] [stdout]    |                ^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::rc::Rc`
[INFO] [stdout]   --> src/view/views.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use std::rc::Rc;
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Arc` and `Mutex`
[INFO] [stdout]   --> src/view/views.rs:18:17
[INFO] [stdout]    |
[INFO] [stdout] 18 | use std::sync::{Arc, Mutex};
[INFO] [stdout]    |                 ^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `is_available as cuda_available` and `set_device as set_current_device`
[INFO] [stdout]    --> src/view/views.rs:297:58
[INFO] [stdout]     |
[INFO] [stdout] 297 |         self, get_device_count as get_cuda_device_count, is_available as cuda_available,
[INFO] [stdout]     |                                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 298 |         set_device as set_current_device,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Context`, `Result`, `anyhow`, and `bail`
[INFO] [stdout]  --> src/view_ops/binary.rs:1:14
[INFO] [stdout]   |
[INFO] [stdout] 1 | use anyhow::{Context, Result, anyhow, bail};
[INFO] [stdout]   |              ^^^^^^^  ^^^^^^  ^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::cuda::is_available`
[INFO] [stdout]    --> src/view_ops/binary.rs:138:9
[INFO] [stdout]     |
[INFO] [stdout] 138 |     use crate::cuda::is_available;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Context`, `Result`, `anyhow`, and `bail`
[INFO] [stdout]  --> src/view_ops/copy.rs:1:14
[INFO] [stdout]   |
[INFO] [stdout] 1 | use anyhow::{Context, Result, anyhow, bail};
[INFO] [stdout]   |              ^^^^^^^  ^^^^^^  ^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]    --> src/view_ops/copy.rs:112:9
[INFO] [stdout]     |
[INFO] [stdout] 112 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::DTYPE_FLOAT32`
[INFO] [stdout]    --> src/view_ops/copy.rs:113:9
[INFO] [stdout]     |
[INFO] [stdout] 113 |     use crate::DTYPE_FLOAT32;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::cuda`
[INFO] [stdout]    --> src/view_ops/copy.rs:114:9
[INFO] [stdout]     |
[INFO] [stdout] 114 |     use crate::cuda;
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `get_device_count as get_cuda_device_count`, `is_available as cuda_available`, and `set_device as set_current_device`
[INFO] [stdout]    --> src/view_ops/copy.rs:116:9
[INFO] [stdout]     |
[INFO] [stdout] 116 |         get_device_count as get_cuda_device_count, is_available as cuda_available,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 117 |         set_device as set_current_device,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::s`
[INFO] [stdout]    --> src/view_ops/copy.rs:119:9
[INFO] [stdout]     |
[INFO] [stdout] 119 |     use crate::s;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rc_view_to_vec_f32`
[INFO] [stdout]    --> src/view_ops/copy.rs:122:44
[INFO] [stdout]     |
[INFO] [stdout] 122 |     use crate::view::{arc_view_to_vec_f32, rc_view_to_vec_f32};
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::dtype::get_dtype_info`
[INFO] [stdout]  --> src/view_ops/device_transfer.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::dtype::get_dtype_info;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::tensor::DataPtr`
[INFO] [stdout]  --> src/view_ops/device_transfer.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::tensor::DataPtr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Context`, `Result`, `anyhow`, and `bail`
[INFO] [stdout]  --> src/view_ops/device_transfer.rs:5:14
[INFO] [stdout]   |
[INFO] [stdout] 5 | use anyhow::{Context, Result, anyhow, bail};
[INFO] [stdout]   |              ^^^^^^^  ^^^^^^  ^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::DTYPE_FLOAT32`
[INFO] [stdout]   --> src/view_ops/device_transfer.rs:92:9
[INFO] [stdout]    |
[INFO] [stdout] 92 |     use crate::DTYPE_FLOAT32;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `get_device_count as get_cuda_device_count`, `is_available as cuda_available`, and `set_device as set_current_device`
[INFO] [stdout]   --> src/view_ops/device_transfer.rs:95:15
[INFO] [stdout]    |
[INFO] [stdout] 95 |         self, get_device_count as get_cuda_device_count, is_available as cuda_available,
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 96 |         set_device as set_current_device,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::s`
[INFO] [stdout]   --> src/view_ops/device_transfer.rs:98:9
[INFO] [stdout]    |
[INFO] [stdout] 98 |     use crate::s;
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Context`, `Result`, `anyhow`, and `bail`
[INFO] [stdout]  --> src/view_ops/matmul.rs:1:14
[INFO] [stdout]   |
[INFO] [stdout] 1 | use anyhow::{Context, Result, anyhow, bail};
[INFO] [stdout]   |              ^^^^^^^  ^^^^^^  ^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Context`, `Result`, `anyhow`, and `bail`
[INFO] [stdout]  --> src/view_ops/shape.rs:1:14
[INFO] [stdout]   |
[INFO] [stdout] 1 | use anyhow::{Context, Result, anyhow, bail};
[INFO] [stdout]   |              ^^^^^^^  ^^^^^^  ^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> src/dtype.rs:186:21
[INFO] [stdout]     |
[INFO] [stdout] 186 |                     return bail!("GPU add failed: {}", err);
[INFO] [stdout]     |                     ^^^^^^^--------------------------------
[INFO] [stdout]     |                     |      |
[INFO] [stdout]     |                     |      any code following this expression is unreachable
[INFO] [stdout]     |                     unreachable expression
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> src/dtype.rs:243:21
[INFO] [stdout]     |
[INFO] [stdout] 243 |                     return bail!("GPU add failed: {}", err);
[INFO] [stdout]     |                     ^^^^^^^--------------------------------
[INFO] [stdout]     |                     |      |
[INFO] [stdout]     |                     |      any code following this expression is unreachable
[INFO] [stdout]     |                     unreachable expression
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dev`
[INFO] [stdout]    --> src/dtype.rs:225:68
[INFO] [stdout]     |
[INFO] [stdout] 225 |         |a, a_strides, b, b_strides, c, c_strides, shape, ndim, n, dev, stream| {
[INFO] [stdout]     |                                                                    ^^^ help: if this is intentional, prefix it with an underscore: `_dev`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dev`
[INFO] [stdout]    --> src/dtype.rs:201:68
[INFO] [stdout]     |
[INFO] [stdout] 201 |         |a, a_strides, b, b_strides, c, c_strides, shape, ndim, n, dev, _| {
[INFO] [stdout]     |                                                                    ^^^ help: if this is intentional, prefix it with an underscore: `_dev`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dev`
[INFO] [stdout]    --> src/dtype.rs:168:68
[INFO] [stdout]     |
[INFO] [stdout] 168 |         |a, a_strides, b, b_strides, c, c_strides, shape, ndim, n, dev, stream| {
[INFO] [stdout]     |                                                                    ^^^ help: if this is intentional, prefix it with an underscore: `_dev`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dev`
[INFO] [stdout]    --> src/dtype.rs:143:68
[INFO] [stdout]     |
[INFO] [stdout] 143 |         |a, a_strides, b, b_strides, c, c_strides, shape, ndim, n, dev, _| {
[INFO] [stdout]     |                                                                    ^^^ help: if this is intentional, prefix it with an underscore: `_dev`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]   --> src/tensor/io.rs:87:14
[INFO] [stdout]    |
[INFO] [stdout] 87 |         _ => return bail!("Unsupported dtype: {}", tensor.dtype()),
[INFO] [stdout]    |              ^^^^^^^----------------------------------------------
[INFO] [stdout]    |              |      |
[INFO] [stdout]    |              |      any code following this expression is unreachable
[INFO] [stdout]    |              unreachable expression
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> src/dtype.rs:186:21
[INFO] [stdout]     |
[INFO] [stdout] 186 |                     return bail!("GPU add failed: {}", err);
[INFO] [stdout]     |                     ^^^^^^^--------------------------------
[INFO] [stdout]     |                     |      |
[INFO] [stdout]     |                     |      any code following this expression is unreachable
[INFO] [stdout]     |                     unreachable expression
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> src/dtype.rs:243:21
[INFO] [stdout]     |
[INFO] [stdout] 243 |                     return bail!("GPU add failed: {}", err);
[INFO] [stdout]     |                     ^^^^^^^--------------------------------
[INFO] [stdout]     |                     |      |
[INFO] [stdout]     |                     |      any code following this expression is unreachable
[INFO] [stdout]     |                     unreachable expression
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dev`
[INFO] [stdout]    --> src/dtype.rs:225:68
[INFO] [stdout]     |
[INFO] [stdout] 225 |         |a, a_strides, b, b_strides, c, c_strides, shape, ndim, n, dev, stream| {
[INFO] [stdout]     |                                                                    ^^^ help: if this is intentional, prefix it with an underscore: `_dev`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dev`
[INFO] [stdout]    --> src/dtype.rs:201:68
[INFO] [stdout]     |
[INFO] [stdout] 201 |         |a, a_strides, b, b_strides, c, c_strides, shape, ndim, n, dev, _| {
[INFO] [stdout]     |                                                                    ^^^ help: if this is intentional, prefix it with an underscore: `_dev`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dev`
[INFO] [stdout]    --> src/dtype.rs:168:68
[INFO] [stdout]     |
[INFO] [stdout] 168 |         |a, a_strides, b, b_strides, c, c_strides, shape, ndim, n, dev, stream| {
[INFO] [stdout]     |                                                                    ^^^ help: if this is intentional, prefix it with an underscore: `_dev`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dev`
[INFO] [stdout]    --> src/dtype.rs:143:68
[INFO] [stdout]     |
[INFO] [stdout] 143 |         |a, a_strides, b, b_strides, c, c_strides, shape, ndim, n, dev, _| {
[INFO] [stdout]     |                                                                    ^^^ help: if this is intentional, prefix it with an underscore: `_dev`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]   --> src/tensor/io.rs:87:14
[INFO] [stdout]    |
[INFO] [stdout] 87 |         _ => return bail!("Unsupported dtype: {}", tensor.dtype()),
[INFO] [stdout]    |              ^^^^^^^----------------------------------------------
[INFO] [stdout]    |              |      |
[INFO] [stdout]    |              |      any code following this expression is unreachable
[INFO] [stdout]    |              unreachable expression
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `placeholder`
[INFO] [stdout]    --> src/backend/cuda/elementwise_kernel.rs:194:21
[INFO] [stdout]     |
[INFO] [stdout] 194 |                 let placeholder = caps[1].to_string();
[INFO] [stdout]     |                     ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_placeholder`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `elem_size`
[INFO] [stdout]   --> src/tensor/construction.rs:38:13
[INFO] [stdout]    |
[INFO] [stdout] 38 |         let elem_size = std::mem::size_of::<T>();
[INFO] [stdout]    |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elem_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/view/trait_def.rs:16:13
[INFO] [stdout]    |
[INFO] [stdout] 16 |         let mut axes: Vec<usize> = (0..self.shape().len()).rev().collect();
[INFO] [stdout]    |             ----^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::intrinsics::transmute` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/view/views.rs:191:17
[INFO] [stdout]     |
[INFO] [stdout] 191 |                 std::mem::transmute(slice)
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 251 | impl_tensor_view!(RcTensorView, RcTensor);
[INFO] [stdout]     | ----------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/view/views.rs:184:13
[INFO] [stdout]     |
[INFO] [stdout] 184 |             unsafe fn as_gpu_slice(&self) -> &CudaSlice<u8> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 251 | impl_tensor_view!(RcTensorView, RcTensor);
[INFO] [stdout]     | ----------------------------------------- in this macro invocation
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: `#[warn(unsafe_op_in_unsafe_fn)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout]     = note: this warning originates in the macro `impl_tensor_view` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::intrinsics::transmute` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/view/views.rs:200:17
[INFO] [stdout]     |
[INFO] [stdout] 200 |                 std::mem::transmute(slice)
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 251 | impl_tensor_view!(RcTensorView, RcTensor);
[INFO] [stdout]     | ----------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/view/views.rs:196:13
[INFO] [stdout]     |
[INFO] [stdout] 196 |             unsafe fn as_gpu_slice_mut(&mut self) -> &mut CudaSlice<u8> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 251 | impl_tensor_view!(RcTensorView, RcTensor);
[INFO] [stdout]     | ----------------------------------------- in this macro invocation
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `impl_tensor_view` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::intrinsics::transmute` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/view/views.rs:211:17
[INFO] [stdout]     |
[INFO] [stdout] 211 |                 std::mem::transmute(view)
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 251 | impl_tensor_view!(RcTensorView, RcTensor);
[INFO] [stdout]     | ----------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/view/views.rs:204:13
[INFO] [stdout]     |
[INFO] [stdout] 204 |             unsafe fn as_gpu_view(&self) -> CudaView<'_, u8> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 251 | impl_tensor_view!(RcTensorView, RcTensor);
[INFO] [stdout]     | ----------------------------------------- in this macro invocation
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `impl_tensor_view` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `len`
[INFO] [stdout]    --> src/view/views.rs:209:21
[INFO] [stdout]     |
[INFO] [stdout] 209 |                 let len = self.num_bytes(); // 使用 num_bytes 获取实际字节数
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] ...
[INFO] [stdout] 251 | impl_tensor_view!(RcTensorView, RcTensor);
[INFO] [stdout]     | ----------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] help: `len` is captured in macro and introduced a unused variable
[INFO] [stdout]    --> src/view/views.rs:209:21
[INFO] [stdout]     |
[INFO] [stdout] 209 |                 let len = self.num_bytes(); // 使用 num_bytes 获取实际字节数
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] ...
[INFO] [stdout] 251 | impl_tensor_view!(RcTensorView, RcTensor);
[INFO] [stdout]     | ----------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this warning originates in the macro `impl_tensor_view` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::intrinsics::transmute` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/view/views.rs:222:17
[INFO] [stdout]     |
[INFO] [stdout] 222 |                 std::mem::transmute(view)
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 251 | impl_tensor_view!(RcTensorView, RcTensor);
[INFO] [stdout]     | ----------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/view/views.rs:215:13
[INFO] [stdout]     |
[INFO] [stdout] 215 |             unsafe fn as_gpu_view_mut(&self) -> CudaViewMut<'_, u8> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 251 | impl_tensor_view!(RcTensorView, RcTensor);
[INFO] [stdout]     | ----------------------------------------- in this macro invocation
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `impl_tensor_view` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `len`
[INFO] [stdout]    --> src/view/views.rs:220:21
[INFO] [stdout]     |
[INFO] [stdout] 220 |                 let len = self.num_bytes();
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] ...
[INFO] [stdout] 251 | impl_tensor_view!(RcTensorView, RcTensor);
[INFO] [stdout]     | ----------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] help: `len` is captured in macro and introduced a unused variable
[INFO] [stdout]    --> src/view/views.rs:220:21
[INFO] [stdout]     |
[INFO] [stdout] 220 |                 let len = self.num_bytes();
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] ...
[INFO] [stdout] 251 | impl_tensor_view!(RcTensorView, RcTensor);
[INFO] [stdout]     | ----------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this warning originates in the macro `impl_tensor_view` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::mut_ptr::<impl *mut T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/view/views.rs:229:17
[INFO] [stdout]     |
[INFO] [stdout] 229 |                 (base_ptr as *mut u8).add(*self.offset())
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 251 | impl_tensor_view!(RcTensorView, RcTensor);
[INFO] [stdout]     | ----------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/view/views.rs:225:13
[INFO] [stdout]     |
[INFO] [stdout] 225 |             unsafe fn raw_data_ptr(&self) -> *mut u8 {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 251 | impl_tensor_view!(RcTensorView, RcTensor);
[INFO] [stdout]     | ----------------------------------------- in this macro invocation
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `impl_tensor_view` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::intrinsics::transmute` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/view/views.rs:191:17
[INFO] [stdout]     |
[INFO] [stdout] 191 |                 std::mem::transmute(slice)
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 252 | impl_tensor_view!(ArcTensorView, ArcTensor);
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/view/views.rs:184:13
[INFO] [stdout]     |
[INFO] [stdout] 184 |             unsafe fn as_gpu_slice(&self) -> &CudaSlice<u8> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 252 | impl_tensor_view!(ArcTensorView, ArcTensor);
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `impl_tensor_view` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::intrinsics::transmute` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/view/views.rs:200:17
[INFO] [stdout]     |
[INFO] [stdout] 200 |                 std::mem::transmute(slice)
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 252 | impl_tensor_view!(ArcTensorView, ArcTensor);
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/view/views.rs:196:13
[INFO] [stdout]     |
[INFO] [stdout] 196 |             unsafe fn as_gpu_slice_mut(&mut self) -> &mut CudaSlice<u8> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 252 | impl_tensor_view!(ArcTensorView, ArcTensor);
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `impl_tensor_view` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::intrinsics::transmute` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/view/views.rs:211:17
[INFO] [stdout]     |
[INFO] [stdout] 211 |                 std::mem::transmute(view)
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 252 | impl_tensor_view!(ArcTensorView, ArcTensor);
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/view/views.rs:204:13
[INFO] [stdout]     |
[INFO] [stdout] 204 |             unsafe fn as_gpu_view(&self) -> CudaView<'_, u8> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 252 | impl_tensor_view!(ArcTensorView, ArcTensor);
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `impl_tensor_view` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `len`
[INFO] [stdout]    --> src/view/views.rs:209:21
[INFO] [stdout]     |
[INFO] [stdout] 209 |                 let len = self.num_bytes(); // 使用 num_bytes 获取实际字节数
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] ...
[INFO] [stdout] 252 | impl_tensor_view!(ArcTensorView, ArcTensor);
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] help: `len` is captured in macro and introduced a unused variable
[INFO] [stdout]    --> src/view/views.rs:209:21
[INFO] [stdout]     |
[INFO] [stdout] 209 |                 let len = self.num_bytes(); // 使用 num_bytes 获取实际字节数
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] ...
[INFO] [stdout] 252 | impl_tensor_view!(ArcTensorView, ArcTensor);
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this warning originates in the macro `impl_tensor_view` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::intrinsics::transmute` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/view/views.rs:222:17
[INFO] [stdout]     |
[INFO] [stdout] 222 |                 std::mem::transmute(view)
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 252 | impl_tensor_view!(ArcTensorView, ArcTensor);
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/view/views.rs:215:13
[INFO] [stdout]     |
[INFO] [stdout] 215 |             unsafe fn as_gpu_view_mut(&self) -> CudaViewMut<'_, u8> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 252 | impl_tensor_view!(ArcTensorView, ArcTensor);
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `impl_tensor_view` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `len`
[INFO] [stdout]    --> src/view/views.rs:220:21
[INFO] [stdout]     |
[INFO] [stdout] 220 |                 let len = self.num_bytes();
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] ...
[INFO] [stdout] 252 | impl_tensor_view!(ArcTensorView, ArcTensor);
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] help: `len` is captured in macro and introduced a unused variable
[INFO] [stdout]    --> src/view/views.rs:220:21
[INFO] [stdout]     |
[INFO] [stdout] 220 |                 let len = self.num_bytes();
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] ...
[INFO] [stdout] 252 | impl_tensor_view!(ArcTensorView, ArcTensor);
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this warning originates in the macro `impl_tensor_view` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::mut_ptr::<impl *mut T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/view/views.rs:229:17
[INFO] [stdout]     |
[INFO] [stdout] 229 |                 (base_ptr as *mut u8).add(*self.offset())
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 252 | impl_tensor_view!(ArcTensorView, ArcTensor);
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/view/views.rs:225:13
[INFO] [stdout]     |
[INFO] [stdout] 225 |             unsafe fn raw_data_ptr(&self) -> *mut u8 {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 252 | impl_tensor_view!(ArcTensorView, ArcTensor);
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `impl_tensor_view` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `complete` is never used
[INFO] [stdout]   --> src/backend/cpu/event.rs:29:8
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl CpuEventInner {
[INFO] [stdout]    | ------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 29 |     fn complete(&self) {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `module` is never read
[INFO] [stdout]   --> src/backend/cuda/raw_kernel.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub struct RawKernel {
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] 19 |     module: Arc<cudarc::driver::CudaModule>,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `init_device_strides` is never used
[INFO] [stdout]   --> src/tensor/construction.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl Tensor {
[INFO] [stdout]    | ----------- method in this implementation
[INFO] [stdout] 11 |     #[cfg(feature = "cuda")]
[INFO] [stdout] 12 |     fn init_device_strides(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `into_rc_raw` and `into_arc_raw` are never used
[INFO] [stdout]   --> src/tensor/conversion.rs:63:19
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl Tensor {
[INFO] [stdout]    | ----------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 63 |     pub(crate) fn into_rc_raw(self) -> Rc<RefCell<Self>> {
[INFO] [stdout]    |                   ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 67 |     pub(crate) fn into_arc_raw(self) -> Arc<ReentrantMutex<RefCell<Tensor>>> {
[INFO] [stdout]    |                   ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_gpu` is never used
[INFO] [stdout]   --> src/tensor/data.rs:31:19
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl DataPtr {
[INFO] [stdout]    | ------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 31 |     pub(crate) fn is_gpu(&self) -> bool {
[INFO] [stdout]    |                   ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute_broadcast_strides` is never used
[INFO] [stdout]   --> src/view/broadcast.rs:22:4
[INFO] [stdout]    |
[INFO] [stdout] 22 | fn compute_broadcast_strides(
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `lock_rc` is never used
[INFO] [stdout]   --> src/view/views.rs:21:4
[INFO] [stdout]    |
[INFO] [stdout] 21 | fn lock_rc(handle: &RcTensor) -> &RefCell<Tensor> {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `lock_arc` is never used
[INFO] [stdout]   --> src/view/views.rs:26:4
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn lock_arc(handle: &ArcTensor) -> parking_lot::ReentrantMutexGuard<RefCell<Tensor>> {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `into_rc` is never used
[INFO] [stdout]   --> src/view/views.rs:30:4
[INFO] [stdout]    |
[INFO] [stdout] 30 | fn into_rc(t: Tensor) -> RcTensor {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `into_arc` is never used
[INFO] [stdout]   --> src/view/views.rs:33:4
[INFO] [stdout]    |
[INFO] [stdout] 33 | fn into_arc(t: Tensor) -> ArcTensor {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/backend/cuda/elementwise_kernel.rs:403:9
[INFO] [stdout]     |
[INFO] [stdout] 403 |         stream.synchronize();
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 403 |         let _ = stream.synchronize();
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/tensor/handle.rs:43:17
[INFO] [stdout]    |
[INFO] [stdout] 43 |     pub fn lock(&self) -> parking_lot::ReentrantMutexGuard<RefCell<Tensor>> {
[INFO] [stdout]    |                 ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 43 |     pub fn lock(&self) -> parking_lot::ReentrantMutexGuard<'_, RefCell<Tensor>> {
[INFO] [stdout]    |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `T` should have a snake case name
[INFO] [stdout]   --> src/tensor/handle_ops/mod.rs:34:20
[INFO] [stdout]    |
[INFO] [stdout] 34 |               pub fn T(&self) -> anyhow::Result<$view> {
[INFO] [stdout]    |                      ^ help: convert the identifier to snake case: `t`
[INFO] [stdout] ...
[INFO] [stdout] 69 | / impl_tensor_wrapper!(
[INFO] [stdout] 70 | |     RcTensor,
[INFO] [stdout] 71 | |     RcTensorView,
[INFO] [stdout] 72 | |     Tensor::into_rc_raw // 原始转换（用于需要原始句柄的场合，但当前未使用）
[INFO] [stdout] 73 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout]    = note: this warning originates in the macro `impl_tensor_wrapper` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `T` should have a snake case name
[INFO] [stdout]   --> src/tensor/handle_ops/mod.rs:34:20
[INFO] [stdout]    |
[INFO] [stdout] 34 |             pub fn T(&self) -> anyhow::Result<$view> {
[INFO] [stdout]    |                    ^ help: convert the identifier to snake case: `t`
[INFO] [stdout] ...
[INFO] [stdout] 76 | impl_tensor_wrapper!(ArcTensor, ArcTensorView, Tensor::into_arc_raw);
[INFO] [stdout]    | -------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_tensor_wrapper` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait method `T` should have a snake case name
[INFO] [stdout]   --> src/view/trait_def.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout] 15 |     fn T(&self) -> Result<Self> {
[INFO] [stdout]    |        ^ help: convert the identifier to snake case: `t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/view/views.rs:26:21
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn lock_arc(handle: &ArcTensor) -> parking_lot::ReentrantMutexGuard<RefCell<Tensor>> {
[INFO] [stdout]    |                     ^^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn lock_arc(handle: &ArcTensor) -> parking_lot::ReentrantMutexGuard<'_, RefCell<Tensor>> {
[INFO] [stdout]    |                                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/view/views.rs:251:1
[INFO] [stdout]     |
[INFO] [stdout] 251 | impl_tensor_view!(RcTensorView, RcTensor);
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 251 | let _ = impl_tensor_view!(RcTensorView, RcTensor);
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/view/views.rs:252:1
[INFO] [stdout]     |
[INFO] [stdout] 252 | impl_tensor_view!(ArcTensorView, ArcTensor);
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 252 | let _ = impl_tensor_view!(ArcTensorView, ArcTensor);
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/view/views.rs:287:17
[INFO] [stdout]     |
[INFO] [stdout] 287 |     pub fn lock(&self) -> parking_lot::ReentrantMutexGuard<RefCell<Tensor>> {
[INFO] [stdout]     |                 ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 287 |     pub fn lock(&self) -> parking_lot::ReentrantMutexGuard<'_, RefCell<Tensor>> {
[INFO] [stdout]     |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0133`.
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `placeholder`
[INFO] [stdout]    --> src/backend/cuda/elementwise_kernel.rs:194:21
[INFO] [stdout]     |
[INFO] [stdout] 194 |                 let placeholder = caps[1].to_string();
[INFO] [stdout]     |                     ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_placeholder`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `elem_size`
[INFO] [stdout]   --> src/tensor/construction.rs:38:13
[INFO] [stdout]    |
[INFO] [stdout] 38 |         let elem_size = std::mem::size_of::<T>();
[INFO] [stdout]    |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elem_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/view/trait_def.rs:16:13
[INFO] [stdout]    |
[INFO] [stdout] 16 |         let mut axes: Vec<usize> = (0..self.shape().len()).rev().collect();
[INFO] [stdout]    |             ----^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::intrinsics::transmute` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/view/views.rs:191:17
[INFO] [stdout]     |
[INFO] [stdout] 191 |                 std::mem::transmute(slice)
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 251 | impl_tensor_view!(RcTensorView, RcTensor);
[INFO] [stdout]     | ----------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/view/views.rs:184:13
[INFO] [stdout]     |
[INFO] [stdout] 184 |             unsafe fn as_gpu_slice(&self) -> &CudaSlice<u8> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 251 | impl_tensor_view!(RcTensorView, RcTensor);
[INFO] [stdout]     | ----------------------------------------- in this macro invocation
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: `#[warn(unsafe_op_in_unsafe_fn)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout]     = note: this warning originates in the macro `impl_tensor_view` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::intrinsics::transmute` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/view/views.rs:200:17
[INFO] [stdout]     |
[INFO] [stdout] 200 |                 std::mem::transmute(slice)
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 251 | impl_tensor_view!(RcTensorView, RcTensor);
[INFO] [stdout]     | ----------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/view/views.rs:196:13
[INFO] [stdout]     |
[INFO] [stdout] 196 |             unsafe fn as_gpu_slice_mut(&mut self) -> &mut CudaSlice<u8> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 251 | impl_tensor_view!(RcTensorView, RcTensor);
[INFO] [stdout]     | ----------------------------------------- in this macro invocation
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `impl_tensor_view` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::intrinsics::transmute` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/view/views.rs:211:17
[INFO] [stdout]     |
[INFO] [stdout] 211 |                 std::mem::transmute(view)
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 251 | impl_tensor_view!(RcTensorView, RcTensor);
[INFO] [stdout]     | ----------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/view/views.rs:204:13
[INFO] [stdout]     |
[INFO] [stdout] 204 |             unsafe fn as_gpu_view(&self) -> CudaView<'_, u8> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 251 | impl_tensor_view!(RcTensorView, RcTensor);
[INFO] [stdout]     | ----------------------------------------- in this macro invocation
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `impl_tensor_view` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `len`
[INFO] [stdout]    --> src/view/views.rs:209:21
[INFO] [stdout]     |
[INFO] [stdout] 209 |                 let len = self.num_bytes(); // 使用 num_bytes 获取实际字节数
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] ...
[INFO] [stdout] 251 | impl_tensor_view!(RcTensorView, RcTensor);
[INFO] [stdout]     | ----------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] help: `len` is captured in macro and introduced a unused variable
[INFO] [stdout]    --> src/view/views.rs:209:21
[INFO] [stdout]     |
[INFO] [stdout] 209 |                 let len = self.num_bytes(); // 使用 num_bytes 获取实际字节数
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] ...
[INFO] [stdout] 251 | impl_tensor_view!(RcTensorView, RcTensor);
[INFO] [stdout]     | ----------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this warning originates in the macro `impl_tensor_view` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::intrinsics::transmute` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/view/views.rs:222:17
[INFO] [stdout]     |
[INFO] [stdout] 222 |                 std::mem::transmute(view)
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 251 | impl_tensor_view!(RcTensorView, RcTensor);
[INFO] [stdout]     | ----------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/view/views.rs:215:13
[INFO] [stdout]     |
[INFO] [stdout] 215 |             unsafe fn as_gpu_view_mut(&self) -> CudaViewMut<'_, u8> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 251 | impl_tensor_view!(RcTensorView, RcTensor);
[INFO] [stdout]     | ----------------------------------------- in this macro invocation
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `impl_tensor_view` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `len`
[INFO] [stdout]    --> src/view/views.rs:220:21
[INFO] [stdout]     |
[INFO] [stdout] 220 |                 let len = self.num_bytes();
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] ...
[INFO] [stdout] 251 | impl_tensor_view!(RcTensorView, RcTensor);
[INFO] [stdout]     | ----------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] help: `len` is captured in macro and introduced a unused variable
[INFO] [stdout]    --> src/view/views.rs:220:21
[INFO] [stdout]     |
[INFO] [stdout] 220 |                 let len = self.num_bytes();
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] ...
[INFO] [stdout] 251 | impl_tensor_view!(RcTensorView, RcTensor);
[INFO] [stdout]     | ----------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this warning originates in the macro `impl_tensor_view` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::mut_ptr::<impl *mut T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/view/views.rs:229:17
[INFO] [stdout]     |
[INFO] [stdout] 229 |                 (base_ptr as *mut u8).add(*self.offset())
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 251 | impl_tensor_view!(RcTensorView, RcTensor);
[INFO] [stdout]     | ----------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/view/views.rs:225:13
[INFO] [stdout]     |
[INFO] [stdout] 225 |             unsafe fn raw_data_ptr(&self) -> *mut u8 {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 251 | impl_tensor_view!(RcTensorView, RcTensor);
[INFO] [stdout]     | ----------------------------------------- in this macro invocation
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `impl_tensor_view` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::intrinsics::transmute` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/view/views.rs:191:17
[INFO] [stdout]     |
[INFO] [stdout] 191 |                 std::mem::transmute(slice)
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 252 | impl_tensor_view!(ArcTensorView, ArcTensor);
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/view/views.rs:184:13
[INFO] [stdout]     |
[INFO] [stdout] 184 |             unsafe fn as_gpu_slice(&self) -> &CudaSlice<u8> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 252 | impl_tensor_view!(ArcTensorView, ArcTensor);
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `impl_tensor_view` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::intrinsics::transmute` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/view/views.rs:200:17
[INFO] [stdout]     |
[INFO] [stdout] 200 |                 std::mem::transmute(slice)
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 252 | impl_tensor_view!(ArcTensorView, ArcTensor);
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/view/views.rs:196:13
[INFO] [stdout]     |
[INFO] [stdout] 196 |             unsafe fn as_gpu_slice_mut(&mut self) -> &mut CudaSlice<u8> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 252 | impl_tensor_view!(ArcTensorView, ArcTensor);
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `impl_tensor_view` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::intrinsics::transmute` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/view/views.rs:211:17
[INFO] [stdout]     |
[INFO] [stdout] 211 |                 std::mem::transmute(view)
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 252 | impl_tensor_view!(ArcTensorView, ArcTensor);
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/view/views.rs:204:13
[INFO] [stdout]     |
[INFO] [stdout] 204 |             unsafe fn as_gpu_view(&self) -> CudaView<'_, u8> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 252 | impl_tensor_view!(ArcTensorView, ArcTensor);
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `impl_tensor_view` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `len`
[INFO] [stdout]    --> src/view/views.rs:209:21
[INFO] [stdout]     |
[INFO] [stdout] 209 |                 let len = self.num_bytes(); // 使用 num_bytes 获取实际字节数
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] ...
[INFO] [stdout] 252 | impl_tensor_view!(ArcTensorView, ArcTensor);
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] help: `len` is captured in macro and introduced a unused variable
[INFO] [stdout]    --> src/view/views.rs:209:21
[INFO] [stdout]     |
[INFO] [stdout] 209 |                 let len = self.num_bytes(); // 使用 num_bytes 获取实际字节数
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] ...
[INFO] [stdout] 252 | impl_tensor_view!(ArcTensorView, ArcTensor);
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this warning originates in the macro `impl_tensor_view` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::intrinsics::transmute` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/view/views.rs:222:17
[INFO] [stdout]     |
[INFO] [stdout] 222 |                 std::mem::transmute(view)
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 252 | impl_tensor_view!(ArcTensorView, ArcTensor);
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/view/views.rs:215:13
[INFO] [stdout]     |
[INFO] [stdout] 215 |             unsafe fn as_gpu_view_mut(&self) -> CudaViewMut<'_, u8> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 252 | impl_tensor_view!(ArcTensorView, ArcTensor);
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `impl_tensor_view` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `len`
[INFO] [stdout]    --> src/view/views.rs:220:21
[INFO] [stdout]     |
[INFO] [stdout] 220 |                 let len = self.num_bytes();
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] ...
[INFO] [stdout] 252 | impl_tensor_view!(ArcTensorView, ArcTensor);
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] help: `len` is captured in macro and introduced a unused variable
[INFO] [stdout]    --> src/view/views.rs:220:21
[INFO] [stdout]     |
[INFO] [stdout] 220 |                 let len = self.num_bytes();
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] ...
[INFO] [stdout] 252 | impl_tensor_view!(ArcTensorView, ArcTensor);
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this warning originates in the macro `impl_tensor_view` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::mut_ptr::<impl *mut T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/view/views.rs:229:17
[INFO] [stdout]     |
[INFO] [stdout] 229 |                 (base_ptr as *mut u8).add(*self.offset())
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 252 | impl_tensor_view!(ArcTensorView, ArcTensor);
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/view/views.rs:225:13
[INFO] [stdout]     |
[INFO] [stdout] 225 |             unsafe fn raw_data_ptr(&self) -> *mut u8 {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 252 | impl_tensor_view!(ArcTensorView, ArcTensor);
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `impl_tensor_view` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/view/views.rs:368:13
[INFO] [stdout]     |
[INFO] [stdout] 368 |         let mut a_view = a.into_arc().as_view();
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/view_ops/binary.rs:319:13
[INFO] [stdout]     |
[INFO] [stdout] 319 |         let mut a2 = Tensor::new_cpu_from_f32(vec![1.0, 2.0, 3.0, 4.0], vec![2, 2]);
[INFO] [stdout]     |             ----^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/view_ops/binary.rs:335:13
[INFO] [stdout]     |
[INFO] [stdout] 335 |         let mut a4 = Tensor::new_cpu_from_f32(vec![1.0, 2.0, 3.0, 4.0], vec![2, 2]);
[INFO] [stdout]     |             ----^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/view_ops/binary.rs:354:13
[INFO] [stdout]     |
[INFO] [stdout] 354 |         let mut a6 = Tensor::new_cpu_from_f32(vec![1.0, 2.0, 3.0, 4.0], vec![2, 2]);
[INFO] [stdout]     |             ----^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/view_ops/binary.rs:356:13
[INFO] [stdout]     |
[INFO] [stdout] 356 |         let mut a6_view = a6.into_rc().as_view();
[INFO] [stdout]     |             ----^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/view_ops/shape.rs:299:13
[INFO] [stdout]     |
[INFO] [stdout] 299 |         let mut a_view = a.into_rc().as_view();
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/view_ops/shape.rs:310:13
[INFO] [stdout]     |
[INFO] [stdout] 310 |         let mut a_view = a.into_rc().as_view();
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/view_ops/shape.rs:330:13
[INFO] [stdout]     |
[INFO] [stdout] 330 |         let mut a_view = a.into_arc().as_view();
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `complete` is never used
[INFO] [stdout]   --> src/backend/cpu/event.rs:29:8
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl CpuEventInner {
[INFO] [stdout]    | ------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 29 |     fn complete(&self) {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `module` is never read
[INFO] [stdout]   --> src/backend/cuda/raw_kernel.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub struct RawKernel {
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] 19 |     module: Arc<cudarc::driver::CudaModule>,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `init_device_strides` is never used
[INFO] [stdout]   --> src/tensor/construction.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl Tensor {
[INFO] [stdout]    | ----------- method in this implementation
[INFO] [stdout] 11 |     #[cfg(feature = "cuda")]
[INFO] [stdout] 12 |     fn init_device_strides(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `into_rc_raw` and `into_arc_raw` are never used
[INFO] [stdout]   --> src/tensor/conversion.rs:63:19
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl Tensor {
[INFO] [stdout]    | ----------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 63 |     pub(crate) fn into_rc_raw(self) -> Rc<RefCell<Self>> {
[INFO] [stdout]    |                   ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 67 |     pub(crate) fn into_arc_raw(self) -> Arc<ReentrantMutex<RefCell<Tensor>>> {
[INFO] [stdout]    |                   ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_gpu` is never used
[INFO] [stdout]   --> src/tensor/data.rs:31:19
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl DataPtr {
[INFO] [stdout]    | ------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 31 |     pub(crate) fn is_gpu(&self) -> bool {
[INFO] [stdout]    |                   ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute_broadcast_strides` is never used
[INFO] [stdout]   --> src/view/broadcast.rs:22:4
[INFO] [stdout]    |
[INFO] [stdout] 22 | fn compute_broadcast_strides(
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `lock_rc` is never used
[INFO] [stdout]   --> src/view/views.rs:21:4
[INFO] [stdout]    |
[INFO] [stdout] 21 | fn lock_rc(handle: &RcTensor) -> &RefCell<Tensor> {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `lock_arc` is never used
[INFO] [stdout]   --> src/view/views.rs:26:4
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn lock_arc(handle: &ArcTensor) -> parking_lot::ReentrantMutexGuard<RefCell<Tensor>> {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `into_rc` is never used
[INFO] [stdout]   --> src/view/views.rs:30:4
[INFO] [stdout]    |
[INFO] [stdout] 30 | fn into_rc(t: Tensor) -> RcTensor {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `into_arc` is never used
[INFO] [stdout]   --> src/view/views.rs:33:4
[INFO] [stdout]    |
[INFO] [stdout] 33 | fn into_arc(t: Tensor) -> ArcTensor {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/backend/cuda/elementwise_kernel.rs:403:9
[INFO] [stdout]     |
[INFO] [stdout] 403 |         stream.synchronize();
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 403 |         let _ = stream.synchronize();
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/tensor/handle.rs:43:17
[INFO] [stdout]    |
[INFO] [stdout] 43 |     pub fn lock(&self) -> parking_lot::ReentrantMutexGuard<RefCell<Tensor>> {
[INFO] [stdout]    |                 ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 43 |     pub fn lock(&self) -> parking_lot::ReentrantMutexGuard<'_, RefCell<Tensor>> {
[INFO] [stdout]    |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `T` should have a snake case name
[INFO] [stdout]   --> src/tensor/handle_ops/mod.rs:34:20
[INFO] [stdout]    |
[INFO] [stdout] 34 |               pub fn T(&self) -> anyhow::Result<$view> {
[INFO] [stdout]    |                      ^ help: convert the identifier to snake case: `t`
[INFO] [stdout] ...
[INFO] [stdout] 69 | / impl_tensor_wrapper!(
[INFO] [stdout] 70 | |     RcTensor,
[INFO] [stdout] 71 | |     RcTensorView,
[INFO] [stdout] 72 | |     Tensor::into_rc_raw // 原始转换（用于需要原始句柄的场合，但当前未使用）
[INFO] [stdout] 73 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout]    = note: this warning originates in the macro `impl_tensor_wrapper` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `T` should have a snake case name
[INFO] [stdout]   --> src/tensor/handle_ops/mod.rs:34:20
[INFO] [stdout]    |
[INFO] [stdout] 34 |             pub fn T(&self) -> anyhow::Result<$view> {
[INFO] [stdout]    |                    ^ help: convert the identifier to snake case: `t`
[INFO] [stdout] ...
[INFO] [stdout] 76 | impl_tensor_wrapper!(ArcTensor, ArcTensorView, Tensor::into_arc_raw);
[INFO] [stdout]    | -------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_tensor_wrapper` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait method `T` should have a snake case name
[INFO] [stdout]   --> src/view/trait_def.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout] 15 |     fn T(&self) -> Result<Self> {
[INFO] [stdout]    |        ^ help: convert the identifier to snake case: `t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/view/views.rs:26:21
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn lock_arc(handle: &ArcTensor) -> parking_lot::ReentrantMutexGuard<RefCell<Tensor>> {
[INFO] [stdout]    |                     ^^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn lock_arc(handle: &ArcTensor) -> parking_lot::ReentrantMutexGuard<'_, RefCell<Tensor>> {
[INFO] [stdout]    |                                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/view/views.rs:251:1
[INFO] [stdout]     |
[INFO] [stdout] 251 | impl_tensor_view!(RcTensorView, RcTensor);
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 251 | let _ = impl_tensor_view!(RcTensorView, RcTensor);
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/view/views.rs:252:1
[INFO] [stdout]     |
[INFO] [stdout] 252 | impl_tensor_view!(ArcTensorView, ArcTensor);
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 252 | let _ = impl_tensor_view!(ArcTensorView, ArcTensor);
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/view/views.rs:287:17
[INFO] [stdout]     |
[INFO] [stdout] 287 |     pub fn lock(&self) -> parking_lot::ReentrantMutexGuard<RefCell<Tensor>> {
[INFO] [stdout]     |                 ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 287 |     pub fn lock(&self) -> parking_lot::ReentrantMutexGuard<'_, RefCell<Tensor>> {
[INFO] [stdout]     |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/view/views.rs:427:9
[INFO] [stdout]     |
[INFO] [stdout] 427 |         cuda::set_device(1);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 427 |         let _ = cuda::set_device(1);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/view_ops/binary.rs:208:9
[INFO] [stdout]     |
[INFO] [stdout] 208 |         cuda::set_device(0);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 208 |         let _ = cuda::set_device(0);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/view_ops/binary.rs:262:9
[INFO] [stdout]     |
[INFO] [stdout] 262 |         cuda::set_device(0);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 262 |         let _ = cuda::set_device(0);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/view_ops/binary.rs:287:9
[INFO] [stdout]     |
[INFO] [stdout] 287 |         cuda::set_device(0);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 287 |         let _ = cuda::set_device(0);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_T` should have a snake case name
[INFO] [stdout]    --> src/view_ops/shape.rs:369:8
[INFO] [stdout]     |
[INFO] [stdout] 369 |     fn test_T() {
[INFO] [stdout]     |        ^^^^^^ help: convert the identifier to snake case: `test_t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0133`.
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 34.27s
[INFO] running `Command { std: "docker" "inspect" "16dc4018294dfcec92f9216169185ea4f7acb8d79d84b6b7106e8f8529d5c035", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "16dc4018294dfcec92f9216169185ea4f7acb8d79d84b6b7106e8f8529d5c035", kill_on_drop: false }`
[INFO] [stdout] 16dc4018294dfcec92f9216169185ea4f7acb8d79d84b6b7106e8f8529d5c035
