[INFO] fetching crate alga 0.9.3...
[INFO] checking alga-0.9.3 against master#39cb3386ddc6c71657418be28dbb3987eea4aa4b for pr-133536
[INFO] extracting crate alga 0.9.3 into /workspace/builds/worker-6-tc1/source
[INFO] validating manifest of crates.io crate alga 0.9.3 on toolchain 39cb3386ddc6c71657418be28dbb3987eea4aa4b
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+39cb3386ddc6c71657418be28dbb3987eea4aa4b" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate alga 0.9.3
[INFO] finished tweaking crates.io crate alga 0.9.3
[INFO] tweaked toml for crates.io crate alga 0.9.3 written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] crate crates.io crate alga 0.9.3 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+39cb3386ddc6c71657418be28dbb3987eea4aa4b" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded env_logger v0.6.2
[INFO] [stderr]   Downloaded libc v0.2.67
[INFO] [stderr]   Downloaded cc v1.0.50
[INFO] [stderr]   Downloaded edit-distance v2.1.0
[INFO] [stderr]   Downloaded alga_derive v0.9.1
[INFO] [stderr]   Downloaded libm v0.2.1
[INFO] [stderr]   Downloaded quickcheck v0.8.5
[INFO] [stderr]   Downloaded num-traits v0.2.11
[INFO] [stderr]   Downloaded aho-corasick v0.7.9
[INFO] [stderr]   Downloaded regex v1.3.4
[INFO] [stderr]   Downloaded regex-syntax v0.6.15
[INFO] [stderr]   Downloaded decimal v2.0.4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/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:4a844ea9eb2546a2d2c7022eacef16ef2e8229c7fbb2c7d4d55a9ceca922f72d" "/opt/rustwide/cargo-home/bin/cargo" "+39cb3386ddc6c71657418be28dbb3987eea4aa4b" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 1cd7fc25d0b657e3751a219579e3e5853fd9c8d03a7c150598ed2e73c7c7251e
[INFO] running `Command { std: "docker" "start" "-a" "1cd7fc25d0b657e3751a219579e3e5853fd9c8d03a7c150598ed2e73c7c7251e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "1cd7fc25d0b657e3751a219579e3e5853fd9c8d03a7c150598ed2e73c7c7251e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1cd7fc25d0b657e3751a219579e3e5853fd9c8d03a7c150598ed2e73c7c7251e", kill_on_drop: false }`
[INFO] [stdout] 1cd7fc25d0b657e3751a219579e3e5853fd9c8d03a7c150598ed2e73c7c7251e
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/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:4a844ea9eb2546a2d2c7022eacef16ef2e8229c7fbb2c7d4d55a9ceca922f72d" "/opt/rustwide/cargo-home/bin/cargo" "+39cb3386ddc6c71657418be28dbb3987eea4aa4b" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] bbd509ba2d7a1afad9c5e811d09ecd6e27aa3dcdad81b8146879f2cded6741bf
[INFO] running `Command { std: "docker" "start" "-a" "bbd509ba2d7a1afad9c5e811d09ecd6e27aa3dcdad81b8146879f2cded6741bf", kill_on_drop: false }`
[INFO] [stderr]    Compiling autocfg v0.1.7
[INFO] [stderr]    Compiling memchr v2.3.3
[INFO] [stderr]    Compiling rand_core v0.4.2
[INFO] [stderr]    Compiling libc v0.2.67
[INFO] [stderr]    Compiling autocfg v1.0.0
[INFO] [stderr]    Compiling log v0.4.8
[INFO] [stderr]    Compiling libm v0.2.1
[INFO] [stderr]     Checking rand_core v0.3.1
[INFO] [stderr]    Compiling lazy_static v1.4.0
[INFO] [stderr]    Compiling proc-macro2 v0.4.30
[INFO] [stderr]    Compiling thread_local v1.0.1
[INFO] [stderr]    Compiling rand_pcg v0.1.2
[INFO] [stderr]    Compiling rand_chacha v0.1.1
[INFO] [stderr]    Compiling rand v0.6.5
[INFO] [stderr]    Compiling num-traits v0.2.11
[INFO] [stderr]    Compiling aho-corasick v0.7.9
[INFO] [stderr]    Compiling cfg-if v0.1.10
[INFO] [stderr]    Compiling regex-syntax v0.6.15
[INFO] [stderr]    Compiling unicode-xid v0.1.0
[INFO] [stderr]    Compiling num-complex v0.2.4
[INFO] [stderr]    Compiling rand_os v0.1.3
[INFO] [stderr]    Compiling rand_hc v0.1.0
[INFO] [stderr]    Compiling rand_xorshift v0.1.1
[INFO] [stderr]    Compiling rand_isaac v0.1.1
[INFO] [stderr]    Compiling rand_jitter v0.1.4
[INFO] [stderr]    Compiling syn v0.15.44
[INFO] [stderr]    Compiling quote v0.6.13
[INFO] [stderr]     Checking approx v0.3.2
[INFO] [stderr]    Compiling edit-distance v2.1.0
[INFO] [stderr]     Checking alga v0.9.3 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused macro definition: `impl_approx_eq`
[INFO] [stdout]    --> src/macros.rs:143:14
[INFO] [stdout]     |
[INFO] [stdout] 143 | macro_rules! impl_approx_eq {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_macros)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition: `impl_quasigroup`
[INFO] [stdout]    --> src/general/one_operator.rs:110:14
[INFO] [stdout]     |
[INFO] [stdout] 110 | macro_rules! impl_quasigroup(
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition: `impl_loop`
[INFO] [stdout]    --> src/general/one_operator.rs:222:14
[INFO] [stdout]     |
[INFO] [stdout] 222 | macro_rules! impl_loop(
[INFO] [stdout]     |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Rem`
[INFO] [stdout]  --> src/general/operator.rs:4:73
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub use std::ops::{Add, AddAssign, Div, DivAssign, Mul, MulAssign, Neg, Rem, Sub, SubAssign};
[INFO] [stdout]   |                                                                         ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated trait `general::Real`: This has been renamed `RealField`.
[INFO] [stdout]    --> src/general/mod.rs:200:20
[INFO] [stdout]     |
[INFO] [stdout] 200 | impl<T: RealField> Real for T {}
[INFO] [stdout]     |                    ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` is ignored on function prototypes
[INFO] [stdout]    --> src/linear/matrix.rs:108:5
[INFO] [stdout]     |
[INFO] [stdout] 108 |     #[inline]
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_attributes)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` is ignored on function prototypes
[INFO] [stdout]    --> src/linear/transformation.rs:275:5
[INFO] [stdout]     |
[INFO] [stdout] 275 |     #[inline]
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling regex v1.3.4
[INFO] [stderr]    Compiling env_logger v0.6.2
[INFO] [stderr]    Compiling quickcheck v0.8.5
[INFO] [stderr]    Compiling alga_derive v0.9.1
[INFO] [stdout] warning: function `test_trait_impl` is never used
[INFO] [stdout]   --> tests/derive.rs:20:4
[INFO] [stdout]    |
[INFO] [stdout] 20 | fn test_trait_impl() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> tests/derive.rs:15:10
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Alga, Clone, PartialEq, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `AbstractField` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_ALGA_DERIVE_W`
[INFO] [stdout] 16 | #[alga_traits(Field(Additive, Multiplicative))]
[INFO] [stdout]    |                     --------  -------------- `Multiplicative` is not local
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     `Additive` is not local
[INFO] [stdout] 17 | #[alga_quickcheck]
[INFO] [stdout] 18 | struct W(f64);
[INFO] [stdout]    |        - `W` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]    = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> tests/derive.rs:15:10
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Alga, Clone, PartialEq, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `AbstractRingCommutative` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_ALGA_DERIVE_W`
[INFO] [stdout] 16 | #[alga_traits(Field(Additive, Multiplicative))]
[INFO] [stdout]    |                     --------  -------------- `Multiplicative` is not local
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     `Additive` is not local
[INFO] [stdout] 17 | #[alga_quickcheck]
[INFO] [stdout] 18 | struct W(f64);
[INFO] [stdout]    |        - `W` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> tests/derive.rs:15:10
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Alga, Clone, PartialEq, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `AbstractRing` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_ALGA_DERIVE_W`
[INFO] [stdout] 16 | #[alga_traits(Field(Additive, Multiplicative))]
[INFO] [stdout]    |                     --------  -------------- `Multiplicative` is not local
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     `Additive` is not local
[INFO] [stdout] 17 | #[alga_quickcheck]
[INFO] [stdout] 18 | struct W(f64);
[INFO] [stdout]    |        - `W` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> tests/derive.rs:15:10
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Alga, Clone, PartialEq, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `AbstractGroupAbelian` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_ALGA_DERIVE_W`
[INFO] [stdout] 16 | #[alga_traits(Field(Additive, Multiplicative))]
[INFO] [stdout]    |                     -------- `Additive` is not local
[INFO] [stdout] 17 | #[alga_quickcheck]
[INFO] [stdout] 18 | struct W(f64);
[INFO] [stdout]    |        - `W` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> tests/derive.rs:15:10
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Alga, Clone, PartialEq, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `AbstractGroup` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_ALGA_DERIVE_W`
[INFO] [stdout] 16 | #[alga_traits(Field(Additive, Multiplicative))]
[INFO] [stdout]    |                     -------- `Additive` is not local
[INFO] [stdout] 17 | #[alga_quickcheck]
[INFO] [stdout] 18 | struct W(f64);
[INFO] [stdout]    |        - `W` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> tests/derive.rs:15:10
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Alga, Clone, PartialEq, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `AbstractMonoid` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_ALGA_DERIVE_W`
[INFO] [stdout] 16 | #[alga_traits(Field(Additive, Multiplicative))]
[INFO] [stdout]    |                     -------- `Additive` is not local
[INFO] [stdout] 17 | #[alga_quickcheck]
[INFO] [stdout] 18 | struct W(f64);
[INFO] [stdout]    |        - `W` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> tests/derive.rs:15:10
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Alga, Clone, PartialEq, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `AbstractQuasigroup` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_ALGA_DERIVE_W`
[INFO] [stdout] 16 | #[alga_traits(Field(Additive, Multiplicative))]
[INFO] [stdout]    |                     -------- `Additive` is not local
[INFO] [stdout] 17 | #[alga_quickcheck]
[INFO] [stdout] 18 | struct W(f64);
[INFO] [stdout]    |        - `W` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> tests/derive.rs:15:10
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Alga, Clone, PartialEq, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `AbstractLoop` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_ALGA_DERIVE_W`
[INFO] [stdout] 16 | #[alga_traits(Field(Additive, Multiplicative))]
[INFO] [stdout]    |                     -------- `Additive` is not local
[INFO] [stdout] 17 | #[alga_quickcheck]
[INFO] [stdout] 18 | struct W(f64);
[INFO] [stdout]    |        - `W` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> tests/derive.rs:15:10
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Alga, Clone, PartialEq, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `AbstractSemigroup` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_ALGA_DERIVE_W`
[INFO] [stdout] 16 | #[alga_traits(Field(Additive, Multiplicative))]
[INFO] [stdout]    |                     -------- `Additive` is not local
[INFO] [stdout] 17 | #[alga_quickcheck]
[INFO] [stdout] 18 | struct W(f64);
[INFO] [stdout]    |        - `W` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> tests/derive.rs:15:10
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Alga, Clone, PartialEq, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `AbstractGroupAbelian` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_ALGA_DERIVE_W`
[INFO] [stdout] 16 | #[alga_traits(Field(Additive, Multiplicative))]
[INFO] [stdout]    |                               -------------- `Multiplicative` is not local
[INFO] [stdout] 17 | #[alga_quickcheck]
[INFO] [stdout] 18 | struct W(f64);
[INFO] [stdout]    |        - `W` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> tests/derive.rs:15:10
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Alga, Clone, PartialEq, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `AbstractGroup` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_ALGA_DERIVE_W`
[INFO] [stdout] 16 | #[alga_traits(Field(Additive, Multiplicative))]
[INFO] [stdout]    |                               -------------- `Multiplicative` is not local
[INFO] [stdout] 17 | #[alga_quickcheck]
[INFO] [stdout] 18 | struct W(f64);
[INFO] [stdout]    |        - `W` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> tests/derive.rs:15:10
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Alga, Clone, PartialEq, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `AbstractMonoid` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_ALGA_DERIVE_W`
[INFO] [stdout] 16 | #[alga_traits(Field(Additive, Multiplicative))]
[INFO] [stdout]    |                               -------------- `Multiplicative` is not local
[INFO] [stdout] 17 | #[alga_quickcheck]
[INFO] [stdout] 18 | struct W(f64);
[INFO] [stdout]    |        - `W` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> tests/derive.rs:15:10
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Alga, Clone, PartialEq, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `AbstractQuasigroup` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_ALGA_DERIVE_W`
[INFO] [stdout] 16 | #[alga_traits(Field(Additive, Multiplicative))]
[INFO] [stdout]    |                               -------------- `Multiplicative` is not local
[INFO] [stdout] 17 | #[alga_quickcheck]
[INFO] [stdout] 18 | struct W(f64);
[INFO] [stdout]    |        - `W` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> tests/derive.rs:15:10
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Alga, Clone, PartialEq, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `AbstractLoop` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_ALGA_DERIVE_W`
[INFO] [stdout] 16 | #[alga_traits(Field(Additive, Multiplicative))]
[INFO] [stdout]    |                               -------------- `Multiplicative` is not local
[INFO] [stdout] 17 | #[alga_quickcheck]
[INFO] [stdout] 18 | struct W(f64);
[INFO] [stdout]    |        - `W` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> tests/derive.rs:15:10
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Alga, Clone, PartialEq, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `AbstractSemigroup` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_ALGA_DERIVE_W`
[INFO] [stdout] 16 | #[alga_traits(Field(Additive, Multiplicative))]
[INFO] [stdout]    |                               -------------- `Multiplicative` is not local
[INFO] [stdout] 17 | #[alga_quickcheck]
[INFO] [stdout] 18 | struct W(f64);
[INFO] [stdout]    |        - `W` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> examples/vectors.rs:17:10
[INFO] [stdout]    |
[INFO] [stdout] 17 | #[derive(Alga, PartialEq, Clone, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `AbstractGroupAbelian` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_ALGA_DERIVE_Vec2`
[INFO] [stdout] 18 | #[alga_traits(GroupAbelian(Additive), Where = "Scalar: AbstractField")]
[INFO] [stdout]    |                            -------- `Additive` is not local
[INFO] [stdout] 19 | #[alga_quickcheck(check(Rational))]
[INFO] [stdout] 20 | struct Vec2<Scalar> {
[INFO] [stdout]    |        ---- `Vec2` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]    = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> examples/vectors.rs:17:10
[INFO] [stdout]    |
[INFO] [stdout] 17 | #[derive(Alga, PartialEq, Clone, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `AbstractGroup` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_ALGA_DERIVE_Vec2`
[INFO] [stdout] 18 | #[alga_traits(GroupAbelian(Additive), Where = "Scalar: AbstractField")]
[INFO] [stdout]    |                            -------- `Additive` is not local
[INFO] [stdout] 19 | #[alga_quickcheck(check(Rational))]
[INFO] [stdout] 20 | struct Vec2<Scalar> {
[INFO] [stdout]    |        ---- `Vec2` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> examples/vectors.rs:17:10
[INFO] [stdout]    |
[INFO] [stdout] 17 | #[derive(Alga, PartialEq, Clone, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `AbstractMonoid` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_ALGA_DERIVE_Vec2`
[INFO] [stdout] 18 | #[alga_traits(GroupAbelian(Additive), Where = "Scalar: AbstractField")]
[INFO] [stdout]    |                            -------- `Additive` is not local
[INFO] [stdout] 19 | #[alga_quickcheck(check(Rational))]
[INFO] [stdout] 20 | struct Vec2<Scalar> {
[INFO] [stdout]    |        ---- `Vec2` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> examples/vectors.rs:17:10
[INFO] [stdout]    |
[INFO] [stdout] 17 | #[derive(Alga, PartialEq, Clone, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `AbstractQuasigroup` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_ALGA_DERIVE_Vec2`
[INFO] [stdout] 18 | #[alga_traits(GroupAbelian(Additive), Where = "Scalar: AbstractField")]
[INFO] [stdout]    |                            -------- `Additive` is not local
[INFO] [stdout] 19 | #[alga_quickcheck(check(Rational))]
[INFO] [stdout] 20 | struct Vec2<Scalar> {
[INFO] [stdout]    |        ---- `Vec2` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> examples/vectors.rs:17:10
[INFO] [stdout]    |
[INFO] [stdout] 17 | #[derive(Alga, PartialEq, Clone, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `AbstractLoop` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_ALGA_DERIVE_Vec2`
[INFO] [stdout] 18 | #[alga_traits(GroupAbelian(Additive), Where = "Scalar: AbstractField")]
[INFO] [stdout]    |                            -------- `Additive` is not local
[INFO] [stdout] 19 | #[alga_quickcheck(check(Rational))]
[INFO] [stdout] 20 | struct Vec2<Scalar> {
[INFO] [stdout]    |        ---- `Vec2` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> examples/vectors.rs:17:10
[INFO] [stdout]    |
[INFO] [stdout] 17 | #[derive(Alga, PartialEq, Clone, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `AbstractSemigroup` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_ALGA_DERIVE_Vec2`
[INFO] [stdout] 18 | #[alga_traits(GroupAbelian(Additive), Where = "Scalar: AbstractField")]
[INFO] [stdout]    |                            -------- `Additive` is not local
[INFO] [stdout] 19 | #[alga_quickcheck(check(Rational))]
[INFO] [stdout] 20 | struct Vec2<Scalar> {
[INFO] [stdout]    |        ---- `Vec2` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> examples/vectors.rs:191:10
[INFO] [stdout]     |
[INFO] [stdout] 191 | #[derive(Alga, Clone, Debug)]
[INFO] [stdout]     |          ^---
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `AbstractField` is not local
[INFO] [stdout]     |          move the `impl` block outside of this constant `_ALGA_DERIVE_Rational`
[INFO] [stdout] 192 | #[alga_traits(Field(Additive, Multiplicative))]
[INFO] [stdout]     |                     --------  -------------- `Multiplicative` is not local
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `Additive` is not local
[INFO] [stdout] 193 | #[alga_quickcheck]
[INFO] [stdout] 194 | struct Rational {
[INFO] [stdout]     |        -------- `Rational` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> examples/vectors.rs:191:10
[INFO] [stdout]     |
[INFO] [stdout] 191 | #[derive(Alga, Clone, Debug)]
[INFO] [stdout]     |          ^---
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `AbstractRingCommutative` is not local
[INFO] [stdout]     |          move the `impl` block outside of this constant `_ALGA_DERIVE_Rational`
[INFO] [stdout] 192 | #[alga_traits(Field(Additive, Multiplicative))]
[INFO] [stdout]     |                     --------  -------------- `Multiplicative` is not local
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `Additive` is not local
[INFO] [stdout] 193 | #[alga_quickcheck]
[INFO] [stdout] 194 | struct Rational {
[INFO] [stdout]     |        -------- `Rational` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> examples/vectors.rs:191:10
[INFO] [stdout]     |
[INFO] [stdout] 191 | #[derive(Alga, Clone, Debug)]
[INFO] [stdout]     |          ^---
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `AbstractRing` is not local
[INFO] [stdout]     |          move the `impl` block outside of this constant `_ALGA_DERIVE_Rational`
[INFO] [stdout] 192 | #[alga_traits(Field(Additive, Multiplicative))]
[INFO] [stdout]     |                     --------  -------------- `Multiplicative` is not local
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `Additive` is not local
[INFO] [stdout] 193 | #[alga_quickcheck]
[INFO] [stdout] 194 | struct Rational {
[INFO] [stdout]     |        -------- `Rational` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> examples/vectors.rs:191:10
[INFO] [stdout]     |
[INFO] [stdout] 191 | #[derive(Alga, Clone, Debug)]
[INFO] [stdout]     |          ^---
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `AbstractGroupAbelian` is not local
[INFO] [stdout]     |          move the `impl` block outside of this constant `_ALGA_DERIVE_Rational`
[INFO] [stdout] 192 | #[alga_traits(Field(Additive, Multiplicative))]
[INFO] [stdout]     |                     -------- `Additive` is not local
[INFO] [stdout] 193 | #[alga_quickcheck]
[INFO] [stdout] 194 | struct Rational {
[INFO] [stdout]     |        -------- `Rational` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> examples/vectors.rs:191:10
[INFO] [stdout]     |
[INFO] [stdout] 191 | #[derive(Alga, Clone, Debug)]
[INFO] [stdout]     |          ^---
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `AbstractGroup` is not local
[INFO] [stdout]     |          move the `impl` block outside of this constant `_ALGA_DERIVE_Rational`
[INFO] [stdout] 192 | #[alga_traits(Field(Additive, Multiplicative))]
[INFO] [stdout]     |                     -------- `Additive` is not local
[INFO] [stdout] 193 | #[alga_quickcheck]
[INFO] [stdout] 194 | struct Rational {
[INFO] [stdout]     |        -------- `Rational` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> examples/vectors.rs:191:10
[INFO] [stdout]     |
[INFO] [stdout] 191 | #[derive(Alga, Clone, Debug)]
[INFO] [stdout]     |          ^---
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `AbstractMonoid` is not local
[INFO] [stdout]     |          move the `impl` block outside of this constant `_ALGA_DERIVE_Rational`
[INFO] [stdout] 192 | #[alga_traits(Field(Additive, Multiplicative))]
[INFO] [stdout]     |                     -------- `Additive` is not local
[INFO] [stdout] 193 | #[alga_quickcheck]
[INFO] [stdout] 194 | struct Rational {
[INFO] [stdout]     |        -------- `Rational` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> examples/vectors.rs:191:10
[INFO] [stdout]     |
[INFO] [stdout] 191 | #[derive(Alga, Clone, Debug)]
[INFO] [stdout]     |          ^---
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `AbstractQuasigroup` is not local
[INFO] [stdout]     |          move the `impl` block outside of this constant `_ALGA_DERIVE_Rational`
[INFO] [stdout] 192 | #[alga_traits(Field(Additive, Multiplicative))]
[INFO] [stdout]     |                     -------- `Additive` is not local
[INFO] [stdout] 193 | #[alga_quickcheck]
[INFO] [stdout] 194 | struct Rational {
[INFO] [stdout]     |        -------- `Rational` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> examples/vectors.rs:191:10
[INFO] [stdout]     |
[INFO] [stdout] 191 | #[derive(Alga, Clone, Debug)]
[INFO] [stdout]     |          ^---
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `AbstractLoop` is not local
[INFO] [stdout]     |          move the `impl` block outside of this constant `_ALGA_DERIVE_Rational`
[INFO] [stdout] 192 | #[alga_traits(Field(Additive, Multiplicative))]
[INFO] [stdout]     |                     -------- `Additive` is not local
[INFO] [stdout] 193 | #[alga_quickcheck]
[INFO] [stdout] 194 | struct Rational {
[INFO] [stdout]     |        -------- `Rational` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> examples/vectors.rs:191:10
[INFO] [stdout]     |
[INFO] [stdout] 191 | #[derive(Alga, Clone, Debug)]
[INFO] [stdout]     |          ^---
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `AbstractSemigroup` is not local
[INFO] [stdout]     |          move the `impl` block outside of this constant `_ALGA_DERIVE_Rational`
[INFO] [stdout] 192 | #[alga_traits(Field(Additive, Multiplicative))]
[INFO] [stdout]     |                     -------- `Additive` is not local
[INFO] [stdout] 193 | #[alga_quickcheck]
[INFO] [stdout] 194 | struct Rational {
[INFO] [stdout]     |        -------- `Rational` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> examples/vectors.rs:191:10
[INFO] [stdout]     |
[INFO] [stdout] 191 | #[derive(Alga, Clone, Debug)]
[INFO] [stdout]     |          ^---
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `AbstractGroupAbelian` is not local
[INFO] [stdout]     |          move the `impl` block outside of this constant `_ALGA_DERIVE_Rational`
[INFO] [stdout] 192 | #[alga_traits(Field(Additive, Multiplicative))]
[INFO] [stdout]     |                               -------------- `Multiplicative` is not local
[INFO] [stdout] 193 | #[alga_quickcheck]
[INFO] [stdout] 194 | struct Rational {
[INFO] [stdout]     |        -------- `Rational` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> examples/vectors.rs:191:10
[INFO] [stdout]     |
[INFO] [stdout] 191 | #[derive(Alga, Clone, Debug)]
[INFO] [stdout]     |          ^---
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `AbstractGroup` is not local
[INFO] [stdout]     |          move the `impl` block outside of this constant `_ALGA_DERIVE_Rational`
[INFO] [stdout] 192 | #[alga_traits(Field(Additive, Multiplicative))]
[INFO] [stdout]     |                               -------------- `Multiplicative` is not local
[INFO] [stdout] 193 | #[alga_quickcheck]
[INFO] [stdout] 194 | struct Rational {
[INFO] [stdout]     |        -------- `Rational` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> examples/vectors.rs:191:10
[INFO] [stdout]     |
[INFO] [stdout] 191 | #[derive(Alga, Clone, Debug)]
[INFO] [stdout]     |          ^---
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `AbstractMonoid` is not local
[INFO] [stdout]     |          move the `impl` block outside of this constant `_ALGA_DERIVE_Rational`
[INFO] [stdout] 192 | #[alga_traits(Field(Additive, Multiplicative))]
[INFO] [stdout]     |                               -------------- `Multiplicative` is not local
[INFO] [stdout] 193 | #[alga_quickcheck]
[INFO] [stdout] 194 | struct Rational {
[INFO] [stdout]     |        -------- `Rational` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> examples/vectors.rs:191:10
[INFO] [stdout]     |
[INFO] [stdout] 191 | #[derive(Alga, Clone, Debug)]
[INFO] [stdout]     |          ^---
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `AbstractQuasigroup` is not local
[INFO] [stdout]     |          move the `impl` block outside of this constant `_ALGA_DERIVE_Rational`
[INFO] [stdout] 192 | #[alga_traits(Field(Additive, Multiplicative))]
[INFO] [stdout]     |                               -------------- `Multiplicative` is not local
[INFO] [stdout] 193 | #[alga_quickcheck]
[INFO] [stdout] 194 | struct Rational {
[INFO] [stdout]     |        -------- `Rational` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition: `impl_approx_eq`
[INFO] [stdout]    --> src/macros.rs:143:14
[INFO] [stdout]     |
[INFO] [stdout] 143 | macro_rules! impl_approx_eq {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_macros)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition: `impl_quasigroup`
[INFO] [stdout]    --> src/general/one_operator.rs:110:14
[INFO] [stdout]     |
[INFO] [stdout] 110 | macro_rules! impl_quasigroup(
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> examples/vectors.rs:191:10
[INFO] [stdout]     |
[INFO] [stdout] 191 | #[derive(Alga, Clone, Debug)]
[INFO] [stdout]     |          ^---
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `AbstractLoop` is not local
[INFO] [stdout]     |          move the `impl` block outside of this constant `_ALGA_DERIVE_Rational`
[INFO] [stdout] 192 | #[alga_traits(Field(Additive, Multiplicative))]
[INFO] [stdout]     |                               -------------- `Multiplicative` is not local
[INFO] [stdout] 193 | #[alga_quickcheck]
[INFO] [stdout] 194 | struct Rational {
[INFO] [stdout]     |        -------- `Rational` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition: `impl_loop`
[INFO] [stdout]    --> src/general/one_operator.rs:222:14
[INFO] [stdout]     |
[INFO] [stdout] 222 | macro_rules! impl_loop(
[INFO] [stdout]     |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Rem`
[INFO] [stdout]  --> src/general/operator.rs:4:73
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub use std::ops::{Add, AddAssign, Div, DivAssign, Mul, MulAssign, Neg, Rem, Sub, SubAssign};
[INFO] [stdout]   |                                                                         ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> examples/vectors.rs:191:10
[INFO] [stdout]     |
[INFO] [stdout] 191 | #[derive(Alga, Clone, Debug)]
[INFO] [stdout]     |          ^---
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `AbstractSemigroup` is not local
[INFO] [stdout]     |          move the `impl` block outside of this constant `_ALGA_DERIVE_Rational`
[INFO] [stdout] 192 | #[alga_traits(Field(Additive, Multiplicative))]
[INFO] [stdout]     |                               -------------- `Multiplicative` is not local
[INFO] [stdout] 193 | #[alga_quickcheck]
[INFO] [stdout] 194 | struct Rational {
[INFO] [stdout]     |        -------- `Rational` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated trait `general::Real`: This has been renamed `RealField`.
[INFO] [stdout]    --> src/general/mod.rs:200:20
[INFO] [stdout]     |
[INFO] [stdout] 200 | impl<T: RealField> Real for T {}
[INFO] [stdout]     |                    ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` is ignored on function prototypes
[INFO] [stdout]    --> src/linear/matrix.rs:108:5
[INFO] [stdout]     |
[INFO] [stdout] 108 |     #[inline]
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_attributes)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` is ignored on function prototypes
[INFO] [stdout]    --> src/linear/transformation.rs:275:5
[INFO] [stdout]     |
[INFO] [stdout] 275 |     #[inline]
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> tests/../examples/vectors.rs:17:10
[INFO] [stdout]    |
[INFO] [stdout] 17 | #[derive(Alga, PartialEq, Clone, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `AbstractGroupAbelian` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_ALGA_DERIVE_Vec2`
[INFO] [stdout] 18 | #[alga_traits(GroupAbelian(Additive), Where = "Scalar: AbstractField")]
[INFO] [stdout]    |                            -------- `Additive` is not local
[INFO] [stdout] 19 | #[alga_quickcheck(check(Rational))]
[INFO] [stdout] 20 | struct Vec2<Scalar> {
[INFO] [stdout]    |        ---- `Vec2` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]    = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> tests/../examples/vectors.rs:17:10
[INFO] [stdout]    |
[INFO] [stdout] 17 | #[derive(Alga, PartialEq, Clone, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `AbstractGroup` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_ALGA_DERIVE_Vec2`
[INFO] [stdout] 18 | #[alga_traits(GroupAbelian(Additive), Where = "Scalar: AbstractField")]
[INFO] [stdout]    |                            -------- `Additive` is not local
[INFO] [stdout] 19 | #[alga_quickcheck(check(Rational))]
[INFO] [stdout] 20 | struct Vec2<Scalar> {
[INFO] [stdout]    |        ---- `Vec2` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> tests/../examples/vectors.rs:17:10
[INFO] [stdout]    |
[INFO] [stdout] 17 | #[derive(Alga, PartialEq, Clone, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `AbstractMonoid` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_ALGA_DERIVE_Vec2`
[INFO] [stdout] 18 | #[alga_traits(GroupAbelian(Additive), Where = "Scalar: AbstractField")]
[INFO] [stdout]    |                            -------- `Additive` is not local
[INFO] [stdout] 19 | #[alga_quickcheck(check(Rational))]
[INFO] [stdout] 20 | struct Vec2<Scalar> {
[INFO] [stdout]    |        ---- `Vec2` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> tests/../examples/vectors.rs:17:10
[INFO] [stdout]    |
[INFO] [stdout] 17 | #[derive(Alga, PartialEq, Clone, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `AbstractQuasigroup` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_ALGA_DERIVE_Vec2`
[INFO] [stdout] 18 | #[alga_traits(GroupAbelian(Additive), Where = "Scalar: AbstractField")]
[INFO] [stdout]    |                            -------- `Additive` is not local
[INFO] [stdout] 19 | #[alga_quickcheck(check(Rational))]
[INFO] [stdout] 20 | struct Vec2<Scalar> {
[INFO] [stdout]    |        ---- `Vec2` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> tests/../examples/vectors.rs:17:10
[INFO] [stdout]    |
[INFO] [stdout] 17 | #[derive(Alga, PartialEq, Clone, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `AbstractLoop` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_ALGA_DERIVE_Vec2`
[INFO] [stdout] 18 | #[alga_traits(GroupAbelian(Additive), Where = "Scalar: AbstractField")]
[INFO] [stdout]    |                            -------- `Additive` is not local
[INFO] [stdout] 19 | #[alga_quickcheck(check(Rational))]
[INFO] [stdout] 20 | struct Vec2<Scalar> {
[INFO] [stdout]    |        ---- `Vec2` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> tests/../examples/vectors.rs:17:10
[INFO] [stdout]    |
[INFO] [stdout] 17 | #[derive(Alga, PartialEq, Clone, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `AbstractSemigroup` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_ALGA_DERIVE_Vec2`
[INFO] [stdout] 18 | #[alga_traits(GroupAbelian(Additive), Where = "Scalar: AbstractField")]
[INFO] [stdout]    |                            -------- `Additive` is not local
[INFO] [stdout] 19 | #[alga_quickcheck(check(Rational))]
[INFO] [stdout] 20 | struct Vec2<Scalar> {
[INFO] [stdout]    |        ---- `Vec2` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/../examples/vectors.rs:191:10
[INFO] [stdout]     |
[INFO] [stdout] 191 | #[derive(Alga, Clone, Debug)]
[INFO] [stdout]     |          ^---
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `AbstractField` is not local
[INFO] [stdout]     |          move the `impl` block outside of this constant `_ALGA_DERIVE_Rational`
[INFO] [stdout] 192 | #[alga_traits(Field(Additive, Multiplicative))]
[INFO] [stdout]     |                     --------  -------------- `Multiplicative` is not local
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `Additive` is not local
[INFO] [stdout] 193 | #[alga_quickcheck]
[INFO] [stdout] 194 | struct Rational {
[INFO] [stdout]     |        -------- `Rational` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/../examples/vectors.rs:191:10
[INFO] [stdout]     |
[INFO] [stdout] 191 | #[derive(Alga, Clone, Debug)]
[INFO] [stdout]     |          ^---
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `AbstractRingCommutative` is not local
[INFO] [stdout]     |          move the `impl` block outside of this constant `_ALGA_DERIVE_Rational`
[INFO] [stdout] 192 | #[alga_traits(Field(Additive, Multiplicative))]
[INFO] [stdout]     |                     --------  -------------- `Multiplicative` is not local
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `Additive` is not local
[INFO] [stdout] 193 | #[alga_quickcheck]
[INFO] [stdout] 194 | struct Rational {
[INFO] [stdout]     |        -------- `Rational` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/../examples/vectors.rs:191:10
[INFO] [stdout]     |
[INFO] [stdout] 191 | #[derive(Alga, Clone, Debug)]
[INFO] [stdout]     |          ^---
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `AbstractRing` is not local
[INFO] [stdout]     |          move the `impl` block outside of this constant `_ALGA_DERIVE_Rational`
[INFO] [stdout] 192 | #[alga_traits(Field(Additive, Multiplicative))]
[INFO] [stdout]     |                     --------  -------------- `Multiplicative` is not local
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `Additive` is not local
[INFO] [stdout] 193 | #[alga_quickcheck]
[INFO] [stdout] 194 | struct Rational {
[INFO] [stdout]     |        -------- `Rational` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/../examples/vectors.rs:191:10
[INFO] [stdout]     |
[INFO] [stdout] 191 | #[derive(Alga, Clone, Debug)]
[INFO] [stdout]     |          ^---
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `AbstractGroupAbelian` is not local
[INFO] [stdout]     |          move the `impl` block outside of this constant `_ALGA_DERIVE_Rational`
[INFO] [stdout] 192 | #[alga_traits(Field(Additive, Multiplicative))]
[INFO] [stdout]     |                     -------- `Additive` is not local
[INFO] [stdout] 193 | #[alga_quickcheck]
[INFO] [stdout] 194 | struct Rational {
[INFO] [stdout]     |        -------- `Rational` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/../examples/vectors.rs:191:10
[INFO] [stdout]     |
[INFO] [stdout] 191 | #[derive(Alga, Clone, Debug)]
[INFO] [stdout]     |          ^---
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `AbstractGroup` is not local
[INFO] [stdout]     |          move the `impl` block outside of this constant `_ALGA_DERIVE_Rational`
[INFO] [stdout] 192 | #[alga_traits(Field(Additive, Multiplicative))]
[INFO] [stdout]     |                     -------- `Additive` is not local
[INFO] [stdout] 193 | #[alga_quickcheck]
[INFO] [stdout] 194 | struct Rational {
[INFO] [stdout]     |        -------- `Rational` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/../examples/vectors.rs:191:10
[INFO] [stdout]     |
[INFO] [stdout] 191 | #[derive(Alga, Clone, Debug)]
[INFO] [stdout]     |          ^---
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `AbstractMonoid` is not local
[INFO] [stdout]     |          move the `impl` block outside of this constant `_ALGA_DERIVE_Rational`
[INFO] [stdout] 192 | #[alga_traits(Field(Additive, Multiplicative))]
[INFO] [stdout]     |                     -------- `Additive` is not local
[INFO] [stdout] 193 | #[alga_quickcheck]
[INFO] [stdout] 194 | struct Rational {
[INFO] [stdout]     |        -------- `Rational` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/../examples/vectors.rs:191:10
[INFO] [stdout]     |
[INFO] [stdout] 191 | #[derive(Alga, Clone, Debug)]
[INFO] [stdout]     |          ^---
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `AbstractQuasigroup` is not local
[INFO] [stdout]     |          move the `impl` block outside of this constant `_ALGA_DERIVE_Rational`
[INFO] [stdout] 192 | #[alga_traits(Field(Additive, Multiplicative))]
[INFO] [stdout]     |                     -------- `Additive` is not local
[INFO] [stdout] 193 | #[alga_quickcheck]
[INFO] [stdout] 194 | struct Rational {
[INFO] [stdout]     |        -------- `Rational` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/../examples/vectors.rs:191:10
[INFO] [stdout]     |
[INFO] [stdout] 191 | #[derive(Alga, Clone, Debug)]
[INFO] [stdout]     |          ^---
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `AbstractLoop` is not local
[INFO] [stdout]     |          move the `impl` block outside of this constant `_ALGA_DERIVE_Rational`
[INFO] [stdout] 192 | #[alga_traits(Field(Additive, Multiplicative))]
[INFO] [stdout]     |                     -------- `Additive` is not local
[INFO] [stdout] 193 | #[alga_quickcheck]
[INFO] [stdout] 194 | struct Rational {
[INFO] [stdout]     |        -------- `Rational` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/../examples/vectors.rs:191:10
[INFO] [stdout]     |
[INFO] [stdout] 191 | #[derive(Alga, Clone, Debug)]
[INFO] [stdout]     |          ^---
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `AbstractSemigroup` is not local
[INFO] [stdout]     |          move the `impl` block outside of this constant `_ALGA_DERIVE_Rational`
[INFO] [stdout] 192 | #[alga_traits(Field(Additive, Multiplicative))]
[INFO] [stdout]     |                     -------- `Additive` is not local
[INFO] [stdout] 193 | #[alga_quickcheck]
[INFO] [stdout] 194 | struct Rational {
[INFO] [stdout]     |        -------- `Rational` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/../examples/vectors.rs:191:10
[INFO] [stdout]     |
[INFO] [stdout] 191 | #[derive(Alga, Clone, Debug)]
[INFO] [stdout]     |          ^---
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `AbstractGroupAbelian` is not local
[INFO] [stdout]     |          move the `impl` block outside of this constant `_ALGA_DERIVE_Rational`
[INFO] [stdout] 192 | #[alga_traits(Field(Additive, Multiplicative))]
[INFO] [stdout]     |                               -------------- `Multiplicative` is not local
[INFO] [stdout] 193 | #[alga_quickcheck]
[INFO] [stdout] 194 | struct Rational {
[INFO] [stdout]     |        -------- `Rational` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/../examples/vectors.rs:191:10
[INFO] [stdout]     |
[INFO] [stdout] 191 | #[derive(Alga, Clone, Debug)]
[INFO] [stdout]     |          ^---
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `AbstractGroup` is not local
[INFO] [stdout]     |          move the `impl` block outside of this constant `_ALGA_DERIVE_Rational`
[INFO] [stdout] 192 | #[alga_traits(Field(Additive, Multiplicative))]
[INFO] [stdout]     |                               -------------- `Multiplicative` is not local
[INFO] [stdout] 193 | #[alga_quickcheck]
[INFO] [stdout] 194 | struct Rational {
[INFO] [stdout]     |        -------- `Rational` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/../examples/vectors.rs:191:10
[INFO] [stdout]     |
[INFO] [stdout] 191 | #[derive(Alga, Clone, Debug)]
[INFO] [stdout]     |          ^---
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `AbstractMonoid` is not local
[INFO] [stdout]     |          move the `impl` block outside of this constant `_ALGA_DERIVE_Rational`
[INFO] [stdout] 192 | #[alga_traits(Field(Additive, Multiplicative))]
[INFO] [stdout]     |                               -------------- `Multiplicative` is not local
[INFO] [stdout] 193 | #[alga_quickcheck]
[INFO] [stdout] 194 | struct Rational {
[INFO] [stdout]     |        -------- `Rational` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/../examples/vectors.rs:191:10
[INFO] [stdout]     |
[INFO] [stdout] 191 | #[derive(Alga, Clone, Debug)]
[INFO] [stdout]     |          ^---
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `AbstractQuasigroup` is not local
[INFO] [stdout]     |          move the `impl` block outside of this constant `_ALGA_DERIVE_Rational`
[INFO] [stdout] 192 | #[alga_traits(Field(Additive, Multiplicative))]
[INFO] [stdout]     |                               -------------- `Multiplicative` is not local
[INFO] [stdout] 193 | #[alga_quickcheck]
[INFO] [stdout] 194 | struct Rational {
[INFO] [stdout]     |        -------- `Rational` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/../examples/vectors.rs:191:10
[INFO] [stdout]     |
[INFO] [stdout] 191 | #[derive(Alga, Clone, Debug)]
[INFO] [stdout]     |          ^---
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `AbstractLoop` is not local
[INFO] [stdout]     |          move the `impl` block outside of this constant `_ALGA_DERIVE_Rational`
[INFO] [stdout] 192 | #[alga_traits(Field(Additive, Multiplicative))]
[INFO] [stdout]     |                               -------------- `Multiplicative` is not local
[INFO] [stdout] 193 | #[alga_quickcheck]
[INFO] [stdout] 194 | struct Rational {
[INFO] [stdout]     |        -------- `Rational` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/../examples/vectors.rs:191:10
[INFO] [stdout]     |
[INFO] [stdout] 191 | #[derive(Alga, Clone, Debug)]
[INFO] [stdout]     |          ^---
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `AbstractSemigroup` is not local
[INFO] [stdout]     |          move the `impl` block outside of this constant `_ALGA_DERIVE_Rational`
[INFO] [stdout] 192 | #[alga_traits(Field(Additive, Multiplicative))]
[INFO] [stdout]     |                               -------------- `Multiplicative` is not local
[INFO] [stdout] 193 | #[alga_quickcheck]
[INFO] [stdout] 194 | struct Rational {
[INFO] [stdout]     |        -------- `Rational` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Alga` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Alga` may come from an old version of the `alga_derive` crate, try updating your dependency with `cargo update -p alga_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Alga` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 3.73s
[INFO] running `Command { std: "docker" "inspect" "bbd509ba2d7a1afad9c5e811d09ecd6e27aa3dcdad81b8146879f2cded6741bf", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bbd509ba2d7a1afad9c5e811d09ecd6e27aa3dcdad81b8146879f2cded6741bf", kill_on_drop: false }`
[INFO] [stdout] bbd509ba2d7a1afad9c5e811d09ecd6e27aa3dcdad81b8146879f2cded6741bf
