[INFO] fetching crate gluon_base 0.18.2... [INFO] checking gluon_base-0.18.2 against try#c387b04bf028733cd561d62128c8a5eee4bc1458+rustflags=-Dtail_expr_drop_order for pr-130930 [INFO] extracting crate gluon_base 0.18.2 into /workspace/builds/worker-5-tc2/source [INFO] validating manifest of crates.io crate gluon_base 0.18.2 on toolchain c387b04bf028733cd561d62128c8a5eee4bc1458 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c387b04bf028733cd561d62128c8a5eee4bc1458" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate gluon_base 0.18.2 [INFO] finished tweaking crates.io crate gluon_base 0.18.2 [INFO] tweaked toml for crates.io crate gluon_base 0.18.2 written to /workspace/builds/worker-5-tc2/source/Cargo.toml [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c387b04bf028733cd561d62128c8a5eee4bc1458" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 87 packages to latest compatible versions [INFO] [stderr] Adding ahash v0.7.8 (available: v0.8.11) [INFO] [stderr] Adding arrayvec v0.5.2 (available: v0.7.6) [INFO] [stderr] Adding bitflags v1.3.2 (available: v2.6.0) [INFO] [stderr] Adding compiletest_rs v0.7.1 (available: v0.11.0) [INFO] [stderr] Adding env_logger v0.9.3 (available: v0.11.5) [INFO] [stderr] Adding hashbrown v0.11.2 (available: v0.14.5) [INFO] [stderr] Adding hermit-abi v0.1.19 (available: v0.4.0) [INFO] [stderr] Adding hermit-abi v0.3.9 (available: v0.4.0) [INFO] [stderr] Adding itertools v0.10.5 (available: v0.13.0) [INFO] [stderr] Adding miow v0.3.7 (available: v0.6.0) [INFO] [stderr] Adding ordered-float v2.10.1 (available: v4.3.0) [INFO] [stderr] Adding pretty v0.10.0 (available: v0.12.3) [INFO] [stderr] Adding rustfix v0.5.1 (available: v0.8.5) [INFO] [stderr] Adding syn v1.0.109 (available: v2.0.79) [INFO] [stderr] Adding term v0.7.0 (available: v1.0.0) [INFO] [stderr] Adding unicode-width v0.1.14 (available: v0.2.0) [INFO] [stderr] Adding wasi v0.11.0+wasi-snapshot-preview1 (available: v0.13.2+wasi-0.2.1) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c387b04bf028733cd561d62128c8a5eee4bc1458" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/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:6252d7ea7fb8caaf7af6d800c5fb250a9cd862b9a7f9508afb3c54fa7fe1102e" "/opt/rustwide/cargo-home/bin/cargo" "+c387b04bf028733cd561d62128c8a5eee4bc1458" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 01442b3d5cb43036f5e931b52ab584253d725d8d6c2820c025ae53e39c7305cc [INFO] running `Command { std: "docker" "start" "-a" "01442b3d5cb43036f5e931b52ab584253d725d8d6c2820c025ae53e39c7305cc", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "01442b3d5cb43036f5e931b52ab584253d725d8d6c2820c025ae53e39c7305cc", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "01442b3d5cb43036f5e931b52ab584253d725d8d6c2820c025ae53e39c7305cc", kill_on_drop: false }` [INFO] [stdout] 01442b3d5cb43036f5e931b52ab584253d725d8d6c2820c025ae53e39c7305cc [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/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 -Dtail_expr_drop_order" "-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:6252d7ea7fb8caaf7af6d800c5fb250a9cd862b9a7f9508afb3c54fa7fe1102e" "/opt/rustwide/cargo-home/bin/cargo" "+c387b04bf028733cd561d62128c8a5eee4bc1458" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] b1f7aa479f13e82980ab99328fd5c557893ddda0fe28220698d2970f6cde639e [INFO] running `Command { std: "docker" "start" "-a" "b1f7aa479f13e82980ab99328fd5c557893ddda0fe28220698d2970f6cde639e", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.159 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling ahash v0.7.8 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Checking either v1.13.0 [INFO] [stderr] Checking collect-mac v0.1.0 [INFO] [stderr] Checking regex-automata v0.4.7 [INFO] [stderr] Checking codespan v0.11.1 [INFO] [stderr] Checking quick-error v2.0.1 [INFO] [stderr] Checking itertools v0.10.5 [INFO] [stderr] Checking ordered-float v2.10.1 [INFO] [stderr] Checking getrandom v0.2.15 [INFO] [stderr] Checking atty v0.2.14 [INFO] [stderr] Checking hashbrown v0.11.2 [INFO] [stderr] Checking regex v1.10.6 [INFO] [stderr] Checking env_logger v0.9.3 [INFO] [stderr] Compiling gluon_codegen v0.18.2 [INFO] [stderr] Checking gluon_base v0.18.2 (/opt/rustwide/workdir) [INFO] [stdout] warning: elided lifetime has a name [INFO] [stdout] --> src/ast.rs:589:36 [INFO] [stdout] | [INFO] [stdout] 586 | pub fn field_iter<'a>( [INFO] [stdout] | -- lifetime `'a` declared here [INFO] [stdout] ... [INFO] [stdout] 589 | Item = Either<&'a ExprField>, &'a ExprField>>, [INFO] [stdout] | ^ this elided lifetime gets resolved as `'a` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(elided_named_lifetimes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: elided lifetime has a name [INFO] [stdout] --> src/ast.rs:589:68 [INFO] [stdout] | [INFO] [stdout] 586 | pub fn field_iter<'a>( [INFO] [stdout] | -- lifetime `'a` declared here [INFO] [stdout] ... [INFO] [stdout] 589 | Item = Either<&'a ExprField>, &'a ExprField>>, [INFO] [stdout] | ^ this elided lifetime gets resolved as `'a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: elided lifetime has a name [INFO] [stdout] --> src/ast.rs:1258:51 [INFO] [stdout] | [INFO] [stdout] 1249 | impl<'ast, Id> Arena<'ast, Id> { [INFO] [stdout] | ---- lifetime `'ast` declared here [INFO] [stdout] ... [INFO] [stdout] 1258 | pub fn borrow(&'ast self) -> ArenaRef<'_, 'ast, Id> { [INFO] [stdout] | ^^ this elided lifetime gets resolved as `'ast` [INFO] [stdout] ... [INFO] [stdout] 1294 | / impl_ast_arena! { [INFO] [stdout] 1295 | | SpannedExpr<'ast, Id> => exprs, [INFO] [stdout] 1296 | | SpannedPattern<'ast, Id> => patterns, [INFO] [stdout] 1297 | | PatternField<'ast, Id> => pattern_field, [INFO] [stdout] ... | [INFO] [stdout] 1310 | | Metadata => metadata, [INFO] [stdout] 1311 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `impl_ast_arena` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `memory_usage` [INFO] [stdout] --> src/pos.rs:54:12 [INFO] [stdout] | [INFO] [stdout] 54 | #[cfg_attr(feature = "memory_usage", derive(HeapSizeOf))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `anymap`, `compiletest_rs`, `nightly`, `serde`, `serde_derive`, `serde_derive_state`, `serde_state`, and `serialization` [INFO] [stdout] = help: consider adding `memory_usage` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: elided lifetime has a name [INFO] [stdout] --> src/types/mod.rs:2313:68 [INFO] [stdout] | [INFO] [stdout] 2313 | fn split_top<'a, Id, T>(self_: &'a T) -> Option<(Option<&'a T>, Cow<[T]>)> [INFO] [stdout] | -- lifetime `'a` declared here ^ this elided lifetime gets resolved as `'a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: elided lifetime has a name [INFO] [stdout] --> src/types/mod.rs:2337:65 [INFO] [stdout] | [INFO] [stdout] 2337 | pub fn split_app<'a, Id, T>(self_: &'a T) -> (Option<&'a T>, Cow<[T]>) [INFO] [stdout] | -- lifetime `'a` declared here ^ this elided lifetime gets resolved as `'a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: elided lifetime has a name [INFO] [stdout] --> src/ast.rs:589:36 [INFO] [stdout] | [INFO] [stdout] 586 | pub fn field_iter<'a>( [INFO] [stdout] | -- lifetime `'a` declared here [INFO] [stdout] ... [INFO] [stdout] 589 | Item = Either<&'a ExprField>, &'a ExprField>>, [INFO] [stdout] | ^ this elided lifetime gets resolved as `'a` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(elided_named_lifetimes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: elided lifetime has a name [INFO] [stdout] --> src/ast.rs:589:68 [INFO] [stdout] | [INFO] [stdout] 586 | pub fn field_iter<'a>( [INFO] [stdout] | -- lifetime `'a` declared here [INFO] [stdout] ... [INFO] [stdout] 589 | Item = Either<&'a ExprField>, &'a ExprField>>, [INFO] [stdout] | ^ this elided lifetime gets resolved as `'a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: elided lifetime has a name [INFO] [stdout] --> src/ast.rs:1258:51 [INFO] [stdout] | [INFO] [stdout] 1249 | impl<'ast, Id> Arena<'ast, Id> { [INFO] [stdout] | ---- lifetime `'ast` declared here [INFO] [stdout] ... [INFO] [stdout] 1258 | pub fn borrow(&'ast self) -> ArenaRef<'_, 'ast, Id> { [INFO] [stdout] | ^^ this elided lifetime gets resolved as `'ast` [INFO] [stdout] ... [INFO] [stdout] 1294 | / impl_ast_arena! { [INFO] [stdout] 1295 | | SpannedExpr<'ast, Id> => exprs, [INFO] [stdout] 1296 | | SpannedPattern<'ast, Id> => patterns, [INFO] [stdout] 1297 | | PatternField<'ast, Id> => pattern_field, [INFO] [stdout] ... | [INFO] [stdout] 1310 | | Metadata => metadata, [INFO] [stdout] 1311 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `impl_ast_arena` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `memory_usage` [INFO] [stdout] --> src/pos.rs:54:12 [INFO] [stdout] | [INFO] [stdout] 54 | #[cfg_attr(feature = "memory_usage", derive(HeapSizeOf))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `anymap`, `compiletest_rs`, `nightly`, `serde`, `serde_derive`, `serde_derive_state`, `serde_state`, and `serialization` [INFO] [stdout] = help: consider adding `memory_usage` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: elided lifetime has a name [INFO] [stdout] --> src/types/mod.rs:2313:68 [INFO] [stdout] | [INFO] [stdout] 2313 | fn split_top<'a, Id, T>(self_: &'a T) -> Option<(Option<&'a T>, Cow<[T]>)> [INFO] [stdout] | -- lifetime `'a` declared here ^ this elided lifetime gets resolved as `'a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: elided lifetime has a name [INFO] [stdout] --> src/types/mod.rs:2337:65 [INFO] [stdout] | [INFO] [stdout] 2337 | pub fn split_app<'a, Id, T>(self_: &'a T) -> (Option<&'a T>, Cow<[T]>) [INFO] [stdout] | -- lifetime `'a` declared here ^ this elided lifetime gets resolved as `'a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `std::result::Result, Arc>>` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/ast.rs:1404:15 [INFO] [stdout] | [INFO] [stdout] 1403 | pub fn try_into_send(self) -> Result, Self> { [INFO] [stdout] | ---- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] 1404 | match Arc::try_unwrap(self.arena) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] = note: requested on the command line with `-D tail-expr-drop-order` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `(Option, Option)` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/merge.rs:61:11 [INFO] [stdout] | [INFO] [stdout] 49 | g: G, [INFO] [stdout] | - these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 52 | h: H, [INFO] [stdout] | - these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] 53 | b: Option, [INFO] [stdout] 54 | merger: F, [INFO] [stdout] | ------ these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 61 | match (a, b) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `Option<(usize, U)>` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/merge.rs:179:29 [INFO] [stdout] | [INFO] [stdout] 167 | mut action: F, [INFO] [stdout] | ---------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] 168 | converter: G, [INFO] [stdout] | --------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 177 | let mut types = types.into_iter(); [INFO] [stdout] | --------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] 178 | let clone_types_iter = types.clone(); [INFO] [stdout] | ---------------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] 179 | if let Some((i, typ)) = types [INFO] [stdout] | _____________________________^ [INFO] [stdout] 180 | | .by_ref() [INFO] [stdout] 181 | | .enumerate() [INFO] [stdout] 182 | | .find_map(|(i, typ)| action(state, typ).map(|typ| (i, typ))) [INFO] [stdout] | |____________________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `std::result::Result>, resolve::Error>` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/resolve.rs:76:18 [INFO] [stdout] | [INFO] [stdout] 71 | mut canonical: F, [INFO] [stdout] | ------------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 76 | Ok(match peek_alias(env, typ) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `Option>` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/resolve.rs:187:15 [INFO] [stdout] | [INFO] [stdout] 185 | predicate: impl FnOnce(&AliasData) -> bool, [INFO] [stdout] | --------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] 186 | ) -> Result)>, Error> { [INFO] [stdout] 187 | match peek_alias(env, &typ)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `std::result::Result>, resolve::Error>` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/resolve.rs:287:11 [INFO] [stdout] | [INFO] [stdout] 278 | mut canonical: F, [INFO] [stdout] | ------------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 287 | match peek_alias(env, typ) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `Cow<'_, T>` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/resolve.rs:328:9 [INFO] [stdout] | [INFO] [stdout] 323 | Ok(peek_alias(env, &typ)?.and_then(|alias| { [INFO] [stdout] | ----- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 328 | alias.typ(interner).apply_args( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `std::result::Result, Arc>>` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/ast.rs:1404:15 [INFO] [stdout] | [INFO] [stdout] 1403 | pub fn try_into_send(self) -> Result, Self> { [INFO] [stdout] | ---- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] 1404 | match Arc::try_unwrap(self.arena) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] = note: requested on the command line with `-D tail-expr-drop-order` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/ast.rs:1328:32 [INFO] [stdout] | [INFO] [stdout] 1328 | struct Guard<'tag>(&'tag $crate::ast::InvariantLifetime<'tag>); [INFO] [stdout] | ----- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] ... [INFO] [stdout] 1346 | mk_ast_arena!(arena); [INFO] [stdout] | -------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] = note: this warning originates in the macro `mk_ast_arena` (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] --> src/ast.rs:81:25 [INFO] [stdout] | [INFO] [stdout] 81 | #[derive(Eq, PartialEq, AstClone)] [INFO] [stdout] | ^------- [INFO] [stdout] | | [INFO] [stdout] | `AstClone` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_AST_CLONE_FOR_InnerAstType` [INFO] [stdout] 82 | pub struct InnerAstType<'ast, Id> { [INFO] [stdout] | ------------ `InnerAstType` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `AstClone` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `AstClone` may come from an old version of the `gluon_codegen` crate, try updating your dependency with `cargo update -p gluon_codegen` [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 lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `AstClone` (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] --> src/ast.rs:87:25 [INFO] [stdout] | [INFO] [stdout] 87 | #[derive(Eq, PartialEq, AstClone)] [INFO] [stdout] | ^------- [INFO] [stdout] | | [INFO] [stdout] | `AstClone` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_AST_CLONE_FOR_AstType` [INFO] [stdout] 88 | pub struct AstType<'ast, Id> { [INFO] [stdout] | ------- `AstType` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `AstClone` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `AstClone` may come from an old version of the `gluon_codegen` crate, try updating your dependency with `cargo update -p gluon_codegen` [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 lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `AstClone` (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] --> src/ast.rs:283:32 [INFO] [stdout] | [INFO] [stdout] 283 | #[derive(Eq, PartialEq, Debug, AstClone)] [INFO] [stdout] | ^------- [INFO] [stdout] | | [INFO] [stdout] | `AstClone` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_AST_CLONE_FOR_PatternField` [INFO] [stdout] 284 | pub enum PatternField<'ast, Id> { [INFO] [stdout] | ------------ `PatternField` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `AstClone` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `AstClone` may come from an old version of the `gluon_codegen` crate, try updating your dependency with `cargo update -p gluon_codegen` [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 lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `AstClone` (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] --> src/ast.rs:302:32 [INFO] [stdout] | [INFO] [stdout] 302 | #[derive(Eq, PartialEq, Debug, AstClone)] [INFO] [stdout] | ^------- [INFO] [stdout] | | [INFO] [stdout] | `AstClone` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_AST_CLONE_FOR_Pattern` [INFO] [stdout] 303 | pub enum Pattern<'ast, Id> { [INFO] [stdout] | ------- `Pattern` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `AstClone` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `AstClone` may come from an old version of the `gluon_codegen` crate, try updating your dependency with `cargo update -p gluon_codegen` [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 lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `AstClone` (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] --> src/ast.rs:384:32 [INFO] [stdout] | [INFO] [stdout] 384 | #[derive(Eq, PartialEq, Debug, AstClone)] [INFO] [stdout] | ^------- [INFO] [stdout] | | [INFO] [stdout] | `AstClone` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_AST_CLONE_FOR_Alternative` [INFO] [stdout] 385 | pub struct Alternative<'ast, Id> { [INFO] [stdout] | ----------- `Alternative` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `AstClone` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `AstClone` may come from an old version of the `gluon_codegen` crate, try updating your dependency with `cargo update -p gluon_codegen` [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 lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `AstClone` (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] --> src/ast.rs:390:32 [INFO] [stdout] | [INFO] [stdout] 390 | #[derive(Eq, PartialEq, Debug, AstClone)] [INFO] [stdout] | ^------- [INFO] [stdout] | | [INFO] [stdout] | `AstClone` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_AST_CLONE_FOR_Array` [INFO] [stdout] 391 | pub struct Array<'ast, Id> { [INFO] [stdout] | ----- `Array` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `AstClone` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `AstClone` may come from an old version of the `gluon_codegen` crate, try updating your dependency with `cargo update -p gluon_codegen` [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 lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `AstClone` (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] --> src/ast.rs:396:32 [INFO] [stdout] | [INFO] [stdout] 396 | #[derive(Eq, PartialEq, Debug, AstClone)] [INFO] [stdout] | ^------- [INFO] [stdout] | | [INFO] [stdout] | `AstClone` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_AST_CLONE_FOR_Lambda` [INFO] [stdout] 397 | pub struct Lambda<'ast, Id> { [INFO] [stdout] | ------ `Lambda` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `AstClone` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `AstClone` may come from an old version of the `gluon_codegen` crate, try updating your dependency with `cargo update -p gluon_codegen` [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 lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `AstClone` (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] --> src/ast.rs:411:32 [INFO] [stdout] | [INFO] [stdout] 411 | #[derive(Eq, PartialEq, Debug, AstClone)] [INFO] [stdout] | ^------- [INFO] [stdout] | | [INFO] [stdout] | `AstClone` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_AST_CLONE_FOR_ExprField` [INFO] [stdout] 412 | pub struct ExprField<'ast, Id, E> { [INFO] [stdout] | --------- `ExprField` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `AstClone` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `AstClone` may come from an old version of the `gluon_codegen` crate, try updating your dependency with `cargo update -p gluon_codegen` [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 lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `AstClone` (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] --> src/ast.rs:418:32 [INFO] [stdout] | [INFO] [stdout] 418 | #[derive(Eq, PartialEq, Debug, AstClone)] [INFO] [stdout] | ^------- [INFO] [stdout] | | [INFO] [stdout] | `AstClone` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_AST_CLONE_FOR_Do` [INFO] [stdout] 419 | pub struct Do<'ast, Id> { [INFO] [stdout] | -- `Do` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `AstClone` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `AstClone` may come from an old version of the `gluon_codegen` crate, try updating your dependency with `cargo update -p gluon_codegen` [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 lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `AstClone` (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] --> src/ast.rs:428:32 [INFO] [stdout] | [INFO] [stdout] 428 | #[derive(Eq, PartialEq, Debug, AstClone)] [INFO] [stdout] | ^------- [INFO] [stdout] | | [INFO] [stdout] | `AstClone` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_AST_CLONE_FOR_Expr` [INFO] [stdout] 429 | pub enum Expr<'ast, Id> { [INFO] [stdout] | ---- `Expr` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `AstClone` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `AstClone` may come from an old version of the `gluon_codegen` crate, try updating your dependency with `cargo update -p gluon_codegen` [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 lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `AstClone` (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] --> src/ast.rs:609:32 [INFO] [stdout] | [INFO] [stdout] 609 | #[derive(Eq, PartialEq, Debug, AstClone)] [INFO] [stdout] | ^------- [INFO] [stdout] | | [INFO] [stdout] | `AstClone` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_AST_CLONE_FOR_TypeBinding` [INFO] [stdout] 610 | pub struct TypeBinding<'ast, Id> { [INFO] [stdout] | ----------- `TypeBinding` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `AstClone` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `AstClone` may come from an old version of the `gluon_codegen` crate, try updating your dependency with `cargo update -p gluon_codegen` [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 lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `AstClone` (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] --> src/ast.rs:623:54 [INFO] [stdout] | [INFO] [stdout] 623 | #[derive(Clone, Default, Eq, PartialEq, Debug, Hash, AstClone)] [INFO] [stdout] | ^------- [INFO] [stdout] | | [INFO] [stdout] | `AstClone` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_AST_CLONE_FOR_Argument` [INFO] [stdout] 624 | #[cfg_attr(feature = "serde_derive", derive(Deserialize, Serialize))] [INFO] [stdout] 625 | pub struct Argument { [INFO] [stdout] | -------- `Argument` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `AstClone` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `AstClone` may come from an old version of the `gluon_codegen` crate, try updating your dependency with `cargo update -p gluon_codegen` [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 lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `AstClone` (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] --> src/ast.rs:646:32 [INFO] [stdout] | [INFO] [stdout] 646 | #[derive(Eq, PartialEq, Debug, AstClone)] [INFO] [stdout] | ^------- [INFO] [stdout] | | [INFO] [stdout] | `AstClone` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_AST_CLONE_FOR_ValueBindings` [INFO] [stdout] 647 | pub enum ValueBindings<'ast, Id> { [INFO] [stdout] | ------------- `ValueBindings` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `AstClone` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `AstClone` may come from an old version of the `gluon_codegen` crate, try updating your dependency with `cargo update -p gluon_codegen` [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 lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `AstClone` (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] --> src/ast.rs:698:32 [INFO] [stdout] | [INFO] [stdout] 698 | #[derive(Eq, PartialEq, Debug, AstClone)] [INFO] [stdout] | ^------- [INFO] [stdout] | | [INFO] [stdout] | `AstClone` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_AST_CLONE_FOR_ValueBinding` [INFO] [stdout] 699 | pub struct ValueBinding<'ast, Id> { [INFO] [stdout] | ------------ `ValueBinding` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `AstClone` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `AstClone` may come from an old version of the `gluon_codegen` crate, try updating your dependency with `cargo update -p gluon_codegen` [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 lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `AstClone` (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] --> src/metadata.rs:55:47 [INFO] [stdout] | [INFO] [stdout] 55 | #[derive(Debug, Default, Eq, PartialEq, Hash, gluon_codegen::AstClone)] [INFO] [stdout] | ^---------------------- [INFO] [stdout] | | [INFO] [stdout] | `AstClone` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_AST_CLONE_FOR_BaseMetadata` [INFO] [stdout] 56 | pub struct BaseMetadata<'ast> { [INFO] [stdout] | ------------ `BaseMetadata` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `gluon_codegen::AstClone` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `gluon_codegen::AstClone` may come from an old version of the `gluon_codegen` crate, try updating your dependency with `cargo update -p gluon_codegen` [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 lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `gluon_codegen::AstClone` (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] --> src/types/mod.rs:316:24 [INFO] [stdout] | [INFO] [stdout] 316 | #[derive(Clone, Debug, AstClone)] [INFO] [stdout] | ^------- [INFO] [stdout] | | [INFO] [stdout] | `AstClone` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_AST_CLONE_FOR_Skolem` [INFO] [stdout] ... [INFO] [stdout] 330 | pub struct Skolem { [INFO] [stdout] | ------ `Skolem` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `AstClone` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `AstClone` may come from an old version of the `gluon_codegen` crate, try updating your dependency with `cargo update -p gluon_codegen` [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 lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `AstClone` (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] --> src/types/mod.rs:342:45 [INFO] [stdout] | [INFO] [stdout] 342 | #[derive(Clone, Debug, Eq, PartialEq, Hash, AstClone)] [INFO] [stdout] | ^------- [INFO] [stdout] | | [INFO] [stdout] | `AstClone` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_AST_CLONE_FOR_Generic` [INFO] [stdout] ... [INFO] [stdout] 356 | pub struct Generic { [INFO] [stdout] | ------- `Generic` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `AstClone` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `AstClone` may come from an old version of the `gluon_codegen` crate, try updating your dependency with `cargo update -p gluon_codegen` [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 lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `AstClone` (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] --> src/types/mod.rs:371:45 [INFO] [stdout] | [INFO] [stdout] 371 | #[derive(Clone, Debug, Eq, PartialEq, Hash, AstClone)] [INFO] [stdout] | ^------- [INFO] [stdout] | | [INFO] [stdout] | `AstClone` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_AST_CLONE_FOR_Alias` [INFO] [stdout] ... [INFO] [stdout] 385 | pub struct Alias { [INFO] [stdout] | ----- `Alias` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `AstClone` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `AstClone` may come from an old version of the `gluon_codegen` crate, try updating your dependency with `cargo update -p gluon_codegen` [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 lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `AstClone` (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] --> src/types/mod.rs:550:17 [INFO] [stdout] | [INFO] [stdout] 550 | #[derive(Clone, AstClone)] [INFO] [stdout] | ^------- [INFO] [stdout] | | [INFO] [stdout] | `AstClone` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_AST_CLONE_FOR_AliasRef` [INFO] [stdout] ... [INFO] [stdout] 569 | pub struct AliasRef [INFO] [stdout] | -------- `AliasRef` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `AstClone` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `AstClone` may come from an old version of the `gluon_codegen` crate, try updating your dependency with `cargo update -p gluon_codegen` [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 lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `AstClone` (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] --> src/types/mod.rs:699:45 [INFO] [stdout] | [INFO] [stdout] 699 | #[derive(Clone, Debug, Eq, PartialEq, Hash, AstClone)] [INFO] [stdout] | ^------- [INFO] [stdout] | | [INFO] [stdout] | `AstClone` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_AST_CLONE_FOR_AliasData` [INFO] [stdout] ... [INFO] [stdout] 718 | pub struct AliasData> { [INFO] [stdout] | --------- `AliasData` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `AstClone` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `AstClone` may come from an old version of the `gluon_codegen` crate, try updating your dependency with `cargo update -p gluon_codegen` [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 lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `AstClone` (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] --> src/types/mod.rs:824:45 [INFO] [stdout] | [INFO] [stdout] 824 | #[derive(Clone, Hash, Eq, PartialEq, Debug, AstClone)] [INFO] [stdout] | ^------- [INFO] [stdout] | | [INFO] [stdout] | `AstClone` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_AST_CLONE_FOR_Field` [INFO] [stdout] ... [INFO] [stdout] 843 | pub struct Field> { [INFO] [stdout] | ----- `Field` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `AstClone` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `AstClone` may come from an old version of the `gluon_codegen` crate, try updating your dependency with `cargo update -p gluon_codegen` [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 lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `AstClone` (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] --> src/types/mod.rs:914:45 [INFO] [stdout] | [INFO] [stdout] 914 | #[derive(Clone, Debug, Eq, PartialEq, Hash, AstClone)] [INFO] [stdout] | ^------- [INFO] [stdout] | | [INFO] [stdout] | `AstClone` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_AST_CLONE_FOR_Type` [INFO] [stdout] ... [INFO] [stdout] 947 | pub enum Type = ArcType> { [INFO] [stdout] | ---- `Type` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `AstClone` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `AstClone` may come from an old version of the `gluon_codegen` crate, try updating your dependency with `cargo update -p gluon_codegen` [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 lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `AstClone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 7 previous errors; 29 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `gluon_base` (lib) due to 8 previous errors; 29 warnings emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error: this value of type `(Option, Option)` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/merge.rs:61:11 [INFO] [stdout] | [INFO] [stdout] 49 | g: G, [INFO] [stdout] | - these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 52 | h: H, [INFO] [stdout] | - these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] 53 | b: Option, [INFO] [stdout] 54 | merger: F, [INFO] [stdout] | ------ these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 61 | match (a, b) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `Option<(usize, U)>` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/merge.rs:179:29 [INFO] [stdout] | [INFO] [stdout] 167 | mut action: F, [INFO] [stdout] | ---------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] 168 | converter: G, [INFO] [stdout] | --------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 177 | let mut types = types.into_iter(); [INFO] [stdout] | --------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] 178 | let clone_types_iter = types.clone(); [INFO] [stdout] | ---------------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] 179 | if let Some((i, typ)) = types [INFO] [stdout] | _____________________________^ [INFO] [stdout] 180 | | .by_ref() [INFO] [stdout] 181 | | .enumerate() [INFO] [stdout] 182 | | .find_map(|(i, typ)| action(state, typ).map(|typ| (i, typ))) [INFO] [stdout] | |____________________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `std::result::Result>, resolve::Error>` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/resolve.rs:76:18 [INFO] [stdout] | [INFO] [stdout] 71 | mut canonical: F, [INFO] [stdout] | ------------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 76 | Ok(match peek_alias(env, typ) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `Option>` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/resolve.rs:187:15 [INFO] [stdout] | [INFO] [stdout] 185 | predicate: impl FnOnce(&AliasData) -> bool, [INFO] [stdout] | --------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] 186 | ) -> Result)>, Error> { [INFO] [stdout] 187 | match peek_alias(env, &typ)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `std::result::Result>, resolve::Error>` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/resolve.rs:287:11 [INFO] [stdout] | [INFO] [stdout] 278 | mut canonical: F, [INFO] [stdout] | ------------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 287 | match peek_alias(env, typ) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `Cow<'_, T>` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/resolve.rs:328:9 [INFO] [stdout] | [INFO] [stdout] 323 | Ok(peek_alias(env, &typ)?.and_then(|alias| { [INFO] [stdout] | ----- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 328 | alias.typ(interner).apply_args( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/ast.rs:1328:32 [INFO] [stdout] | [INFO] [stdout] 1328 | struct Guard<'tag>(&'tag $crate::ast::InvariantLifetime<'tag>); [INFO] [stdout] | ----- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] ... [INFO] [stdout] 1346 | mk_ast_arena!(arena); [INFO] [stdout] | -------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] = note: this warning originates in the macro `mk_ast_arena` (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] --> src/ast.rs:81:25 [INFO] [stdout] | [INFO] [stdout] 81 | #[derive(Eq, PartialEq, AstClone)] [INFO] [stdout] | ^------- [INFO] [stdout] | | [INFO] [stdout] | `AstClone` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_AST_CLONE_FOR_InnerAstType` [INFO] [stdout] 82 | pub struct InnerAstType<'ast, Id> { [INFO] [stdout] | ------------ `InnerAstType` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `AstClone` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `AstClone` may come from an old version of the `gluon_codegen` crate, try updating your dependency with `cargo update -p gluon_codegen` [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 lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `AstClone` (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] --> src/ast.rs:87:25 [INFO] [stdout] | [INFO] [stdout] 87 | #[derive(Eq, PartialEq, AstClone)] [INFO] [stdout] | ^------- [INFO] [stdout] | | [INFO] [stdout] | `AstClone` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_AST_CLONE_FOR_AstType` [INFO] [stdout] 88 | pub struct AstType<'ast, Id> { [INFO] [stdout] | ------- `AstType` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `AstClone` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `AstClone` may come from an old version of the `gluon_codegen` crate, try updating your dependency with `cargo update -p gluon_codegen` [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 lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `AstClone` (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] --> src/ast.rs:283:32 [INFO] [stdout] | [INFO] [stdout] 283 | #[derive(Eq, PartialEq, Debug, AstClone)] [INFO] [stdout] | ^------- [INFO] [stdout] | | [INFO] [stdout] | `AstClone` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_AST_CLONE_FOR_PatternField` [INFO] [stdout] 284 | pub enum PatternField<'ast, Id> { [INFO] [stdout] | ------------ `PatternField` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `AstClone` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `AstClone` may come from an old version of the `gluon_codegen` crate, try updating your dependency with `cargo update -p gluon_codegen` [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 lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `AstClone` (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] --> src/ast.rs:302:32 [INFO] [stdout] | [INFO] [stdout] 302 | #[derive(Eq, PartialEq, Debug, AstClone)] [INFO] [stdout] | ^------- [INFO] [stdout] | | [INFO] [stdout] | `AstClone` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_AST_CLONE_FOR_Pattern` [INFO] [stdout] 303 | pub enum Pattern<'ast, Id> { [INFO] [stdout] | ------- `Pattern` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `AstClone` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `AstClone` may come from an old version of the `gluon_codegen` crate, try updating your dependency with `cargo update -p gluon_codegen` [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 lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `AstClone` (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] --> src/ast.rs:384:32 [INFO] [stdout] | [INFO] [stdout] 384 | #[derive(Eq, PartialEq, Debug, AstClone)] [INFO] [stdout] | ^------- [INFO] [stdout] | | [INFO] [stdout] | `AstClone` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_AST_CLONE_FOR_Alternative` [INFO] [stdout] 385 | pub struct Alternative<'ast, Id> { [INFO] [stdout] | ----------- `Alternative` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `AstClone` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `AstClone` may come from an old version of the `gluon_codegen` crate, try updating your dependency with `cargo update -p gluon_codegen` [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 lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `AstClone` (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] --> src/ast.rs:390:32 [INFO] [stdout] | [INFO] [stdout] 390 | #[derive(Eq, PartialEq, Debug, AstClone)] [INFO] [stdout] | ^------- [INFO] [stdout] | | [INFO] [stdout] | `AstClone` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_AST_CLONE_FOR_Array` [INFO] [stdout] 391 | pub struct Array<'ast, Id> { [INFO] [stdout] | ----- `Array` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `AstClone` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `AstClone` may come from an old version of the `gluon_codegen` crate, try updating your dependency with `cargo update -p gluon_codegen` [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 lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `AstClone` (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] --> src/ast.rs:396:32 [INFO] [stdout] | [INFO] [stdout] 396 | #[derive(Eq, PartialEq, Debug, AstClone)] [INFO] [stdout] | ^------- [INFO] [stdout] | | [INFO] [stdout] | `AstClone` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_AST_CLONE_FOR_Lambda` [INFO] [stdout] 397 | pub struct Lambda<'ast, Id> { [INFO] [stdout] | ------ `Lambda` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `AstClone` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `AstClone` may come from an old version of the `gluon_codegen` crate, try updating your dependency with `cargo update -p gluon_codegen` [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 lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `AstClone` (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] --> src/ast.rs:411:32 [INFO] [stdout] | [INFO] [stdout] 411 | #[derive(Eq, PartialEq, Debug, AstClone)] [INFO] [stdout] | ^------- [INFO] [stdout] | | [INFO] [stdout] | `AstClone` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_AST_CLONE_FOR_ExprField` [INFO] [stdout] 412 | pub struct ExprField<'ast, Id, E> { [INFO] [stdout] | --------- `ExprField` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `AstClone` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `AstClone` may come from an old version of the `gluon_codegen` crate, try updating your dependency with `cargo update -p gluon_codegen` [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 lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `AstClone` (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] --> src/ast.rs:418:32 [INFO] [stdout] | [INFO] [stdout] 418 | #[derive(Eq, PartialEq, Debug, AstClone)] [INFO] [stdout] | ^------- [INFO] [stdout] | | [INFO] [stdout] | `AstClone` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_AST_CLONE_FOR_Do` [INFO] [stdout] 419 | pub struct Do<'ast, Id> { [INFO] [stdout] | -- `Do` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `AstClone` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `AstClone` may come from an old version of the `gluon_codegen` crate, try updating your dependency with `cargo update -p gluon_codegen` [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 lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `AstClone` (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] --> src/ast.rs:428:32 [INFO] [stdout] | [INFO] [stdout] 428 | #[derive(Eq, PartialEq, Debug, AstClone)] [INFO] [stdout] | ^------- [INFO] [stdout] | | [INFO] [stdout] | `AstClone` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_AST_CLONE_FOR_Expr` [INFO] [stdout] 429 | pub enum Expr<'ast, Id> { [INFO] [stdout] | ---- `Expr` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `AstClone` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `AstClone` may come from an old version of the `gluon_codegen` crate, try updating your dependency with `cargo update -p gluon_codegen` [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 lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `AstClone` (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] --> src/ast.rs:609:32 [INFO] [stdout] | [INFO] [stdout] 609 | #[derive(Eq, PartialEq, Debug, AstClone)] [INFO] [stdout] | ^------- [INFO] [stdout] | | [INFO] [stdout] | `AstClone` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_AST_CLONE_FOR_TypeBinding` [INFO] [stdout] 610 | pub struct TypeBinding<'ast, Id> { [INFO] [stdout] | ----------- `TypeBinding` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `AstClone` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `AstClone` may come from an old version of the `gluon_codegen` crate, try updating your dependency with `cargo update -p gluon_codegen` [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 lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `AstClone` (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] --> src/ast.rs:623:54 [INFO] [stdout] | [INFO] [stdout] 623 | #[derive(Clone, Default, Eq, PartialEq, Debug, Hash, AstClone)] [INFO] [stdout] | ^------- [INFO] [stdout] | | [INFO] [stdout] | `AstClone` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_AST_CLONE_FOR_Argument` [INFO] [stdout] 624 | #[cfg_attr(feature = "serde_derive", derive(Deserialize, Serialize))] [INFO] [stdout] 625 | pub struct Argument { [INFO] [stdout] | -------- `Argument` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `AstClone` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `AstClone` may come from an old version of the `gluon_codegen` crate, try updating your dependency with `cargo update -p gluon_codegen` [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 lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `AstClone` (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] --> src/ast.rs:646:32 [INFO] [stdout] | [INFO] [stdout] 646 | #[derive(Eq, PartialEq, Debug, AstClone)] [INFO] [stdout] | ^------- [INFO] [stdout] | | [INFO] [stdout] | `AstClone` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_AST_CLONE_FOR_ValueBindings` [INFO] [stdout] 647 | pub enum ValueBindings<'ast, Id> { [INFO] [stdout] | ------------- `ValueBindings` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `AstClone` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `AstClone` may come from an old version of the `gluon_codegen` crate, try updating your dependency with `cargo update -p gluon_codegen` [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 lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `AstClone` (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] --> src/ast.rs:698:32 [INFO] [stdout] | [INFO] [stdout] 698 | #[derive(Eq, PartialEq, Debug, AstClone)] [INFO] [stdout] | ^------- [INFO] [stdout] | | [INFO] [stdout] | `AstClone` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_AST_CLONE_FOR_ValueBinding` [INFO] [stdout] 699 | pub struct ValueBinding<'ast, Id> { [INFO] [stdout] | ------------ `ValueBinding` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `AstClone` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `AstClone` may come from an old version of the `gluon_codegen` crate, try updating your dependency with `cargo update -p gluon_codegen` [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 lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `AstClone` (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] --> src/metadata.rs:55:47 [INFO] [stdout] | [INFO] [stdout] 55 | #[derive(Debug, Default, Eq, PartialEq, Hash, gluon_codegen::AstClone)] [INFO] [stdout] | ^---------------------- [INFO] [stdout] | | [INFO] [stdout] | `AstClone` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_AST_CLONE_FOR_BaseMetadata` [INFO] [stdout] 56 | pub struct BaseMetadata<'ast> { [INFO] [stdout] | ------------ `BaseMetadata` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `gluon_codegen::AstClone` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `gluon_codegen::AstClone` may come from an old version of the `gluon_codegen` crate, try updating your dependency with `cargo update -p gluon_codegen` [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 lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `gluon_codegen::AstClone` (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] --> src/types/mod.rs:316:24 [INFO] [stdout] | [INFO] [stdout] 316 | #[derive(Clone, Debug, AstClone)] [INFO] [stdout] | ^------- [INFO] [stdout] | | [INFO] [stdout] | `AstClone` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_AST_CLONE_FOR_Skolem` [INFO] [stdout] ... [INFO] [stdout] 330 | pub struct Skolem { [INFO] [stdout] | ------ `Skolem` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `AstClone` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `AstClone` may come from an old version of the `gluon_codegen` crate, try updating your dependency with `cargo update -p gluon_codegen` [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 lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `AstClone` (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] --> src/types/mod.rs:342:45 [INFO] [stdout] | [INFO] [stdout] 342 | #[derive(Clone, Debug, Eq, PartialEq, Hash, AstClone)] [INFO] [stdout] | ^------- [INFO] [stdout] | | [INFO] [stdout] | `AstClone` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_AST_CLONE_FOR_Generic` [INFO] [stdout] ... [INFO] [stdout] 356 | pub struct Generic { [INFO] [stdout] | ------- `Generic` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `AstClone` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `AstClone` may come from an old version of the `gluon_codegen` crate, try updating your dependency with `cargo update -p gluon_codegen` [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 lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `AstClone` (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] --> src/types/mod.rs:371:45 [INFO] [stdout] | [INFO] [stdout] 371 | #[derive(Clone, Debug, Eq, PartialEq, Hash, AstClone)] [INFO] [stdout] | ^------- [INFO] [stdout] | | [INFO] [stdout] | `AstClone` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_AST_CLONE_FOR_Alias` [INFO] [stdout] ... [INFO] [stdout] 385 | pub struct Alias { [INFO] [stdout] | ----- `Alias` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `AstClone` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `AstClone` may come from an old version of the `gluon_codegen` crate, try updating your dependency with `cargo update -p gluon_codegen` [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 lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `AstClone` (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] --> src/types/mod.rs:550:17 [INFO] [stdout] | [INFO] [stdout] 550 | #[derive(Clone, AstClone)] [INFO] [stdout] | ^------- [INFO] [stdout] | | [INFO] [stdout] | `AstClone` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_AST_CLONE_FOR_AliasRef` [INFO] [stdout] ... [INFO] [stdout] 569 | pub struct AliasRef [INFO] [stdout] | -------- `AliasRef` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `AstClone` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `AstClone` may come from an old version of the `gluon_codegen` crate, try updating your dependency with `cargo update -p gluon_codegen` [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 lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `AstClone` (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] --> src/types/mod.rs:699:45 [INFO] [stdout] | [INFO] [stdout] 699 | #[derive(Clone, Debug, Eq, PartialEq, Hash, AstClone)] [INFO] [stdout] | ^------- [INFO] [stdout] | | [INFO] [stdout] | `AstClone` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_AST_CLONE_FOR_AliasData` [INFO] [stdout] ... [INFO] [stdout] 718 | pub struct AliasData> { [INFO] [stdout] | --------- `AliasData` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `AstClone` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `AstClone` may come from an old version of the `gluon_codegen` crate, try updating your dependency with `cargo update -p gluon_codegen` [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 lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `AstClone` (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] --> src/types/mod.rs:824:45 [INFO] [stdout] | [INFO] [stdout] 824 | #[derive(Clone, Hash, Eq, PartialEq, Debug, AstClone)] [INFO] [stdout] | ^------- [INFO] [stdout] | | [INFO] [stdout] | `AstClone` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_AST_CLONE_FOR_Field` [INFO] [stdout] ... [INFO] [stdout] 843 | pub struct Field> { [INFO] [stdout] | ----- `Field` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `AstClone` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `AstClone` may come from an old version of the `gluon_codegen` crate, try updating your dependency with `cargo update -p gluon_codegen` [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 lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `AstClone` (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] --> src/types/mod.rs:914:45 [INFO] [stdout] | [INFO] [stdout] 914 | #[derive(Clone, Debug, Eq, PartialEq, Hash, AstClone)] [INFO] [stdout] | ^------- [INFO] [stdout] | | [INFO] [stdout] | `AstClone` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_AST_CLONE_FOR_Type` [INFO] [stdout] ... [INFO] [stdout] 947 | pub enum Type = ArcType> { [INFO] [stdout] | ---- `Type` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `AstClone` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `AstClone` may come from an old version of the `gluon_codegen` crate, try updating your dependency with `cargo update -p gluon_codegen` [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 lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `AstClone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 7 previous errors; 29 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `gluon_base` (lib test) due to 8 previous errors; 29 warnings emitted [INFO] running `Command { std: "docker" "inspect" "b1f7aa479f13e82980ab99328fd5c557893ddda0fe28220698d2970f6cde639e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b1f7aa479f13e82980ab99328fd5c557893ddda0fe28220698d2970f6cde639e", kill_on_drop: false }` [INFO] [stdout] b1f7aa479f13e82980ab99328fd5c557893ddda0fe28220698d2970f6cde639e