[INFO] fetching crate dfdx 0.9.0... [INFO] checking dfdx-0.9.0 against try#7f168b18704203996d3698515c88a036a9300946 for pr-102713 [INFO] extracting crate dfdx 0.9.0 into /workspace/builds/worker-3/source [INFO] validating manifest of crates.io crate dfdx 0.9.0 on toolchain 7f168b18704203996d3698515c88a036a9300946 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+7f168b18704203996d3698515c88a036a9300946" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate dfdx 0.9.0 [INFO] finished tweaking crates.io crate dfdx 0.9.0 [INFO] tweaked toml for crates.io crate dfdx 0.9.0 written to /workspace/builds/worker-3/source/Cargo.toml [INFO] crate crates.io crate dfdx 0.9.0 already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+7f168b18704203996d3698515c88a036a9300946" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/source:/opt/rustwide/workdir:ro,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" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3d1cd00eb6e6ea2a7969240779edeaeff35b24be85036c63b883ba933028a15f" "/opt/rustwide/cargo-home/bin/cargo" "+7f168b18704203996d3698515c88a036a9300946" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 5bcc73307c2c173c88b67cf3a9e22a150ae4599000b398c0d7f3a1f0e9e28ea0 [INFO] running `Command { std: "docker" "start" "-a" "5bcc73307c2c173c88b67cf3a9e22a150ae4599000b398c0d7f3a1f0e9e28ea0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "5bcc73307c2c173c88b67cf3a9e22a150ae4599000b398c0d7f3a1f0e9e28ea0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5bcc73307c2c173c88b67cf3a9e22a150ae4599000b398c0d7f3a1f0e9e28ea0", kill_on_drop: false }` [INFO] [stdout] 5bcc73307c2c173c88b67cf3a9e22a150ae4599000b398c0d7f3a1f0e9e28ea0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/source:/opt/rustwide/workdir:ro,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" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-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" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3d1cd00eb6e6ea2a7969240779edeaeff35b24be85036c63b883ba933028a15f" "/opt/rustwide/cargo-home/bin/cargo" "+7f168b18704203996d3698515c88a036a9300946" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 37db85a390291f35d32a93a7dffe547946109ddee8521bf45efa9068893c19d6 [INFO] running `Command { std: "docker" "start" "-a" "37db85a390291f35d32a93a7dffe547946109ddee8521bf45efa9068893c19d6", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.126 [INFO] [stderr] Checking cfg-if v1.0.0 [INFO] [stderr] Compiling version_check v0.9.4 [INFO] [stderr] Compiling typenum v1.15.0 [INFO] [stderr] Checking subtle v2.4.1 [INFO] [stderr] Compiling pkg-config v0.3.25 [INFO] [stderr] Checking cpufeatures v0.2.2 [INFO] [stderr] Compiling semver v1.0.12 [INFO] [stderr] Compiling crc32fast v1.3.2 [INFO] [stderr] Compiling zstd-safe v4.1.6+zstd.1.5.2 [INFO] [stderr] Compiling autocfg v1.0.1 [INFO] [stderr] Compiling libm v0.2.1 [INFO] [stderr] Checking adler v1.0.2 [INFO] [stderr] Checking base64ct v1.0.1 [INFO] [stderr] Checking ppv-lite86 v0.2.10 [INFO] [stderr] Checking num_threads v0.1.6 [INFO] [stderr] Compiling time-macros v0.2.4 [INFO] [stderr] Checking byteorder v1.4.3 [INFO] [stderr] Checking miniz_oxide v0.5.3 [INFO] [stderr] Checking opaque-debug v0.3.0 [INFO] [stderr] Checking itoa v1.0.2 [INFO] [stderr] Checking constant_time_eq v0.1.5 [INFO] [stderr] Checking once_cell v1.12.0 [INFO] [stderr] Checking rawpointer v0.2.1 [INFO] [stderr] Checking regex-syntax v0.6.26 [INFO] [stderr] Checking lazy_static v1.4.0 [INFO] [stderr] Checking fastrand v1.7.0 [INFO] [stderr] Checking number_prefix v0.4.0 [INFO] [stderr] Checking matrixmultiply v0.3.2 [INFO] [stderr] Checking remove_dir_all v0.5.3 [INFO] [stderr] Checking mnist v0.5.0 [INFO] [stderr] Compiling generic-array v0.14.5 [INFO] [stderr] Compiling num-traits v0.2.15 [INFO] [stderr] Checking flate2 v1.0.24 [INFO] [stderr] Compiling rustc_version v0.4.0 [INFO] [stderr] Checking getrandom v0.2.3 [INFO] [stderr] Checking terminal_size v0.1.17 [INFO] [stderr] Checking time v0.3.9 [INFO] [stderr] Checking regex v1.5.6 [INFO] [stderr] Checking tempfile v3.3.0 [INFO] [stderr] Compiling jobserver v0.1.24 [INFO] [stderr] Checking rand_core v0.6.3 [INFO] [stderr] Compiling dfdx v0.9.0 (/opt/rustwide/workdir) [INFO] [stderr] Checking console v0.15.0 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking password-hash v0.3.2 [INFO] [stderr] Checking indicatif v0.16.2 [INFO] [stderr] Compiling cc v1.0.73 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Checking block-buffer v0.10.2 [INFO] [stderr] Checking crypto-common v0.1.3 [INFO] [stderr] Checking cipher v0.3.0 [INFO] [stderr] Compiling zstd-sys v1.6.3+zstd.1.5.2 [INFO] [stderr] Compiling bzip2-sys v0.1.11+1.0.8 [INFO] [stderr] Checking aes v0.7.5 [INFO] [stderr] Checking digest v0.10.3 [INFO] [stderr] Checking rand_distr v0.4.3 [INFO] [stderr] Checking hmac v0.12.1 [INFO] [stderr] Checking sha2 v0.10.2 [INFO] [stderr] Checking sha1 v0.10.1 [INFO] [stderr] Checking pbkdf2 v0.10.1 [INFO] [stderr] Checking bzip2 v0.4.3 [INFO] [stderr] Checking zstd v0.10.2+zstd.1.5.2 [INFO] [stderr] Checking zip v0.6.2 [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/devices/broadcast.rs:110:25 [INFO] [stdout] | [INFO] [stdout] 110 | for m in 0..M { >::foreach_mr(a, &b[m], f); } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - ----- expected `f32`, found array `[f32; N]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[f32; N]` [INFO] [stdout] ... [INFO] [stdout] 170 | broadcast_impl_reduce_lrg!([f32; N], [[f32; N]; M], ForEachBroadcast1, [0], ForEachElement, [], {M, N}); [INFO] [stdout] | ------------------------------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [f32; N]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[f32; N]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/foreach.rs:29:8 [INFO] [stdout] | [INFO] [stdout] 29 | fn foreach_mr(a: &mut T, b: &T, f: &mut F) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] = note: this error originates in the macro `broadcast_impl_reduce_lrg` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/devices/broadcast.rs:110:25 [INFO] [stdout] | [INFO] [stdout] 110 | for m in 0..M { >::foreach_mr(a, &b[m], f); } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - ----- expected `f32`, found array `[f32; N]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[f32; N]` [INFO] [stdout] ... [INFO] [stdout] 170 | broadcast_impl_reduce_lrg!([f32; N], [[f32; N]; M], ForEachBroadcast1, [0], ForEachElement, [], {M, N}); [INFO] [stdout] | ------------------------------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [f32; N]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[f32; N]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/foreach.rs:29:8 [INFO] [stdout] | [INFO] [stdout] 29 | fn foreach_mr(a: &mut T, b: &T, f: &mut F) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] = note: this error originates in the macro `broadcast_impl_reduce_lrg` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/devices/broadcast.rs:113:25 [INFO] [stdout] | [INFO] [stdout] 113 | for m in 0..M { >::foreach_mr(&mut a[m], b, f); } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ --------- - expected `f32`, found array `[f32; N]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[f32; N]` [INFO] [stdout] ... [INFO] [stdout] 170 | broadcast_impl_reduce_lrg!([f32; N], [[f32; N]; M], ForEachBroadcast1, [0], ForEachElement, [], {M, N}); [INFO] [stdout] | ------------------------------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [f32; N]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[f32; N]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/foreach.rs:29:8 [INFO] [stdout] | [INFO] [stdout] 29 | fn foreach_mr(a: &mut T, b: &T, f: &mut F) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] = note: this error originates in the macro `broadcast_impl_reduce_lrg` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/devices/broadcast.rs:113:25 [INFO] [stdout] | [INFO] [stdout] 113 | for m in 0..M { >::foreach_mr(&mut a[m], b, f); } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ --------- - expected `f32`, found array `[f32; N]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[f32; N]` [INFO] [stdout] ... [INFO] [stdout] 170 | broadcast_impl_reduce_lrg!([f32; N], [[f32; N]; M], ForEachBroadcast1, [0], ForEachElement, [], {M, N}); [INFO] [stdout] | ------------------------------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [f32; N]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[f32; N]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/foreach.rs:29:8 [INFO] [stdout] | [INFO] [stdout] 29 | fn foreach_mr(a: &mut T, b: &T, f: &mut F) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] = note: this error originates in the macro `broadcast_impl_reduce_lrg` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/devices/broadcast.rs:110:25 [INFO] [stdout] | [INFO] [stdout] 110 | for m in 0..M { >::foreach_mr(a, &b[m], f); } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - ----- expected `f32`, found array `[[f32; O]; N]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[f32; O]; N]` [INFO] [stdout] ... [INFO] [stdout] 186 | broadcast_impl_reduce_lrg!([[f32; O]; N], [[[f32; O]; N]; M], ForEachBroadcast1, [0], ForEachElement, [], {M, N, O}); [INFO] [stdout] | -------------------------------------------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[f32; O]; N]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[f32; O]; N]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/foreach.rs:29:8 [INFO] [stdout] | [INFO] [stdout] 29 | fn foreach_mr(a: &mut T, b: &T, f: &mut F) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] = note: this error originates in the macro `broadcast_impl_reduce_lrg` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/devices/broadcast.rs:110:25 [INFO] [stdout] | [INFO] [stdout] 110 | for m in 0..M { >::foreach_mr(a, &b[m], f); } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - ----- expected `f32`, found array `[[f32; O]; N]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[f32; O]; N]` [INFO] [stdout] ... [INFO] [stdout] 186 | broadcast_impl_reduce_lrg!([[f32; O]; N], [[[f32; O]; N]; M], ForEachBroadcast1, [0], ForEachElement, [], {M, N, O}); [INFO] [stdout] | -------------------------------------------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[f32; O]; N]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[f32; O]; N]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/foreach.rs:29:8 [INFO] [stdout] | [INFO] [stdout] 29 | fn foreach_mr(a: &mut T, b: &T, f: &mut F) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] = note: this error originates in the macro `broadcast_impl_reduce_lrg` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/devices/broadcast.rs:113:25 [INFO] [stdout] | [INFO] [stdout] 113 | for m in 0..M { >::foreach_mr(&mut a[m], b, f); } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ --------- - expected `f32`, found array `[[f32; O]; N]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[f32; O]; N]` [INFO] [stdout] ... [INFO] [stdout] 186 | broadcast_impl_reduce_lrg!([[f32; O]; N], [[[f32; O]; N]; M], ForEachBroadcast1, [0], ForEachElement, [], {M, N, O}); [INFO] [stdout] | -------------------------------------------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[f32; O]; N]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[f32; O]; N]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/foreach.rs:29:8 [INFO] [stdout] | [INFO] [stdout] 29 | fn foreach_mr(a: &mut T, b: &T, f: &mut F) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] = note: this error originates in the macro `broadcast_impl_reduce_lrg` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/devices/broadcast.rs:113:25 [INFO] [stdout] | [INFO] [stdout] 113 | for m in 0..M { >::foreach_mr(&mut a[m], b, f); } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ --------- - expected `f32`, found array `[[f32; O]; N]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[f32; O]; N]` [INFO] [stdout] ... [INFO] [stdout] 186 | broadcast_impl_reduce_lrg!([[f32; O]; N], [[[f32; O]; N]; M], ForEachBroadcast1, [0], ForEachElement, [], {M, N, O}); [INFO] [stdout] | -------------------------------------------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[f32; O]; N]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[f32; O]; N]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/foreach.rs:29:8 [INFO] [stdout] | [INFO] [stdout] 29 | fn foreach_mr(a: &mut T, b: &T, f: &mut F) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] = note: this error originates in the macro `broadcast_impl_reduce_lrg` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/devices/broadcast.rs:110:25 [INFO] [stdout] | [INFO] [stdout] 110 | for m in 0..M { >::foreach_mr(a, &b[m], f); } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - ----- expected `f32`, found array `[[[f32; P]; O]; N]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[[f32; P]; O]; N]` [INFO] [stdout] ... [INFO] [stdout] 200 | broadcast_impl_reduce_lrg!([[[f32; P]; O]; N], [[[[f32; P]; O]; N]; M], ForEachBroadcast1, [0], ForEachElement, [], {M, N, O, P}); [INFO] [stdout] | --------------------------------------------------------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[f32; P]; O]; N]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[[f32; P]; O]; N]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/foreach.rs:29:8 [INFO] [stdout] | [INFO] [stdout] 29 | fn foreach_mr(a: &mut T, b: &T, f: &mut F) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] = note: this error originates in the macro `broadcast_impl_reduce_lrg` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/devices/broadcast.rs:110:25 [INFO] [stdout] | [INFO] [stdout] 110 | for m in 0..M { >::foreach_mr(a, &b[m], f); } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - ----- expected `f32`, found array `[[[f32; P]; O]; N]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[[f32; P]; O]; N]` [INFO] [stdout] ... [INFO] [stdout] 200 | broadcast_impl_reduce_lrg!([[[f32; P]; O]; N], [[[[f32; P]; O]; N]; M], ForEachBroadcast1, [0], ForEachElement, [], {M, N, O, P}); [INFO] [stdout] | --------------------------------------------------------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[f32; P]; O]; N]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[[f32; P]; O]; N]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/foreach.rs:29:8 [INFO] [stdout] | [INFO] [stdout] 29 | fn foreach_mr(a: &mut T, b: &T, f: &mut F) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] = note: this error originates in the macro `broadcast_impl_reduce_lrg` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/devices/broadcast.rs:113:25 [INFO] [stdout] | [INFO] [stdout] 113 | for m in 0..M { >::foreach_mr(&mut a[m], b, f); } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ --------- - expected `f32`, found array `[[[f32; P]; O]; N]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[[f32; P]; O]; N]` [INFO] [stdout] ... [INFO] [stdout] 200 | broadcast_impl_reduce_lrg!([[[f32; P]; O]; N], [[[[f32; P]; O]; N]; M], ForEachBroadcast1, [0], ForEachElement, [], {M, N, O, P}); [INFO] [stdout] | --------------------------------------------------------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[f32; P]; O]; N]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[[f32; P]; O]; N]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/foreach.rs:29:8 [INFO] [stdout] | [INFO] [stdout] 29 | fn foreach_mr(a: &mut T, b: &T, f: &mut F) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] = note: this error originates in the macro `broadcast_impl_reduce_lrg` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/devices/broadcast.rs:113:25 [INFO] [stdout] | [INFO] [stdout] 113 | for m in 0..M { >::foreach_mr(&mut a[m], b, f); } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ --------- - expected `f32`, found array `[[[f32; P]; O]; N]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[[f32; P]; O]; N]` [INFO] [stdout] ... [INFO] [stdout] 200 | broadcast_impl_reduce_lrg!([[[f32; P]; O]; N], [[[[f32; P]; O]; N]; M], ForEachBroadcast1, [0], ForEachElement, [], {M, N, O, P}); [INFO] [stdout] | --------------------------------------------------------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[f32; P]; O]; N]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[[f32; P]; O]; N]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/foreach.rs:29:8 [INFO] [stdout] | [INFO] [stdout] 29 | fn foreach_mr(a: &mut T, b: &T, f: &mut F) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] = note: this error originates in the macro `broadcast_impl_reduce_lrg` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/devices/fill.rs:42:19 [INFO] [stdout] | [INFO] [stdout] 42 | Cpu::fill(&mut t, &mut |v| *v = rng.gen_range(0.0..1.0)); [INFO] [stdout] | --------- ^^^^^^ expected `f32`, found array `[f32; 5]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [f32; 5]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/devices/select.rs:38:9 [INFO] [stdout] | [INFO] [stdout] 38 | Self::foreach_mr(&mut inp[*indices], out, &mut |a, b| *a += b); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ ------------------ --- expected `f32`, found array `[f32; N]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[f32; N]` [INFO] [stdout] ... [INFO] [stdout] 83 | select_01!(0, [[f32; N]; M], [f32; N], {M, N}); [INFO] [stdout] | ---------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [f32; N]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[f32; N]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/foreach.rs:29:8 [INFO] [stdout] | [INFO] [stdout] 29 | fn foreach_mr(a: &mut T, b: &T, f: &mut F) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] = note: this error originates in the macro `select_01` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/devices/fill.rs:60:19 [INFO] [stdout] | [INFO] [stdout] 60 | Cpu::fill(&mut t, &mut |v| *v = 1.0); [INFO] [stdout] | --------- ^^^^^^ expected `f32`, found array `[f32; 5]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [f32; 5]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/devices/fill.rs:62:19 [INFO] [stdout] | [INFO] [stdout] 62 | Cpu::fill(&mut t, &mut |v| *v = 2.0); [INFO] [stdout] | --------- ^^^^^^ expected `f32`, found array `[f32; 5]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [f32; 5]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/devices/select.rs:54:13 [INFO] [stdout] | [INFO] [stdout] 54 | Self::foreach_mr(&mut inp[indices[z]], &out[z], &mut |a, b| *a += b); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ -------------------- ------- expected `f32`, found array `[f32; N]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[f32; N]` [INFO] [stdout] ... [INFO] [stdout] 84 | select_0z!(0, [[f32; N]; M], [[f32; N]; Z], {M, N, Z}); [INFO] [stdout] | ------------------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [f32; N]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[f32; N]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/foreach.rs:29:8 [INFO] [stdout] | [INFO] [stdout] 29 | fn foreach_mr(a: &mut T, b: &T, f: &mut F) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] = note: this error originates in the macro `select_0z` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/devices/fill.rs:69:19 [INFO] [stdout] | [INFO] [stdout] 69 | Cpu::fill(&mut t, &mut |v| *v = 1.0); [INFO] [stdout] | --------- ^^^^^^ expected `f32`, found array `[[f32; 3]; 5]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[f32; 3]; 5]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/devices/select.rs:38:9 [INFO] [stdout] | [INFO] [stdout] 38 | Self::foreach_mr(&mut inp[*indices], out, &mut |a, b| *a += b); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ ------------------ --- expected `f32`, found array `[[f32; O]; N]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[f32; O]; N]` [INFO] [stdout] ... [INFO] [stdout] 89 | select_01!(0, [[[f32; O]; N]; M], [[f32; O]; N], {M, N, O}); [INFO] [stdout] | ----------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[f32; O]; N]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[f32; O]; N]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/foreach.rs:29:8 [INFO] [stdout] | [INFO] [stdout] 29 | fn foreach_mr(a: &mut T, b: &T, f: &mut F) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] = note: this error originates in the macro `select_01` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/devices/fill.rs:71:19 [INFO] [stdout] | [INFO] [stdout] 71 | Cpu::fill(&mut t, &mut |v| *v = 2.0); [INFO] [stdout] | --------- ^^^^^^ expected `f32`, found array `[[f32; 3]; 5]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[f32; 3]; 5]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/devices/fill.rs:78:19 [INFO] [stdout] | [INFO] [stdout] 78 | Cpu::fill(&mut t, &mut |v| *v = 1.0); [INFO] [stdout] | --------- ^^^^^^ expected `f32`, found array `[[[f32; 2]; 3]; 5]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[f32; 2]; 3]; 5]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/devices/select.rs:54:13 [INFO] [stdout] | [INFO] [stdout] 54 | Self::foreach_mr(&mut inp[indices[z]], &out[z], &mut |a, b| *a += b); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ -------------------- ------- expected `f32`, found array `[[f32; O]; N]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[f32; O]; N]` [INFO] [stdout] ... [INFO] [stdout] 90 | select_0z!(0, [[[f32; O]; N]; M], [[[f32; O]; N]; Z], {M, N, O, Z}); [INFO] [stdout] | ------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[f32; O]; N]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[f32; O]; N]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/foreach.rs:29:8 [INFO] [stdout] | [INFO] [stdout] 29 | fn foreach_mr(a: &mut T, b: &T, f: &mut F) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] = note: this error originates in the macro `select_0z` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/devices/fill.rs:80:19 [INFO] [stdout] | [INFO] [stdout] 80 | Cpu::fill(&mut t, &mut |v| *v = 2.0); [INFO] [stdout] | --------- ^^^^^^ expected `f32`, found array `[[[f32; 2]; 3]; 5]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[f32; 2]; 3]; 5]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/devices/foreach.rs:134:24 [INFO] [stdout] | [INFO] [stdout] 134 | Cpu::foreach_m(&mut a, &mut |v| { [INFO] [stdout] | -------------- ^^^^^^ expected `f32`, found array `[[{float}; 3]; 2]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[{float}; 3]; 2]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/foreach.rs:25:8 [INFO] [stdout] | [INFO] [stdout] 25 | fn foreach_m(a: &mut T, f: &mut F); [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/devices/select.rs:38:9 [INFO] [stdout] | [INFO] [stdout] 38 | Self::foreach_mr(&mut inp[*indices], out, &mut |a, b| *a += b); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ ------------------ --- expected `f32`, found array `[[[f32; P]; O]; N]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[[f32; P]; O]; N]` [INFO] [stdout] ... [INFO] [stdout] 97 | select_01!(0, [[[[f32; P]; O]; N]; M], [[[f32; P]; O]; N], {M, N, O, P}); [INFO] [stdout] | ------------------------------------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[f32; P]; O]; N]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[[f32; P]; O]; N]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/foreach.rs:29:8 [INFO] [stdout] | [INFO] [stdout] 29 | fn foreach_mr(a: &mut T, b: &T, f: &mut F) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] = note: this error originates in the macro `select_01` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/devices/foreach.rs:144:9 [INFO] [stdout] | [INFO] [stdout] 144 | Cpu::foreach_mr(&mut a, &b, &mut |x, y| { [INFO] [stdout] | ^^^^^^^^^^^^^^^ ------ -- expected `f32`, found array `[[{float}; 3]; 2]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[{float}; 3]; 2]` [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[{float}; 3]; 2]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[{float}; 3]; 2]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/foreach.rs:29:8 [INFO] [stdout] | [INFO] [stdout] 29 | fn foreach_mr(a: &mut T, b: &T, f: &mut F) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/devices/select.rs:54:13 [INFO] [stdout] | [INFO] [stdout] 54 | Self::foreach_mr(&mut inp[indices[z]], &out[z], &mut |a, b| *a += b); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ -------------------- ------- expected `f32`, found array `[[[f32; P]; O]; N]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[[f32; P]; O]; N]` [INFO] [stdout] ... [INFO] [stdout] 98 | select_0z!(0, [[[[f32; P]; O]; N]; M], [[[[f32; P]; O]; N]; Z], {M, N, O, P, Z}); [INFO] [stdout] | -------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[f32; P]; O]; N]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[[f32; P]; O]; N]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/foreach.rs:29:8 [INFO] [stdout] | [INFO] [stdout] 29 | fn foreach_mr(a: &mut T, b: &T, f: &mut F) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] = note: this error originates in the macro `select_0z` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/nn/layer_norm.rs:43:19 [INFO] [stdout] | [INFO] [stdout] 43 | Cpu::fill(self.gamma.mut_data(), &mut |v| *v = 1.0); [INFO] [stdout] | --------- ^^^^^^^^^^^^^^^^^^^^^ expected `f32`, found array `[f32; M]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [f32; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/devices/foreach.rs:154:9 [INFO] [stdout] | [INFO] [stdout] 154 | Cpu::foreach_mm(&mut a, &mut b, &mut |x, y| { [INFO] [stdout] | ^^^^^^^^^^^^^^^ ------ ------ expected `f32`, found array `[[{float}; 3]; 2]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[{float}; 3]; 2]` [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[{float}; 3]; 2]` [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[{float}; 3]; 2]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/foreach.rs:35:8 [INFO] [stdout] | [INFO] [stdout] 35 | fn foreach_mm(a: &mut T, b: &mut T, f: &mut F) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/nn/layer_norm.rs:44:19 [INFO] [stdout] | [INFO] [stdout] 44 | Cpu::fill(self.beta.mut_data(), &mut |v| *v = 0.0); [INFO] [stdout] | --------- ^^^^^^^^^^^^^^^^^^^^ expected `f32`, found array `[f32; M]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [f32; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tensor/impl_randomize.rs:14:43 [INFO] [stdout] | [INFO] [stdout] 14 | ::Device::fill(self.mut_data(), &mut |v| *v = dist.sample(rng)); [INFO] [stdout] | --------------------------------- ^^^^^^^^^^^^^^^ expected `f32`, found array `[f32; M]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] ... [INFO] [stdout] 21 | tensor_impl!(Tensor1D, [M]); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [f32; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] = note: this error originates in the macro `tensor_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/devices/foreach.rs:167:9 [INFO] [stdout] | [INFO] [stdout] 167 | Cpu::foreach_mrr(&mut a, &b, &c, &mut |x, y, z| { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ ------ -- -- expected `f32`, found array `[[{float}; 3]; 2]` [INFO] [stdout] | | | [INFO] [stdout] | | expected `f32`, found array `[[{float}; 3]; 2]` [INFO] [stdout] | expected `f32`, found array `[[{float}; 3]; 2]` [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[{float}; 3]; 2]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[{float}; 3]; 2]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[{float}; 3]; 2]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/foreach.rs:47:8 [INFO] [stdout] | [INFO] [stdout] 47 | fn foreach_mrr(a: &mut T, b: &T, c: &T, f: &mut F) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tensor/impl_randomize.rs:14:43 [INFO] [stdout] | [INFO] [stdout] 14 | ::Device::fill(self.mut_data(), &mut |v| *v = dist.sample(rng)); [INFO] [stdout] | --------------------------------- ^^^^^^^^^^^^^^^ expected `f32`, found array `[[f32; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] ... [INFO] [stdout] 22 | tensor_impl!(Tensor2D, [M, N]); [INFO] [stdout] | ------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[f32; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] = note: this error originates in the macro `tensor_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tensor/impl_randomize.rs:14:43 [INFO] [stdout] | [INFO] [stdout] 14 | ::Device::fill(self.mut_data(), &mut |v| *v = dist.sample(rng)); [INFO] [stdout] | --------------------------------- ^^^^^^^^^^^^^^^ expected `f32`, found array `[[[f32; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] ... [INFO] [stdout] 23 | tensor_impl!(Tensor3D, [M, N, O]); [INFO] [stdout] | --------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[f32; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] = note: this error originates in the macro `tensor_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tensor/impl_randomize.rs:14:43 [INFO] [stdout] | [INFO] [stdout] 14 | ::Device::fill(self.mut_data(), &mut |v| *v = dist.sample(rng)); [INFO] [stdout] | --------------------------------- ^^^^^^^^^^^^^^^ expected `f32`, found array `[[[[f32; P]; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] ... [INFO] [stdout] 24 | tensor_impl!(Tensor4D, [M, N, O, P]); [INFO] [stdout] | ------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[[f32; P]; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] = note: this error originates in the macro `tensor_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/devices/foreach.rs:178:9 [INFO] [stdout] | [INFO] [stdout] 178 | Cpu::foreach_mmm(&mut a, &mut b, &mut c, &mut |x, y, z| { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ ------ ------ ------ expected `f32`, found array `[[{float}; 3]; 2]` [INFO] [stdout] | | | [INFO] [stdout] | | expected `f32`, found array `[[{float}; 3]; 2]` [INFO] [stdout] | expected `f32`, found array `[[{float}; 3]; 2]` [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[{float}; 3]; 2]` [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[{float}; 3]; 2]` [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[{float}; 3]; 2]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/foreach.rs:41:8 [INFO] [stdout] | [INFO] [stdout] 41 | fn foreach_mmm(a: &mut T, b: &mut T, c: &mut T, f: &mut F) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/devices/reduce_all.rs:44:36 [INFO] [stdout] | [INFO] [stdout] 44 | assert_eq!(Cpu::reduce_all(&t, &mut |a, b| a * b), 24.0); [INFO] [stdout] | --------------- ^^ expected `f32`, found array `[{float}; 4]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] | [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[{float}; 4]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/reduce_all.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn reduce_all T::Dtype>(inp: &T, f: &mut F) -> T::Dtype; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tensor_ops/select.rs:28:23 [INFO] [stdout] | [INFO] [stdout] 28 | Cpu::fill(t.mut_data(), &mut |v| *v = 0.0); [INFO] [stdout] | --------- ^^^^^^^^^^^^ expected `f32`, found array `[f32; M]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] ... [INFO] [stdout] 38 | impl_select!(-1, Tensor1D, usize, Tensor0D, {M}); [INFO] [stdout] | --------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [f32; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/devices/reduce_all.rs:50:36 [INFO] [stdout] | [INFO] [stdout] 50 | assert_eq!(Cpu::reduce_all(&t, &mut |a, b| a + b), 16.0); [INFO] [stdout] | --------------- ^^ expected `f32`, found array `[[{float}; 4]; 2]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] | [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[{float}; 4]; 2]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/reduce_all.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn reduce_all T::Dtype>(inp: &T, f: &mut F) -> T::Dtype; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/devices/reduce_all.rs:56:36 [INFO] [stdout] | [INFO] [stdout] 56 | assert_eq!(Cpu::reduce_all(&t, &mut |a, b| a * b), 1.0); [INFO] [stdout] | --------------- ^^ expected `f32`, found array `[[[{float}; 2]; 2]; 2]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] | [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[[{float}; 2]; 2]; 2]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/reduce_all.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn reduce_all T::Dtype>(inp: &T, f: &mut F) -> T::Dtype; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/tensor_ops/select.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | Cpu::add(t_grad, t.data()); [INFO] [stdout] | ^^^^^^^^ ------ -------- expected `f32`, found array `[f32; M]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[f32; M]` [INFO] [stdout] ... [INFO] [stdout] 38 | impl_select!(-1, Tensor1D, usize, Tensor0D, {M}); [INFO] [stdout] | --------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [f32; M]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[f32; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/mod.rs:38:8 [INFO] [stdout] | [INFO] [stdout] 38 | fn add(lhs: &mut T, rhs: &T) [INFO] [stdout] | ^^^ ----------- ------- [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tensor_ops/select.rs:28:23 [INFO] [stdout] | [INFO] [stdout] 28 | Cpu::fill(t.mut_data(), &mut |v| *v = 0.0); [INFO] [stdout] | --------- ^^^^^^^^^^^^ expected `f32`, found array `[f32; M]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] ... [INFO] [stdout] 39 | impl_select!(-1, Tensor1D, [usize; Z], Tensor1D, {M, Z}); [INFO] [stdout] | -------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [f32; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/devices/select.rs:38:9 [INFO] [stdout] | [INFO] [stdout] 38 | Self::foreach_mr(&mut inp[*indices], out, &mut |a, b| *a += b); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ ------------------ --- expected `f32`, found array `[f32; N]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[f32; N]` [INFO] [stdout] ... [INFO] [stdout] 83 | select_01!(0, [[f32; N]; M], [f32; N], {M, N}); [INFO] [stdout] | ---------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [f32; N]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[f32; N]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/foreach.rs:29:8 [INFO] [stdout] | [INFO] [stdout] 29 | fn foreach_mr(a: &mut T, b: &T, f: &mut F) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] = note: this error originates in the macro `select_01` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/tensor_ops/select.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | Cpu::add(t_grad, t.data()); [INFO] [stdout] | ^^^^^^^^ ------ -------- expected `f32`, found array `[f32; M]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[f32; M]` [INFO] [stdout] ... [INFO] [stdout] 39 | impl_select!(-1, Tensor1D, [usize; Z], Tensor1D, {M, Z}); [INFO] [stdout] | -------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [f32; M]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[f32; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/mod.rs:38:8 [INFO] [stdout] | [INFO] [stdout] 38 | fn add(lhs: &mut T, rhs: &T) [INFO] [stdout] | ^^^ ----------- ------- [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tensor_ops/select.rs:28:23 [INFO] [stdout] | [INFO] [stdout] 28 | Cpu::fill(t.mut_data(), &mut |v| *v = 0.0); [INFO] [stdout] | --------- ^^^^^^^^^^^^ expected `f32`, found array `[[f32; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] ... [INFO] [stdout] 42 | impl_select!(0, Tensor2D, usize, Tensor1D, {M, N}); [INFO] [stdout] | ----------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[f32; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/devices/select.rs:54:13 [INFO] [stdout] | [INFO] [stdout] 54 | Self::foreach_mr(&mut inp[indices[z]], &out[z], &mut |a, b| *a += b); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ -------------------- ------- expected `f32`, found array `[f32; N]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[f32; N]` [INFO] [stdout] ... [INFO] [stdout] 84 | select_0z!(0, [[f32; N]; M], [[f32; N]; Z], {M, N, Z}); [INFO] [stdout] | ------------------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [f32; N]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[f32; N]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/foreach.rs:29:8 [INFO] [stdout] | [INFO] [stdout] 29 | fn foreach_mr(a: &mut T, b: &T, f: &mut F) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] = note: this error originates in the macro `select_0z` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/tensor_ops/select.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | Cpu::add(t_grad, t.data()); [INFO] [stdout] | ^^^^^^^^ ------ -------- expected `f32`, found array `[[f32; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[f32; N]; M]` [INFO] [stdout] ... [INFO] [stdout] 42 | impl_select!(0, Tensor2D, usize, Tensor1D, {M, N}); [INFO] [stdout] | ----------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[f32; N]; M]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[f32; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/mod.rs:38:8 [INFO] [stdout] | [INFO] [stdout] 38 | fn add(lhs: &mut T, rhs: &T) [INFO] [stdout] | ^^^ ----------- ------- [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tensor_ops/select.rs:28:23 [INFO] [stdout] | [INFO] [stdout] 28 | Cpu::fill(t.mut_data(), &mut |v| *v = 0.0); [INFO] [stdout] | --------- ^^^^^^^^^^^^ expected `f32`, found array `[[f32; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] ... [INFO] [stdout] 43 | impl_select!(0, Tensor2D, [usize; Z], Tensor2D, {M, N, Z}); [INFO] [stdout] | ---------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[f32; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/devices/select.rs:38:9 [INFO] [stdout] | [INFO] [stdout] 38 | Self::foreach_mr(&mut inp[*indices], out, &mut |a, b| *a += b); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ ------------------ --- expected `f32`, found array `[[f32; O]; N]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[f32; O]; N]` [INFO] [stdout] ... [INFO] [stdout] 89 | select_01!(0, [[[f32; O]; N]; M], [[f32; O]; N], {M, N, O}); [INFO] [stdout] | ----------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[f32; O]; N]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[f32; O]; N]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/foreach.rs:29:8 [INFO] [stdout] | [INFO] [stdout] 29 | fn foreach_mr(a: &mut T, b: &T, f: &mut F) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] = note: this error originates in the macro `select_01` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/tensor_ops/select.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | Cpu::add(t_grad, t.data()); [INFO] [stdout] | ^^^^^^^^ ------ -------- expected `f32`, found array `[[f32; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[f32; N]; M]` [INFO] [stdout] ... [INFO] [stdout] 43 | impl_select!(0, Tensor2D, [usize; Z], Tensor2D, {M, N, Z}); [INFO] [stdout] | ---------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[f32; N]; M]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[f32; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/mod.rs:38:8 [INFO] [stdout] | [INFO] [stdout] 38 | fn add(lhs: &mut T, rhs: &T) [INFO] [stdout] | ^^^ ----------- ------- [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tensor_ops/select.rs:28:23 [INFO] [stdout] | [INFO] [stdout] 28 | Cpu::fill(t.mut_data(), &mut |v| *v = 0.0); [INFO] [stdout] | --------- ^^^^^^^^^^^^ expected `f32`, found array `[[f32; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] ... [INFO] [stdout] 44 | impl_select!(-1, Tensor2D, [usize; M], Tensor1D, {M, N}); [INFO] [stdout] | ----------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[f32; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/devices/select.rs:54:13 [INFO] [stdout] | [INFO] [stdout] 54 | Self::foreach_mr(&mut inp[indices[z]], &out[z], &mut |a, b| *a += b); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ -------------------- ------- expected `f32`, found array `[[f32; O]; N]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[f32; O]; N]` [INFO] [stdout] ... [INFO] [stdout] 90 | select_0z!(0, [[[f32; O]; N]; M], [[[f32; O]; N]; Z], {M, N, O, Z}); [INFO] [stdout] | ------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[f32; O]; N]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[f32; O]; N]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/foreach.rs:29:8 [INFO] [stdout] | [INFO] [stdout] 29 | fn foreach_mr(a: &mut T, b: &T, f: &mut F) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] = note: this error originates in the macro `select_0z` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/tensor_ops/select.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | Cpu::add(t_grad, t.data()); [INFO] [stdout] | ^^^^^^^^ ------ -------- expected `f32`, found array `[[f32; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[f32; N]; M]` [INFO] [stdout] ... [INFO] [stdout] 44 | impl_select!(-1, Tensor2D, [usize; M], Tensor1D, {M, N}); [INFO] [stdout] | ----------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[f32; N]; M]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[f32; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/mod.rs:38:8 [INFO] [stdout] | [INFO] [stdout] 38 | fn add(lhs: &mut T, rhs: &T) [INFO] [stdout] | ^^^ ----------- ------- [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tensor_ops/select.rs:28:23 [INFO] [stdout] | [INFO] [stdout] 28 | Cpu::fill(t.mut_data(), &mut |v| *v = 0.0); [INFO] [stdout] | --------- ^^^^^^^^^^^^ expected `f32`, found array `[[f32; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] ... [INFO] [stdout] 45 | impl_select!(-1, Tensor2D, [[usize; Z]; M], Tensor2D, {M, N, Z}); [INFO] [stdout] | ---------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[f32; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/devices/select.rs:38:9 [INFO] [stdout] | [INFO] [stdout] 38 | Self::foreach_mr(&mut inp[*indices], out, &mut |a, b| *a += b); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ ------------------ --- expected `f32`, found array `[[[f32; P]; O]; N]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[[f32; P]; O]; N]` [INFO] [stdout] ... [INFO] [stdout] 97 | select_01!(0, [[[[f32; P]; O]; N]; M], [[[f32; P]; O]; N], {M, N, O, P}); [INFO] [stdout] | ------------------------------------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[f32; P]; O]; N]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[[f32; P]; O]; N]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/foreach.rs:29:8 [INFO] [stdout] | [INFO] [stdout] 29 | fn foreach_mr(a: &mut T, b: &T, f: &mut F) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] = note: this error originates in the macro `select_01` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/tensor_ops/select.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | Cpu::add(t_grad, t.data()); [INFO] [stdout] | ^^^^^^^^ ------ -------- expected `f32`, found array `[[f32; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[f32; N]; M]` [INFO] [stdout] ... [INFO] [stdout] 45 | impl_select!(-1, Tensor2D, [[usize; Z]; M], Tensor2D, {M, N, Z}); [INFO] [stdout] | ---------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[f32; N]; M]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[f32; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/mod.rs:38:8 [INFO] [stdout] | [INFO] [stdout] 38 | fn add(lhs: &mut T, rhs: &T) [INFO] [stdout] | ^^^ ----------- ------- [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tensor_ops/select.rs:28:23 [INFO] [stdout] | [INFO] [stdout] 28 | Cpu::fill(t.mut_data(), &mut |v| *v = 0.0); [INFO] [stdout] | --------- ^^^^^^^^^^^^ expected `f32`, found array `[[[f32; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] ... [INFO] [stdout] 48 | impl_select!(0, Tensor3D, usize, Tensor2D, {M, N, O}); [INFO] [stdout] | -------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[f32; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/devices/select.rs:54:13 [INFO] [stdout] | [INFO] [stdout] 54 | Self::foreach_mr(&mut inp[indices[z]], &out[z], &mut |a, b| *a += b); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ -------------------- ------- expected `f32`, found array `[[[f32; P]; O]; N]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[[f32; P]; O]; N]` [INFO] [stdout] ... [INFO] [stdout] 98 | select_0z!(0, [[[[f32; P]; O]; N]; M], [[[[f32; P]; O]; N]; Z], {M, N, O, P, Z}); [INFO] [stdout] | -------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[f32; P]; O]; N]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[[f32; P]; O]; N]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/foreach.rs:29:8 [INFO] [stdout] | [INFO] [stdout] 29 | fn foreach_mr(a: &mut T, b: &T, f: &mut F) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] = note: this error originates in the macro `select_0z` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/tensor_ops/select.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | Cpu::add(t_grad, t.data()); [INFO] [stdout] | ^^^^^^^^ ------ -------- expected `f32`, found array `[[[f32; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[[f32; O]; N]; M]` [INFO] [stdout] ... [INFO] [stdout] 48 | impl_select!(0, Tensor3D, usize, Tensor2D, {M, N, O}); [INFO] [stdout] | -------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[f32; O]; N]; M]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[[f32; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/mod.rs:38:8 [INFO] [stdout] | [INFO] [stdout] 38 | fn add(lhs: &mut T, rhs: &T) [INFO] [stdout] | ^^^ ----------- ------- [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tensor_ops/select.rs:28:23 [INFO] [stdout] | [INFO] [stdout] 28 | Cpu::fill(t.mut_data(), &mut |v| *v = 0.0); [INFO] [stdout] | --------- ^^^^^^^^^^^^ expected `f32`, found array `[[[f32; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] ... [INFO] [stdout] 49 | impl_select!(0, Tensor3D, [usize; Z], Tensor3D, {M, N, O, Z}); [INFO] [stdout] | ------------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[f32; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/nn/layer_norm.rs:43:19 [INFO] [stdout] | [INFO] [stdout] 43 | Cpu::fill(self.gamma.mut_data(), &mut |v| *v = 1.0); [INFO] [stdout] | --------- ^^^^^^^^^^^^^^^^^^^^^ expected `f32`, found array `[f32; M]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [f32; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/nn/layer_norm.rs:44:19 [INFO] [stdout] | [INFO] [stdout] 44 | Cpu::fill(self.beta.mut_data(), &mut |v| *v = 0.0); [INFO] [stdout] | --------- ^^^^^^^^^^^^^^^^^^^^ expected `f32`, found array `[f32; M]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [f32; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/tensor_ops/select.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | Cpu::add(t_grad, t.data()); [INFO] [stdout] | ^^^^^^^^ ------ -------- expected `f32`, found array `[[[f32; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[[f32; O]; N]; M]` [INFO] [stdout] ... [INFO] [stdout] 49 | impl_select!(0, Tensor3D, [usize; Z], Tensor3D, {M, N, O, Z}); [INFO] [stdout] | ------------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[f32; O]; N]; M]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[[f32; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/mod.rs:38:8 [INFO] [stdout] | [INFO] [stdout] 38 | fn add(lhs: &mut T, rhs: &T) [INFO] [stdout] | ^^^ ----------- ------- [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tensor_ops/select.rs:28:23 [INFO] [stdout] | [INFO] [stdout] 28 | Cpu::fill(t.mut_data(), &mut |v| *v = 0.0); [INFO] [stdout] | --------- ^^^^^^^^^^^^ expected `f32`, found array `[[[f32; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] ... [INFO] [stdout] 50 | impl_select!(1, Tensor3D, [usize; M], Tensor2D, {M, N, O}); [INFO] [stdout] | ------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[f32; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/tensor_ops/select.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | Cpu::add(t_grad, t.data()); [INFO] [stdout] | ^^^^^^^^ ------ -------- expected `f32`, found array `[[[f32; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[[f32; O]; N]; M]` [INFO] [stdout] ... [INFO] [stdout] 50 | impl_select!(1, Tensor3D, [usize; M], Tensor2D, {M, N, O}); [INFO] [stdout] | ------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[f32; O]; N]; M]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[[f32; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/mod.rs:38:8 [INFO] [stdout] | [INFO] [stdout] 38 | fn add(lhs: &mut T, rhs: &T) [INFO] [stdout] | ^^^ ----------- ------- [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tensor/impl_randomize.rs:14:43 [INFO] [stdout] | [INFO] [stdout] 14 | ::Device::fill(self.mut_data(), &mut |v| *v = dist.sample(rng)); [INFO] [stdout] | --------------------------------- ^^^^^^^^^^^^^^^ expected `f32`, found array `[f32; M]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] ... [INFO] [stdout] 21 | tensor_impl!(Tensor1D, [M]); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [f32; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] = note: this error originates in the macro `tensor_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tensor_ops/select.rs:28:23 [INFO] [stdout] | [INFO] [stdout] 28 | Cpu::fill(t.mut_data(), &mut |v| *v = 0.0); [INFO] [stdout] | --------- ^^^^^^^^^^^^ expected `f32`, found array `[[[f32; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] ... [INFO] [stdout] 51 | impl_select!(1, Tensor3D, [[usize; Z]; M], Tensor3D, {M, N, O, Z}); [INFO] [stdout] | ------------------------------------------------------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[f32; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tensor/impl_randomize.rs:14:43 [INFO] [stdout] | [INFO] [stdout] 14 | ::Device::fill(self.mut_data(), &mut |v| *v = dist.sample(rng)); [INFO] [stdout] | --------------------------------- ^^^^^^^^^^^^^^^ expected `f32`, found array `[[f32; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] ... [INFO] [stdout] 22 | tensor_impl!(Tensor2D, [M, N]); [INFO] [stdout] | ------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[f32; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] = note: this error originates in the macro `tensor_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/tensor_ops/select.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | Cpu::add(t_grad, t.data()); [INFO] [stdout] | ^^^^^^^^ ------ -------- expected `f32`, found array `[[[f32; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[[f32; O]; N]; M]` [INFO] [stdout] ... [INFO] [stdout] 51 | impl_select!(1, Tensor3D, [[usize; Z]; M], Tensor3D, {M, N, O, Z}); [INFO] [stdout] | ------------------------------------------------------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[f32; O]; N]; M]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[[f32; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/mod.rs:38:8 [INFO] [stdout] | [INFO] [stdout] 38 | fn add(lhs: &mut T, rhs: &T) [INFO] [stdout] | ^^^ ----------- ------- [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tensor/impl_randomize.rs:14:43 [INFO] [stdout] | [INFO] [stdout] 14 | ::Device::fill(self.mut_data(), &mut |v| *v = dist.sample(rng)); [INFO] [stdout] | --------------------------------- ^^^^^^^^^^^^^^^ expected `f32`, found array `[[[f32; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] ... [INFO] [stdout] 23 | tensor_impl!(Tensor3D, [M, N, O]); [INFO] [stdout] | --------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[f32; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] = note: this error originates in the macro `tensor_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tensor_ops/select.rs:28:23 [INFO] [stdout] | [INFO] [stdout] 28 | Cpu::fill(t.mut_data(), &mut |v| *v = 0.0); [INFO] [stdout] | --------- ^^^^^^^^^^^^ expected `f32`, found array `[[[f32; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] ... [INFO] [stdout] 52 | impl_select!(-1, Tensor3D, [[usize; N]; M], Tensor2D, {M, N, O}); [INFO] [stdout] | ------------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[f32; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tensor/impl_randomize.rs:14:43 [INFO] [stdout] | [INFO] [stdout] 14 | ::Device::fill(self.mut_data(), &mut |v| *v = dist.sample(rng)); [INFO] [stdout] | --------------------------------- ^^^^^^^^^^^^^^^ expected `f32`, found array `[[[[f32; P]; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] ... [INFO] [stdout] 24 | tensor_impl!(Tensor4D, [M, N, O, P]); [INFO] [stdout] | ------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[[f32; P]; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] = note: this error originates in the macro `tensor_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/tensor_ops/select.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | Cpu::add(t_grad, t.data()); [INFO] [stdout] | ^^^^^^^^ ------ -------- expected `f32`, found array `[[[f32; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[[f32; O]; N]; M]` [INFO] [stdout] ... [INFO] [stdout] 52 | impl_select!(-1, Tensor3D, [[usize; N]; M], Tensor2D, {M, N, O}); [INFO] [stdout] | ------------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[f32; O]; N]; M]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[[f32; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/mod.rs:38:8 [INFO] [stdout] | [INFO] [stdout] 38 | fn add(lhs: &mut T, rhs: &T) [INFO] [stdout] | ^^^ ----------- ------- [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tensor_ops/select.rs:28:23 [INFO] [stdout] | [INFO] [stdout] 28 | Cpu::fill(t.mut_data(), &mut |v| *v = 0.0); [INFO] [stdout] | --------- ^^^^^^^^^^^^ expected `f32`, found array `[[[f32; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] ... [INFO] [stdout] 53 | impl_select!(-1, Tensor3D, [[[usize; Z]; N]; M], Tensor3D, {M, N, O, Z}); [INFO] [stdout] | ------------------------------------------------------------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[f32; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/tensor_ops/select.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | Cpu::add(t_grad, t.data()); [INFO] [stdout] | ^^^^^^^^ ------ -------- expected `f32`, found array `[[[f32; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[[f32; O]; N]; M]` [INFO] [stdout] ... [INFO] [stdout] 53 | impl_select!(-1, Tensor3D, [[[usize; Z]; N]; M], Tensor3D, {M, N, O, Z}); [INFO] [stdout] | ------------------------------------------------------------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[f32; O]; N]; M]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[[f32; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/mod.rs:38:8 [INFO] [stdout] | [INFO] [stdout] 38 | fn add(lhs: &mut T, rhs: &T) [INFO] [stdout] | ^^^ ----------- ------- [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tensor_ops/select.rs:28:23 [INFO] [stdout] | [INFO] [stdout] 28 | Cpu::fill(t.mut_data(), &mut |v| *v = 0.0); [INFO] [stdout] | --------- ^^^^^^^^^^^^ expected `f32`, found array `[[[[f32; P]; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] ... [INFO] [stdout] 56 | impl_select!(0, Tensor4D, usize, Tensor3D, {M, N, O, P}); [INFO] [stdout] | ----------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[[f32; P]; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/tensor_ops/matmul.rs:345:13 [INFO] [stdout] | [INFO] [stdout] 345 | >::add(&mut sub_bs_summed, sub_gs.ref_gradient(&b)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ ------------------ ----------------------- expected `f32`, found array `[[f32; 2]; 3]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[{float}; 2]; 3]` [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[{float}; 2]; 3]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[f32; 2]; 3]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/mod.rs:38:8 [INFO] [stdout] | [INFO] [stdout] 38 | fn add(lhs: &mut T, rhs: &T) [INFO] [stdout] | ^^^ ----------- ------- [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/tensor_ops/select.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | Cpu::add(t_grad, t.data()); [INFO] [stdout] | ^^^^^^^^ ------ -------- expected `f32`, found array `[[[[f32; P]; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[[[f32; P]; O]; N]; M]` [INFO] [stdout] ... [INFO] [stdout] 56 | impl_select!(0, Tensor4D, usize, Tensor3D, {M, N, O, P}); [INFO] [stdout] | ----------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[[f32; P]; O]; N]; M]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[[[f32; P]; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/mod.rs:38:8 [INFO] [stdout] | [INFO] [stdout] 38 | fn add(lhs: &mut T, rhs: &T) [INFO] [stdout] | ^^^ ----------- ------- [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tensor_ops/select.rs:28:23 [INFO] [stdout] | [INFO] [stdout] 28 | Cpu::fill(t.mut_data(), &mut |v| *v = 0.0); [INFO] [stdout] | --------- ^^^^^^^^^^^^ expected `f32`, found array `[f32; M]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] ... [INFO] [stdout] 38 | impl_select!(-1, Tensor1D, usize, Tensor0D, {M}); [INFO] [stdout] | --------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [f32; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tensor_ops/select.rs:28:23 [INFO] [stdout] | [INFO] [stdout] 28 | Cpu::fill(t.mut_data(), &mut |v| *v = 0.0); [INFO] [stdout] | --------- ^^^^^^^^^^^^ expected `f32`, found array `[[[[f32; P]; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] ... [INFO] [stdout] 57 | impl_select!(0, Tensor4D, [usize; Z], Tensor4D, {M, N, O, P, Z}); [INFO] [stdout] | ---------------------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[[f32; P]; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/tensor_ops/select.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | Cpu::add(t_grad, t.data()); [INFO] [stdout] | ^^^^^^^^ ------ -------- expected `f32`, found array `[[[[f32; P]; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[[[f32; P]; O]; N]; M]` [INFO] [stdout] ... [INFO] [stdout] 57 | impl_select!(0, Tensor4D, [usize; Z], Tensor4D, {M, N, O, P, Z}); [INFO] [stdout] | ---------------------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[[f32; P]; O]; N]; M]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[[[f32; P]; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/mod.rs:38:8 [INFO] [stdout] | [INFO] [stdout] 38 | fn add(lhs: &mut T, rhs: &T) [INFO] [stdout] | ^^^ ----------- ------- [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/tensor_ops/select.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | Cpu::add(t_grad, t.data()); [INFO] [stdout] | ^^^^^^^^ ------ -------- expected `f32`, found array `[f32; M]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[f32; M]` [INFO] [stdout] ... [INFO] [stdout] 38 | impl_select!(-1, Tensor1D, usize, Tensor0D, {M}); [INFO] [stdout] | --------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [f32; M]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[f32; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/mod.rs:38:8 [INFO] [stdout] | [INFO] [stdout] 38 | fn add(lhs: &mut T, rhs: &T) [INFO] [stdout] | ^^^ ----------- ------- [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tensor_ops/select.rs:28:23 [INFO] [stdout] | [INFO] [stdout] 28 | Cpu::fill(t.mut_data(), &mut |v| *v = 0.0); [INFO] [stdout] | --------- ^^^^^^^^^^^^ expected `f32`, found array `[[[[f32; P]; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] ... [INFO] [stdout] 58 | impl_select!(1, Tensor4D, [usize; M], Tensor3D, {M, N, O, P}); [INFO] [stdout] | ---------------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[[f32; P]; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tensor_ops/select.rs:28:23 [INFO] [stdout] | [INFO] [stdout] 28 | Cpu::fill(t.mut_data(), &mut |v| *v = 0.0); [INFO] [stdout] | --------- ^^^^^^^^^^^^ expected `f32`, found array `[f32; M]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] ... [INFO] [stdout] 39 | impl_select!(-1, Tensor1D, [usize; Z], Tensor1D, {M, Z}); [INFO] [stdout] | -------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [f32; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/tensor_ops/select.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | Cpu::add(t_grad, t.data()); [INFO] [stdout] | ^^^^^^^^ ------ -------- expected `f32`, found array `[[[[f32; P]; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[[[f32; P]; O]; N]; M]` [INFO] [stdout] ... [INFO] [stdout] 58 | impl_select!(1, Tensor4D, [usize; M], Tensor3D, {M, N, O, P}); [INFO] [stdout] | ---------------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[[f32; P]; O]; N]; M]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[[[f32; P]; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/mod.rs:38:8 [INFO] [stdout] | [INFO] [stdout] 38 | fn add(lhs: &mut T, rhs: &T) [INFO] [stdout] | ^^^ ----------- ------- [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tensor_ops/select.rs:28:23 [INFO] [stdout] | [INFO] [stdout] 28 | Cpu::fill(t.mut_data(), &mut |v| *v = 0.0); [INFO] [stdout] | --------- ^^^^^^^^^^^^ expected `f32`, found array `[[[[f32; P]; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] ... [INFO] [stdout] 59 | impl_select!(1, Tensor4D, [[usize; Z]; M], Tensor4D, {M, N, O, P, Z}); [INFO] [stdout] | --------------------------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[[f32; P]; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/tensor_ops/select.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | Cpu::add(t_grad, t.data()); [INFO] [stdout] | ^^^^^^^^ ------ -------- expected `f32`, found array `[f32; M]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[f32; M]` [INFO] [stdout] ... [INFO] [stdout] 39 | impl_select!(-1, Tensor1D, [usize; Z], Tensor1D, {M, Z}); [INFO] [stdout] | -------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [f32; M]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[f32; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/mod.rs:38:8 [INFO] [stdout] | [INFO] [stdout] 38 | fn add(lhs: &mut T, rhs: &T) [INFO] [stdout] | ^^^ ----------- ------- [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tensor_ops/select.rs:28:23 [INFO] [stdout] | [INFO] [stdout] 28 | Cpu::fill(t.mut_data(), &mut |v| *v = 0.0); [INFO] [stdout] | --------- ^^^^^^^^^^^^ expected `f32`, found array `[[f32; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] ... [INFO] [stdout] 42 | impl_select!(0, Tensor2D, usize, Tensor1D, {M, N}); [INFO] [stdout] | ----------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[f32; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/tensor_ops/select.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | Cpu::add(t_grad, t.data()); [INFO] [stdout] | ^^^^^^^^ ------ -------- expected `f32`, found array `[[[[f32; P]; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[[[f32; P]; O]; N]; M]` [INFO] [stdout] ... [INFO] [stdout] 59 | impl_select!(1, Tensor4D, [[usize; Z]; M], Tensor4D, {M, N, O, P, Z}); [INFO] [stdout] | --------------------------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[[f32; P]; O]; N]; M]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[[[f32; P]; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/mod.rs:38:8 [INFO] [stdout] | [INFO] [stdout] 38 | fn add(lhs: &mut T, rhs: &T) [INFO] [stdout] | ^^^ ----------- ------- [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tensor_ops/select.rs:28:23 [INFO] [stdout] | [INFO] [stdout] 28 | Cpu::fill(t.mut_data(), &mut |v| *v = 0.0); [INFO] [stdout] | --------- ^^^^^^^^^^^^ expected `f32`, found array `[[[[f32; P]; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] ... [INFO] [stdout] 60 | impl_select!(2, Tensor4D, [[usize; N]; M], Tensor3D, {M, N, O, P}); [INFO] [stdout] | --------------------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[[f32; P]; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/tensor_ops/select.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | Cpu::add(t_grad, t.data()); [INFO] [stdout] | ^^^^^^^^ ------ -------- expected `f32`, found array `[[f32; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[f32; N]; M]` [INFO] [stdout] ... [INFO] [stdout] 42 | impl_select!(0, Tensor2D, usize, Tensor1D, {M, N}); [INFO] [stdout] | ----------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[f32; N]; M]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[f32; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/mod.rs:38:8 [INFO] [stdout] | [INFO] [stdout] 38 | fn add(lhs: &mut T, rhs: &T) [INFO] [stdout] | ^^^ ----------- ------- [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tensor_ops/select.rs:28:23 [INFO] [stdout] | [INFO] [stdout] 28 | Cpu::fill(t.mut_data(), &mut |v| *v = 0.0); [INFO] [stdout] | --------- ^^^^^^^^^^^^ expected `f32`, found array `[[f32; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] ... [INFO] [stdout] 43 | impl_select!(0, Tensor2D, [usize; Z], Tensor2D, {M, N, Z}); [INFO] [stdout] | ---------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[f32; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/tensor_ops/select.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | Cpu::add(t_grad, t.data()); [INFO] [stdout] | ^^^^^^^^ ------ -------- expected `f32`, found array `[[[[f32; P]; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[[[f32; P]; O]; N]; M]` [INFO] [stdout] ... [INFO] [stdout] 60 | impl_select!(2, Tensor4D, [[usize; N]; M], Tensor3D, {M, N, O, P}); [INFO] [stdout] | --------------------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[[f32; P]; O]; N]; M]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[[[f32; P]; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/mod.rs:38:8 [INFO] [stdout] | [INFO] [stdout] 38 | fn add(lhs: &mut T, rhs: &T) [INFO] [stdout] | ^^^ ----------- ------- [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tensor_ops/select.rs:28:23 [INFO] [stdout] | [INFO] [stdout] 28 | Cpu::fill(t.mut_data(), &mut |v| *v = 0.0); [INFO] [stdout] | --------- ^^^^^^^^^^^^ expected `f32`, found array `[[[[f32; P]; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] ... [INFO] [stdout] 61 | impl_select!(2, Tensor4D, [[[usize; Z]; N]; M], Tensor4D, {M, N, O, P, Z}); [INFO] [stdout] | -------------------------------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[[f32; P]; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/tensor_ops/select.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | Cpu::add(t_grad, t.data()); [INFO] [stdout] | ^^^^^^^^ ------ -------- expected `f32`, found array `[[f32; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[f32; N]; M]` [INFO] [stdout] ... [INFO] [stdout] 43 | impl_select!(0, Tensor2D, [usize; Z], Tensor2D, {M, N, Z}); [INFO] [stdout] | ---------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[f32; N]; M]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[f32; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/mod.rs:38:8 [INFO] [stdout] | [INFO] [stdout] 38 | fn add(lhs: &mut T, rhs: &T) [INFO] [stdout] | ^^^ ----------- ------- [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tensor_ops/select.rs:28:23 [INFO] [stdout] | [INFO] [stdout] 28 | Cpu::fill(t.mut_data(), &mut |v| *v = 0.0); [INFO] [stdout] | --------- ^^^^^^^^^^^^ expected `f32`, found array `[[f32; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] ... [INFO] [stdout] 44 | impl_select!(-1, Tensor2D, [usize; M], Tensor1D, {M, N}); [INFO] [stdout] | ----------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[f32; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/tensor_ops/select.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | Cpu::add(t_grad, t.data()); [INFO] [stdout] | ^^^^^^^^ ------ -------- expected `f32`, found array `[[[[f32; P]; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[[[f32; P]; O]; N]; M]` [INFO] [stdout] ... [INFO] [stdout] 61 | impl_select!(2, Tensor4D, [[[usize; Z]; N]; M], Tensor4D, {M, N, O, P, Z}); [INFO] [stdout] | -------------------------------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[[f32; P]; O]; N]; M]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[[[f32; P]; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/mod.rs:38:8 [INFO] [stdout] | [INFO] [stdout] 38 | fn add(lhs: &mut T, rhs: &T) [INFO] [stdout] | ^^^ ----------- ------- [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tensor_ops/select.rs:28:23 [INFO] [stdout] | [INFO] [stdout] 28 | Cpu::fill(t.mut_data(), &mut |v| *v = 0.0); [INFO] [stdout] | --------- ^^^^^^^^^^^^ expected `f32`, found array `[[[[f32; P]; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] ... [INFO] [stdout] 62 | impl_select!(-1, Tensor4D, [[[usize; O]; N]; M], Tensor3D, {M, N, O, P}); [INFO] [stdout] | --------------------------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[[f32; P]; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/tensor_ops/select.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | Cpu::add(t_grad, t.data()); [INFO] [stdout] | ^^^^^^^^ ------ -------- expected `f32`, found array `[[f32; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[f32; N]; M]` [INFO] [stdout] ... [INFO] [stdout] 44 | impl_select!(-1, Tensor2D, [usize; M], Tensor1D, {M, N}); [INFO] [stdout] | ----------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[f32; N]; M]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[f32; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/mod.rs:38:8 [INFO] [stdout] | [INFO] [stdout] 38 | fn add(lhs: &mut T, rhs: &T) [INFO] [stdout] | ^^^ ----------- ------- [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tensor_ops/select.rs:28:23 [INFO] [stdout] | [INFO] [stdout] 28 | Cpu::fill(t.mut_data(), &mut |v| *v = 0.0); [INFO] [stdout] | --------- ^^^^^^^^^^^^ expected `f32`, found array `[[f32; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] ... [INFO] [stdout] 45 | impl_select!(-1, Tensor2D, [[usize; Z]; M], Tensor2D, {M, N, Z}); [INFO] [stdout] | ---------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[f32; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/tensor_ops/select.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | Cpu::add(t_grad, t.data()); [INFO] [stdout] | ^^^^^^^^ ------ -------- expected `f32`, found array `[[[[f32; P]; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[[[f32; P]; O]; N]; M]` [INFO] [stdout] ... [INFO] [stdout] 62 | impl_select!(-1, Tensor4D, [[[usize; O]; N]; M], Tensor3D, {M, N, O, P}); [INFO] [stdout] | --------------------------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[[f32; P]; O]; N]; M]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[[[f32; P]; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/mod.rs:38:8 [INFO] [stdout] | [INFO] [stdout] 38 | fn add(lhs: &mut T, rhs: &T) [INFO] [stdout] | ^^^ ----------- ------- [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tensor_ops/select.rs:28:23 [INFO] [stdout] | [INFO] [stdout] 28 | Cpu::fill(t.mut_data(), &mut |v| *v = 0.0); [INFO] [stdout] | --------- ^^^^^^^^^^^^ expected `f32`, found array `[[[[f32; P]; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] ... [INFO] [stdout] 63 | impl_select!(-1, Tensor4D, [[[[usize; Z]; O]; N]; M], Tensor4D, {M, N, O, P, Z}); [INFO] [stdout] | -------------------------------------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[[f32; P]; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/tensor_ops/select.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | Cpu::add(t_grad, t.data()); [INFO] [stdout] | ^^^^^^^^ ------ -------- expected `f32`, found array `[[f32; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[f32; N]; M]` [INFO] [stdout] ... [INFO] [stdout] 45 | impl_select!(-1, Tensor2D, [[usize; Z]; M], Tensor2D, {M, N, Z}); [INFO] [stdout] | ---------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[f32; N]; M]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[f32; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/mod.rs:38:8 [INFO] [stdout] | [INFO] [stdout] 38 | fn add(lhs: &mut T, rhs: &T) [INFO] [stdout] | ^^^ ----------- ------- [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/tensor_ops/select.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | Cpu::add(t_grad, t.data()); [INFO] [stdout] | ^^^^^^^^ ------ -------- expected `f32`, found array `[[[[f32; P]; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[[[f32; P]; O]; N]; M]` [INFO] [stdout] ... [INFO] [stdout] 63 | impl_select!(-1, Tensor4D, [[[[usize; Z]; O]; N]; M], Tensor4D, {M, N, O, P, Z}); [INFO] [stdout] | -------------------------------------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[[f32; P]; O]; N]; M]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[[[f32; P]; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/mod.rs:38:8 [INFO] [stdout] | [INFO] [stdout] 38 | fn add(lhs: &mut T, rhs: &T) [INFO] [stdout] | ^^^ ----------- ------- [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 58 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0308`. [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tensor_ops/select.rs:28:23 [INFO] [stdout] | [INFO] [stdout] 28 | Cpu::fill(t.mut_data(), &mut |v| *v = 0.0); [INFO] [stdout] | --------- ^^^^^^^^^^^^ expected `f32`, found array `[[[f32; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] ... [INFO] [stdout] 48 | impl_select!(0, Tensor3D, usize, Tensor2D, {M, N, O}); [INFO] [stdout] | -------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[f32; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `dfdx` due to 59 previous errors [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/tensor_ops/select.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | Cpu::add(t_grad, t.data()); [INFO] [stdout] | ^^^^^^^^ ------ -------- expected `f32`, found array `[[[f32; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[[f32; O]; N]; M]` [INFO] [stdout] ... [INFO] [stdout] 48 | impl_select!(0, Tensor3D, usize, Tensor2D, {M, N, O}); [INFO] [stdout] | -------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[f32; O]; N]; M]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[[f32; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/mod.rs:38:8 [INFO] [stdout] | [INFO] [stdout] 38 | fn add(lhs: &mut T, rhs: &T) [INFO] [stdout] | ^^^ ----------- ------- [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tensor_ops/select.rs:28:23 [INFO] [stdout] | [INFO] [stdout] 28 | Cpu::fill(t.mut_data(), &mut |v| *v = 0.0); [INFO] [stdout] | --------- ^^^^^^^^^^^^ expected `f32`, found array `[[[f32; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] ... [INFO] [stdout] 49 | impl_select!(0, Tensor3D, [usize; Z], Tensor3D, {M, N, O, Z}); [INFO] [stdout] | ------------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[f32; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/tensor_ops/select.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | Cpu::add(t_grad, t.data()); [INFO] [stdout] | ^^^^^^^^ ------ -------- expected `f32`, found array `[[[f32; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[[f32; O]; N]; M]` [INFO] [stdout] ... [INFO] [stdout] 49 | impl_select!(0, Tensor3D, [usize; Z], Tensor3D, {M, N, O, Z}); [INFO] [stdout] | ------------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[f32; O]; N]; M]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[[f32; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/mod.rs:38:8 [INFO] [stdout] | [INFO] [stdout] 38 | fn add(lhs: &mut T, rhs: &T) [INFO] [stdout] | ^^^ ----------- ------- [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tensor_ops/select.rs:28:23 [INFO] [stdout] | [INFO] [stdout] 28 | Cpu::fill(t.mut_data(), &mut |v| *v = 0.0); [INFO] [stdout] | --------- ^^^^^^^^^^^^ expected `f32`, found array `[[[f32; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] ... [INFO] [stdout] 50 | impl_select!(1, Tensor3D, [usize; M], Tensor2D, {M, N, O}); [INFO] [stdout] | ------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[f32; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/tensor_ops/select.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | Cpu::add(t_grad, t.data()); [INFO] [stdout] | ^^^^^^^^ ------ -------- expected `f32`, found array `[[[f32; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[[f32; O]; N]; M]` [INFO] [stdout] ... [INFO] [stdout] 50 | impl_select!(1, Tensor3D, [usize; M], Tensor2D, {M, N, O}); [INFO] [stdout] | ------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[f32; O]; N]; M]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[[f32; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/mod.rs:38:8 [INFO] [stdout] | [INFO] [stdout] 38 | fn add(lhs: &mut T, rhs: &T) [INFO] [stdout] | ^^^ ----------- ------- [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tensor_ops/select.rs:28:23 [INFO] [stdout] | [INFO] [stdout] 28 | Cpu::fill(t.mut_data(), &mut |v| *v = 0.0); [INFO] [stdout] | --------- ^^^^^^^^^^^^ expected `f32`, found array `[[[f32; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] ... [INFO] [stdout] 51 | impl_select!(1, Tensor3D, [[usize; Z]; M], Tensor3D, {M, N, O, Z}); [INFO] [stdout] | ------------------------------------------------------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[f32; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/tensor_ops/select.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | Cpu::add(t_grad, t.data()); [INFO] [stdout] | ^^^^^^^^ ------ -------- expected `f32`, found array `[[[f32; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[[f32; O]; N]; M]` [INFO] [stdout] ... [INFO] [stdout] 51 | impl_select!(1, Tensor3D, [[usize; Z]; M], Tensor3D, {M, N, O, Z}); [INFO] [stdout] | ------------------------------------------------------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[f32; O]; N]; M]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[[f32; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/mod.rs:38:8 [INFO] [stdout] | [INFO] [stdout] 38 | fn add(lhs: &mut T, rhs: &T) [INFO] [stdout] | ^^^ ----------- ------- [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tensor_ops/select.rs:28:23 [INFO] [stdout] | [INFO] [stdout] 28 | Cpu::fill(t.mut_data(), &mut |v| *v = 0.0); [INFO] [stdout] | --------- ^^^^^^^^^^^^ expected `f32`, found array `[[[f32; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] ... [INFO] [stdout] 52 | impl_select!(-1, Tensor3D, [[usize; N]; M], Tensor2D, {M, N, O}); [INFO] [stdout] | ------------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[f32; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/tensor_ops/select.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | Cpu::add(t_grad, t.data()); [INFO] [stdout] | ^^^^^^^^ ------ -------- expected `f32`, found array `[[[f32; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[[f32; O]; N]; M]` [INFO] [stdout] ... [INFO] [stdout] 52 | impl_select!(-1, Tensor3D, [[usize; N]; M], Tensor2D, {M, N, O}); [INFO] [stdout] | ------------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[f32; O]; N]; M]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[[f32; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/mod.rs:38:8 [INFO] [stdout] | [INFO] [stdout] 38 | fn add(lhs: &mut T, rhs: &T) [INFO] [stdout] | ^^^ ----------- ------- [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tensor_ops/select.rs:28:23 [INFO] [stdout] | [INFO] [stdout] 28 | Cpu::fill(t.mut_data(), &mut |v| *v = 0.0); [INFO] [stdout] | --------- ^^^^^^^^^^^^ expected `f32`, found array `[[[f32; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] ... [INFO] [stdout] 53 | impl_select!(-1, Tensor3D, [[[usize; Z]; N]; M], Tensor3D, {M, N, O, Z}); [INFO] [stdout] | ------------------------------------------------------------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[f32; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/tensor_ops/select.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | Cpu::add(t_grad, t.data()); [INFO] [stdout] | ^^^^^^^^ ------ -------- expected `f32`, found array `[[[f32; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[[f32; O]; N]; M]` [INFO] [stdout] ... [INFO] [stdout] 53 | impl_select!(-1, Tensor3D, [[[usize; Z]; N]; M], Tensor3D, {M, N, O, Z}); [INFO] [stdout] | ------------------------------------------------------------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[f32; O]; N]; M]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[[f32; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/mod.rs:38:8 [INFO] [stdout] | [INFO] [stdout] 38 | fn add(lhs: &mut T, rhs: &T) [INFO] [stdout] | ^^^ ----------- ------- [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tensor_ops/select.rs:28:23 [INFO] [stdout] | [INFO] [stdout] 28 | Cpu::fill(t.mut_data(), &mut |v| *v = 0.0); [INFO] [stdout] | --------- ^^^^^^^^^^^^ expected `f32`, found array `[[[[f32; P]; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] ... [INFO] [stdout] 56 | impl_select!(0, Tensor4D, usize, Tensor3D, {M, N, O, P}); [INFO] [stdout] | ----------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[[f32; P]; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/tensor_ops/select.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | Cpu::add(t_grad, t.data()); [INFO] [stdout] | ^^^^^^^^ ------ -------- expected `f32`, found array `[[[[f32; P]; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[[[f32; P]; O]; N]; M]` [INFO] [stdout] ... [INFO] [stdout] 56 | impl_select!(0, Tensor4D, usize, Tensor3D, {M, N, O, P}); [INFO] [stdout] | ----------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[[f32; P]; O]; N]; M]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[[[f32; P]; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/mod.rs:38:8 [INFO] [stdout] | [INFO] [stdout] 38 | fn add(lhs: &mut T, rhs: &T) [INFO] [stdout] | ^^^ ----------- ------- [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tensor_ops/select.rs:28:23 [INFO] [stdout] | [INFO] [stdout] 28 | Cpu::fill(t.mut_data(), &mut |v| *v = 0.0); [INFO] [stdout] | --------- ^^^^^^^^^^^^ expected `f32`, found array `[[[[f32; P]; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] ... [INFO] [stdout] 57 | impl_select!(0, Tensor4D, [usize; Z], Tensor4D, {M, N, O, P, Z}); [INFO] [stdout] | ---------------------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[[f32; P]; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/tensor_ops/select.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | Cpu::add(t_grad, t.data()); [INFO] [stdout] | ^^^^^^^^ ------ -------- expected `f32`, found array `[[[[f32; P]; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[[[f32; P]; O]; N]; M]` [INFO] [stdout] ... [INFO] [stdout] 57 | impl_select!(0, Tensor4D, [usize; Z], Tensor4D, {M, N, O, P, Z}); [INFO] [stdout] | ---------------------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[[f32; P]; O]; N]; M]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[[[f32; P]; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/mod.rs:38:8 [INFO] [stdout] | [INFO] [stdout] 38 | fn add(lhs: &mut T, rhs: &T) [INFO] [stdout] | ^^^ ----------- ------- [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tensor_ops/select.rs:28:23 [INFO] [stdout] | [INFO] [stdout] 28 | Cpu::fill(t.mut_data(), &mut |v| *v = 0.0); [INFO] [stdout] | --------- ^^^^^^^^^^^^ expected `f32`, found array `[[[[f32; P]; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] ... [INFO] [stdout] 58 | impl_select!(1, Tensor4D, [usize; M], Tensor3D, {M, N, O, P}); [INFO] [stdout] | ---------------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[[f32; P]; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/tensor_ops/select.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | Cpu::add(t_grad, t.data()); [INFO] [stdout] | ^^^^^^^^ ------ -------- expected `f32`, found array `[[[[f32; P]; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[[[f32; P]; O]; N]; M]` [INFO] [stdout] ... [INFO] [stdout] 58 | impl_select!(1, Tensor4D, [usize; M], Tensor3D, {M, N, O, P}); [INFO] [stdout] | ---------------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[[f32; P]; O]; N]; M]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[[[f32; P]; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/mod.rs:38:8 [INFO] [stdout] | [INFO] [stdout] 38 | fn add(lhs: &mut T, rhs: &T) [INFO] [stdout] | ^^^ ----------- ------- [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tensor_ops/select.rs:28:23 [INFO] [stdout] | [INFO] [stdout] 28 | Cpu::fill(t.mut_data(), &mut |v| *v = 0.0); [INFO] [stdout] | --------- ^^^^^^^^^^^^ expected `f32`, found array `[[[[f32; P]; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] ... [INFO] [stdout] 59 | impl_select!(1, Tensor4D, [[usize; Z]; M], Tensor4D, {M, N, O, P, Z}); [INFO] [stdout] | --------------------------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[[f32; P]; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/tensor_ops/select.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | Cpu::add(t_grad, t.data()); [INFO] [stdout] | ^^^^^^^^ ------ -------- expected `f32`, found array `[[[[f32; P]; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[[[f32; P]; O]; N]; M]` [INFO] [stdout] ... [INFO] [stdout] 59 | impl_select!(1, Tensor4D, [[usize; Z]; M], Tensor4D, {M, N, O, P, Z}); [INFO] [stdout] | --------------------------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[[f32; P]; O]; N]; M]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[[[f32; P]; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/mod.rs:38:8 [INFO] [stdout] | [INFO] [stdout] 38 | fn add(lhs: &mut T, rhs: &T) [INFO] [stdout] | ^^^ ----------- ------- [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tensor_ops/select.rs:28:23 [INFO] [stdout] | [INFO] [stdout] 28 | Cpu::fill(t.mut_data(), &mut |v| *v = 0.0); [INFO] [stdout] | --------- ^^^^^^^^^^^^ expected `f32`, found array `[[[[f32; P]; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] ... [INFO] [stdout] 60 | impl_select!(2, Tensor4D, [[usize; N]; M], Tensor3D, {M, N, O, P}); [INFO] [stdout] | --------------------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[[f32; P]; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/tensor_ops/select.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | Cpu::add(t_grad, t.data()); [INFO] [stdout] | ^^^^^^^^ ------ -------- expected `f32`, found array `[[[[f32; P]; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[[[f32; P]; O]; N]; M]` [INFO] [stdout] ... [INFO] [stdout] 60 | impl_select!(2, Tensor4D, [[usize; N]; M], Tensor3D, {M, N, O, P}); [INFO] [stdout] | --------------------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[[f32; P]; O]; N]; M]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[[[f32; P]; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/mod.rs:38:8 [INFO] [stdout] | [INFO] [stdout] 38 | fn add(lhs: &mut T, rhs: &T) [INFO] [stdout] | ^^^ ----------- ------- [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tensor_ops/select.rs:28:23 [INFO] [stdout] | [INFO] [stdout] 28 | Cpu::fill(t.mut_data(), &mut |v| *v = 0.0); [INFO] [stdout] | --------- ^^^^^^^^^^^^ expected `f32`, found array `[[[[f32; P]; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] ... [INFO] [stdout] 61 | impl_select!(2, Tensor4D, [[[usize; Z]; N]; M], Tensor4D, {M, N, O, P, Z}); [INFO] [stdout] | -------------------------------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[[f32; P]; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/tensor_ops/select.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | Cpu::add(t_grad, t.data()); [INFO] [stdout] | ^^^^^^^^ ------ -------- expected `f32`, found array `[[[[f32; P]; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[[[f32; P]; O]; N]; M]` [INFO] [stdout] ... [INFO] [stdout] 61 | impl_select!(2, Tensor4D, [[[usize; Z]; N]; M], Tensor4D, {M, N, O, P, Z}); [INFO] [stdout] | -------------------------------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[[f32; P]; O]; N]; M]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[[[f32; P]; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/mod.rs:38:8 [INFO] [stdout] | [INFO] [stdout] 38 | fn add(lhs: &mut T, rhs: &T) [INFO] [stdout] | ^^^ ----------- ------- [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tensor_ops/select.rs:28:23 [INFO] [stdout] | [INFO] [stdout] 28 | Cpu::fill(t.mut_data(), &mut |v| *v = 0.0); [INFO] [stdout] | --------- ^^^^^^^^^^^^ expected `f32`, found array `[[[[f32; P]; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] ... [INFO] [stdout] 62 | impl_select!(-1, Tensor4D, [[[usize; O]; N]; M], Tensor3D, {M, N, O, P}); [INFO] [stdout] | --------------------------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[[f32; P]; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/tensor_ops/select.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | Cpu::add(t_grad, t.data()); [INFO] [stdout] | ^^^^^^^^ ------ -------- expected `f32`, found array `[[[[f32; P]; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[[[f32; P]; O]; N]; M]` [INFO] [stdout] ... [INFO] [stdout] 62 | impl_select!(-1, Tensor4D, [[[usize; O]; N]; M], Tensor3D, {M, N, O, P}); [INFO] [stdout] | --------------------------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[[f32; P]; O]; N]; M]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[[[f32; P]; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/mod.rs:38:8 [INFO] [stdout] | [INFO] [stdout] 38 | fn add(lhs: &mut T, rhs: &T) [INFO] [stdout] | ^^^ ----------- ------- [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tensor_ops/select.rs:28:23 [INFO] [stdout] | [INFO] [stdout] 28 | Cpu::fill(t.mut_data(), &mut |v| *v = 0.0); [INFO] [stdout] | --------- ^^^^^^^^^^^^ expected `f32`, found array `[[[[f32; P]; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] ... [INFO] [stdout] 63 | impl_select!(-1, Tensor4D, [[[[usize; Z]; O]; N]; M], Tensor4D, {M, N, O, P, Z}); [INFO] [stdout] | -------------------------------------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[[f32; P]; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/fill.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | fn fill(out: &mut T, f: &mut F); [INFO] [stdout] | ^^^^ [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/tensor_ops/select.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | Cpu::add(t_grad, t.data()); [INFO] [stdout] | ^^^^^^^^ ------ -------- expected `f32`, found array `[[[[f32; P]; O]; N]; M]` [INFO] [stdout] | | [INFO] [stdout] | expected `f32`, found array `[[[[f32; P]; O]; N]; M]` [INFO] [stdout] ... [INFO] [stdout] 63 | impl_select!(-1, Tensor4D, [[[[usize; Z]; O]; N]; M], Tensor4D, {M, N, O, P, Z}); [INFO] [stdout] | -------------------------------------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut f32` [INFO] [stdout] found mutable reference `&mut [[[[f32; P]; O]; N]; M]` [INFO] [stdout] = note: expected reference `&f32` [INFO] [stdout] found reference `&[[[[f32; P]; O]; N]; M]` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/devices/mod.rs:38:8 [INFO] [stdout] | [INFO] [stdout] 38 | fn add(lhs: &mut T, rhs: &T) [INFO] [stdout] | ^^^ ----------- ------- [INFO] [stdout] = note: this error originates in the macro `impl_select` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 74 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0308`. [INFO] [stdout] [INFO] [stderr] error: could not compile `dfdx` due to 75 previous errors [INFO] running `Command { std: "docker" "inspect" "37db85a390291f35d32a93a7dffe547946109ddee8521bf45efa9068893c19d6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "37db85a390291f35d32a93a7dffe547946109ddee8521bf45efa9068893c19d6", kill_on_drop: false }` [INFO] [stdout] 37db85a390291f35d32a93a7dffe547946109ddee8521bf45efa9068893c19d6