[INFO] fetching crate ast-grep-core 0.26.3... [INFO] checking ast-grep-core-0.26.3 against try#4d98531622e1718ae0bc3c7a1ab9cd8938428452+rustflags=-Dtail_expr_drop_order for pr-129604 [INFO] extracting crate ast-grep-core 0.26.3 into /workspace/builds/worker-4-tc2/source [INFO] validating manifest of crates.io crate ast-grep-core 0.26.3 on toolchain 4d98531622e1718ae0bc3c7a1ab9cd8938428452 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4d98531622e1718ae0bc3c7a1ab9cd8938428452" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate ast-grep-core 0.26.3 [INFO] finished tweaking crates.io crate ast-grep-core 0.26.3 [INFO] tweaked toml for crates.io crate ast-grep-core 0.26.3 written to /workspace/builds/worker-4-tc2/source/Cargo.toml [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4d98531622e1718ae0bc3c7a1ab9cd8938428452" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 32 packages to latest compatible versions [INFO] [stderr] Adding tree-sitter v0.22.6 (latest: v0.23.0) [INFO] [stderr] Adding web-tree-sitter-sg v0.22.2 (latest: v1.3.4) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4d98531622e1718ae0bc3c7a1ab9cd8938428452" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+4d98531622e1718ae0bc3c7a1ab9cd8938428452" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] b407676a3044dac2851678171110d31772464088edbf8d29db0235e7d8fb8a97 [INFO] running `Command { std: "docker" "start" "-a" "b407676a3044dac2851678171110d31772464088edbf8d29db0235e7d8fb8a97", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "b407676a3044dac2851678171110d31772464088edbf8d29db0235e7d8fb8a97", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b407676a3044dac2851678171110d31772464088edbf8d29db0235e7d8fb8a97", kill_on_drop: false }` [INFO] [stdout] b407676a3044dac2851678171110d31772464088edbf8d29db0235e7d8fb8a97 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+4d98531622e1718ae0bc3c7a1ab9cd8938428452" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 222c19723e174abd5292d3afee7d42aef9c8427a99273b9276bfe6169591157d [INFO] running `Command { std: "docker" "start" "-a" "222c19723e174abd5292d3afee7d42aef9c8427a99273b9276bfe6169591157d", kill_on_drop: false }` [INFO] [stderr] Compiling wasm-bindgen-shared v0.2.93 [INFO] [stderr] Compiling once_cell v1.19.0 [INFO] [stderr] Compiling bumpalo v3.16.0 [INFO] [stderr] Checking regex-syntax v0.8.4 [INFO] [stderr] Checking aho-corasick v1.1.3 [INFO] [stderr] Compiling log v0.4.22 [INFO] [stderr] Compiling tree-sitter v0.22.6 [INFO] [stderr] Compiling syn v2.0.77 [INFO] [stderr] Compiling wasm-bindgen v0.2.93 [INFO] [stderr] Compiling tree-sitter-typescript v0.21.2 [INFO] [stderr] Checking bit-vec v0.8.0 [INFO] [stderr] Checking bit-set v0.8.0 [INFO] [stderr] Checking regex-automata v0.4.7 [INFO] [stderr] Compiling wasm-bindgen-backend v0.2.93 [INFO] [stderr] Compiling thiserror-impl v1.0.63 [INFO] [stderr] Checking regex v1.10.6 [INFO] [stderr] Compiling wasm-bindgen-macro-support v0.2.93 [INFO] [stderr] Checking thiserror v1.0.63 [INFO] [stderr] Compiling wasm-bindgen-macro v0.2.93 [INFO] [stderr] Checking tree-sitter-facade-sg v0.22.2 [INFO] [stderr] Checking ast-grep-core v0.26.3 (/opt/rustwide/workdir) [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/lib.rs:73:14 [INFO] [stdout] | [INFO] [stdout] 71 | pub fn doc(d: D) -> Self { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 72 | Self { [INFO] [stdout] 73 | inner: Root::doc(d), [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/lib.rs:81:14 [INFO] [stdout] | [INFO] [stdout] 79 | pub fn new>(src: S, lang: L) -> Self { [INFO] [stdout] | ------ ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 80 | Self { [INFO] [stdout] 81 | inner: Root::new(src.as_ref(), lang), [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/language.rs:22:26 [INFO] [stdout] | [INFO] [stdout] 21 | fn ast_grep>(&self, source: S) -> AstGrep> { [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 22 | AstGrep::new(source, self.clone()) [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/matcher.rs:59:10 [INFO] [stdout] | [INFO] [stdout] 57 | let mut env = Cow::Owned(MetaVarEnv::new()); [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 58 | let node = self.match_node_with_env(node, &mut env)?; [INFO] [stdout] 59 | Some(NodeMatch::new(node, env.into_owned())) [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/matcher.rs:137:12 [INFO] [stdout] | [INFO] [stdout] 135 | pub fn new(matcher: M, node: Node<'tree, D>) -> Self { [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 136 | Self { [INFO] [stdout] 137 | dfs: node.dfs(), [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/matcher/kind.rs:34:13 [INFO] [stdout] | [INFO] [stdout] 32 | pub fn new(node_kind: &str, lang: L) -> Self { [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 33 | Self { [INFO] [stdout] 34 | kind: lang [INFO] [stdout] | _____________^ [INFO] [stdout] 35 | | .get_ts_language() [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/ops.rs:309:14 [INFO] [stdout] | [INFO] [stdout] 307 | pub fn every(pattern: M) -> Op> { [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 308 | Op { [INFO] [stdout] 309 | inner: And { [INFO] [stdout] | ______________^ [INFO] [stdout] 310 | | pattern1: pattern, [INFO] [stdout] 311 | | pattern2: MatchAll, [INFO] [stdout] 312 | | lang: PhantomData, [INFO] [stdout] 313 | | }, [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/ops.rs:319:14 [INFO] [stdout] | [INFO] [stdout] 317 | pub fn either(pattern: M) -> Op> { [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 318 | Op { [INFO] [stdout] 319 | inner: Or { [INFO] [stdout] | ______________^ [INFO] [stdout] 320 | | pattern1: pattern, [INFO] [stdout] 321 | | pattern2: MatchNone, [INFO] [stdout] 322 | | lang: PhantomData, [INFO] [stdout] 323 | | }, [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/ops.rs:348:14 [INFO] [stdout] | [INFO] [stdout] 346 | pub fn and>(self, other: O) -> Op> { [INFO] [stdout] | ---- -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 347 | Op { [INFO] [stdout] 348 | inner: And { [INFO] [stdout] | ______________^ [INFO] [stdout] 349 | | pattern1: self.inner, [INFO] [stdout] 350 | | pattern2: other, [INFO] [stdout] 351 | | lang: PhantomData, [INFO] [stdout] 352 | | }, [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/ops.rs:362:14 [INFO] [stdout] | [INFO] [stdout] 360 | pub fn or>(self, other: O) -> Op> { [INFO] [stdout] | ---- -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 361 | Op { [INFO] [stdout] 362 | inner: Or { [INFO] [stdout] | ______________^ [INFO] [stdout] 363 | | pattern1: self.inner, [INFO] [stdout] 364 | | pattern2: other, [INFO] [stdout] 365 | | lang: PhantomData, [INFO] [stdout] 366 | | }, [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/replacer/indent.rs:187:29 [INFO] [stdout] | [INFO] [stdout] 187 | lines.split(|b| *b == get_new_line::()), [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/replacer/indent.rs:252:3 [INFO] [stdout] | [INFO] [stdout] 243 | let indentation: Vec<_> = std::iter::repeat(get_space::()).take(indent).collect(); [INFO] [stdout] | ----------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 244 | let new_line = get_new_line::(); [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 252 | lines.join(&new_line).to_vec() [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/replacer/structural.rs:92:8 [INFO] [stdout] | [INFO] [stdout] 85 | lang: D::Lang, [INFO] [stdout] | ------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 92 | Some(replaced.to_vec()) [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/replacer/template.rs:46:5 [INFO] [stdout] | [INFO] [stdout] 44 | let bytes = replace_fixer(self, nm.get_env()); [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 45 | let replaced = DeindentedExtract::MultiLine(&bytes, 0); [INFO] [stdout] 46 | indent_lines::(indent, replaced).to_vec() [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/match_tree/mod.rs:144:3 [INFO] [stdout] | [INFO] [stdout] 139 | let goal_children = goal.children(); [INFO] [stdout] | ------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 140 | let cand_children = candidate.children(); [INFO] [stdout] | ------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 144 | / goal_children [INFO] [stdout] 145 | | .zip(cand_children) [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/node.rs:22:5 [INFO] [stdout] | [INFO] [stdout] 21 | pub fn str(src: &str, lang: L) -> Self { [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 22 | Self::try_new(src, lang).expect("should parse") [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/node.rs:33:8 [INFO] [stdout] | [INFO] [stdout] 30 | pub fn try_new(src: &str, lang: D::Lang) -> Result { [INFO] [stdout] | ------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 31 | let doc = D::from_str(src, lang); [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 32 | let inner = doc.parse(None)?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 33 | Ok(Self { inner, doc }) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/node.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 36 | pub fn new(src: &str, lang: D::Lang) -> Self { [INFO] [stdout] | ------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 37 | Self::try_new(src, lang).expect("should parse") [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/node.rs:41:8 [INFO] [stdout] | [INFO] [stdout] 39 | pub fn try_doc(doc: D) -> Result { [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 40 | let inner = doc.parse(None)?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 41 | Ok(Self { inner, doc }) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/node.rs:45:5 [INFO] [stdout] | [INFO] [stdout] 44 | pub fn doc(doc: D) -> Self { [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 45 | Self::try_doc(doc).expect("Parse doc error") [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/node.rs:102:18 [INFO] [stdout] | [INFO] [stdout] 96 | let lang = get_lang(&lang)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 97 | let source = self.doc.get_source(); [INFO] [stdout] 98 | let mut parser = tree_sitter::Parser::new().ok()?; [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 101 | let tree = source.parse_tree_sitter(&mut parser, None).ok()?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 102 | tree.map(|t| Self { [INFO] [stdout] | __________________^ [INFO] [stdout] 103 | | inner: t, [INFO] [stdout] 104 | | doc: self.doc.clone_with_lang(lang), [INFO] [stdout] 105 | | }) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/node.rs:104:16 [INFO] [stdout] | [INFO] [stdout] 96 | let lang = get_lang(&lang)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 102 | tree.map(|t| Self { [INFO] [stdout] | - these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 103 | inner: t, [INFO] [stdout] 104 | doc: self.doc.clone_with_lang(lang), [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/node.rs:269:5 [INFO] [stdout] | [INFO] [stdout] 268 | pub fn matches>(&self, m: M) -> bool { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 269 | m.match_node(self.clone()).is_some() [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/node.rs:273:5 [INFO] [stdout] | [INFO] [stdout] 272 | pub fn inside>(&self, m: M) -> bool { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 273 | self.ancestors().find_map(|n| m.match_node(n)).is_some() [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/node.rs:277:5 [INFO] [stdout] | [INFO] [stdout] 276 | pub fn has>(&self, m: M) -> bool { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 277 | self.dfs().skip(1).find_map(|n| m.match_node(n)).is_some() [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/node.rs:281:5 [INFO] [stdout] | [INFO] [stdout] 280 | pub fn precedes>(&self, m: M) -> bool { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 281 | self.next_all().find_map(|n| m.match_node(n)).is_some() [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/node.rs:285:5 [INFO] [stdout] | [INFO] [stdout] 284 | pub fn follows>(&self, m: M) -> bool { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 285 | self.prev_all().find_map(|n| m.match_node(n)).is_some() [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/node.rs:358:24 [INFO] [stdout] | [INFO] [stdout] 355 | let mut cursor = self.inner.walk(); [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 358 | std::iter::from_fn(move || { [INFO] [stdout] | ________________________^ [INFO] [stdout] 359 | | if done { [INFO] [stdout] 360 | | return None; [INFO] [stdout] 361 | | } [INFO] [stdout] ... | [INFO] [stdout] 371 | | Some(Node { inner, root }) [INFO] [stdout] 372 | | }) [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/node.rs:409:24 [INFO] [stdout] | [INFO] [stdout] 407 | let mut cursor = node.inner.walk(); [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 408 | cursor.goto_first_child_for_byte(self.inner.start_byte()); [INFO] [stdout] 409 | std::iter::from_fn(move || { [INFO] [stdout] | ________________________^ [INFO] [stdout] 410 | | if cursor.goto_next_sibling() { [INFO] [stdout] 411 | | Some(self.root.adopt(cursor.node())) [INFO] [stdout] 412 | | } else { [INFO] [stdout] 413 | | None [INFO] [stdout] 414 | | } [INFO] [stdout] 415 | | }) [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/node.rs:445:24 [INFO] [stdout] | [INFO] [stdout] 443 | let mut cursor = node.inner.walk(); [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 444 | cursor.goto_first_child_for_byte(self.inner.start_byte()); [INFO] [stdout] 445 | std::iter::from_fn(move || { [INFO] [stdout] | ________________________^ [INFO] [stdout] 446 | | if cursor.goto_previous_sibling() { [INFO] [stdout] 447 | | Some(self.root.adopt(cursor.node())) [INFO] [stdout] 448 | | } else { [INFO] [stdout] 449 | | None [INFO] [stdout] 450 | | } [INFO] [stdout] 451 | | }) [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/node.rs:498:5 [INFO] [stdout] | [INFO] [stdout] 494 | matcher: M, [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 495 | replacer: R, [INFO] [stdout] | ----------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 498 | / Visitor::new(&matcher) [INFO] [stdout] 499 | | .reentrant(false) [INFO] [stdout] 500 | | .visit(self.clone()) [INFO] [stdout] 501 | | .map(|matched| matched.make_edit(&matcher, &replacer)) [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/node.rs:523:10 [INFO] [stdout] | [INFO] [stdout] 520 | let mut children = self.children().peekable(); [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 523 | Some(Edit:: { [INFO] [stdout] | __________^ [INFO] [stdout] 524 | | position: start, [INFO] [stdout] 525 | | deleted_length: end - start, [INFO] [stdout] 526 | | inserted_text: Vec::new(), [INFO] [stdout] 527 | | }) [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: aborting due to 32 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `ast-grep-core` (lib) due to 33 previous errors [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/lib.rs:73:14 [INFO] [stdout] | [INFO] [stdout] 71 | pub fn doc(d: D) -> Self { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 72 | Self { [INFO] [stdout] 73 | inner: Root::doc(d), [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/lib.rs:81:14 [INFO] [stdout] | [INFO] [stdout] 79 | pub fn new>(src: S, lang: L) -> Self { [INFO] [stdout] | ------ ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 80 | Self { [INFO] [stdout] 81 | inner: Root::new(src.as_ref(), lang), [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/language.rs:22:26 [INFO] [stdout] | [INFO] [stdout] 21 | fn ast_grep>(&self, source: S) -> AstGrep> { [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 22 | AstGrep::new(source, self.clone()) [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/matcher.rs:59:10 [INFO] [stdout] | [INFO] [stdout] 57 | let mut env = Cow::Owned(MetaVarEnv::new()); [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 58 | let node = self.match_node_with_env(node, &mut env)?; [INFO] [stdout] 59 | Some(NodeMatch::new(node, env.into_owned())) [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/matcher.rs:137:12 [INFO] [stdout] | [INFO] [stdout] 135 | pub fn new(matcher: M, node: Node<'tree, D>) -> Self { [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 136 | Self { [INFO] [stdout] 137 | dfs: node.dfs(), [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/matcher/kind.rs:34:13 [INFO] [stdout] | [INFO] [stdout] 32 | pub fn new(node_kind: &str, lang: L) -> Self { [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 33 | Self { [INFO] [stdout] 34 | kind: lang [INFO] [stdout] | _____________^ [INFO] [stdout] 35 | | .get_ts_language() [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/ops.rs:309:14 [INFO] [stdout] | [INFO] [stdout] 307 | pub fn every(pattern: M) -> Op> { [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 308 | Op { [INFO] [stdout] 309 | inner: And { [INFO] [stdout] | ______________^ [INFO] [stdout] 310 | | pattern1: pattern, [INFO] [stdout] 311 | | pattern2: MatchAll, [INFO] [stdout] 312 | | lang: PhantomData, [INFO] [stdout] 313 | | }, [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/ops.rs:319:14 [INFO] [stdout] | [INFO] [stdout] 317 | pub fn either(pattern: M) -> Op> { [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 318 | Op { [INFO] [stdout] 319 | inner: Or { [INFO] [stdout] | ______________^ [INFO] [stdout] 320 | | pattern1: pattern, [INFO] [stdout] 321 | | pattern2: MatchNone, [INFO] [stdout] 322 | | lang: PhantomData, [INFO] [stdout] 323 | | }, [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/ops.rs:348:14 [INFO] [stdout] | [INFO] [stdout] 346 | pub fn and>(self, other: O) -> Op> { [INFO] [stdout] | ---- -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 347 | Op { [INFO] [stdout] 348 | inner: And { [INFO] [stdout] | ______________^ [INFO] [stdout] 349 | | pattern1: self.inner, [INFO] [stdout] 350 | | pattern2: other, [INFO] [stdout] 351 | | lang: PhantomData, [INFO] [stdout] 352 | | }, [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/ops.rs:362:14 [INFO] [stdout] | [INFO] [stdout] 360 | pub fn or>(self, other: O) -> Op> { [INFO] [stdout] | ---- -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 361 | Op { [INFO] [stdout] 362 | inner: Or { [INFO] [stdout] | ______________^ [INFO] [stdout] 363 | | pattern1: self.inner, [INFO] [stdout] 364 | | pattern2: other, [INFO] [stdout] 365 | | lang: PhantomData, [INFO] [stdout] 366 | | }, [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/ops.rs:388:5 [INFO] [stdout] | [INFO] [stdout] 386 | fn find_all(matcher: impl Matcher, code: &str) -> Vec { [INFO] [stdout] | -------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 387 | let node = Root::str(code, Tsx); [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 388 | / node [INFO] [stdout] 389 | | .root() [INFO] [stdout] 390 | | .find_all(matcher) [INFO] [stdout] 391 | | .map(|n| n.text().to_string()) [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/replacer/indent.rs:187:29 [INFO] [stdout] | [INFO] [stdout] 187 | lines.split(|b| *b == get_new_line::()), [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/replacer/indent.rs:252:3 [INFO] [stdout] | [INFO] [stdout] 243 | let indentation: Vec<_> = std::iter::repeat(get_space::()).take(indent).collect(); [INFO] [stdout] | ----------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 244 | let new_line = get_new_line::(); [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 252 | lines.join(&new_line).to_vec() [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/replacer/structural.rs:92:8 [INFO] [stdout] | [INFO] [stdout] 85 | lang: D::Lang, [INFO] [stdout] | ------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 92 | Some(replaced.to_vec()) [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/replacer/structural.rs:107:25 [INFO] [stdout] | [INFO] [stdout] 107 | .map(|(v, p)| (v, Tsx.ast_grep(p).inner)) [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/replacer/structural.rs:170:25 [INFO] [stdout] | [INFO] [stdout] 170 | .map(|(v, p)| (v, Tsx.ast_grep(p).inner)) [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/replacer/template.rs:46:5 [INFO] [stdout] | [INFO] [stdout] 44 | let bytes = replace_fixer(self, nm.get_env()); [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 45 | let replaced = DeindentedExtract::MultiLine(&bytes, 0); [INFO] [stdout] 46 | indent_lines::(indent, replaced).to_vec() [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/replacer/template.rs:197:25 [INFO] [stdout] | [INFO] [stdout] 197 | .map(|(v, p)| (v, Tsx.ast_grep(p).inner)) [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/replacer/template.rs:259:25 [INFO] [stdout] | [INFO] [stdout] 259 | .map(|(v, p)| (v, Tsx.ast_grep(p).inner)) [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/replacer/template.rs:308:25 [INFO] [stdout] | [INFO] [stdout] 308 | .map(|(v, p)| (v, Tsx.ast_grep(p).inner)) [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/match_tree/mod.rs:144:3 [INFO] [stdout] | [INFO] [stdout] 139 | let goal_children = goal.children(); [INFO] [stdout] | ------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 140 | let cand_children = candidate.children(); [INFO] [stdout] | ------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 144 | / goal_children [INFO] [stdout] 145 | | .zip(cand_children) [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/node.rs:22:5 [INFO] [stdout] | [INFO] [stdout] 21 | pub fn str(src: &str, lang: L) -> Self { [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 22 | Self::try_new(src, lang).expect("should parse") [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/node.rs:33:8 [INFO] [stdout] | [INFO] [stdout] 30 | pub fn try_new(src: &str, lang: D::Lang) -> Result { [INFO] [stdout] | ------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 31 | let doc = D::from_str(src, lang); [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 32 | let inner = doc.parse(None)?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 33 | Ok(Self { inner, doc }) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/node.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 36 | pub fn new(src: &str, lang: D::Lang) -> Self { [INFO] [stdout] | ------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 37 | Self::try_new(src, lang).expect("should parse") [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/node.rs:41:8 [INFO] [stdout] | [INFO] [stdout] 39 | pub fn try_doc(doc: D) -> Result { [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 40 | let inner = doc.parse(None)?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 41 | Ok(Self { inner, doc }) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/node.rs:45:5 [INFO] [stdout] | [INFO] [stdout] 44 | pub fn doc(doc: D) -> Self { [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 45 | Self::try_doc(doc).expect("Parse doc error") [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/node.rs:102:18 [INFO] [stdout] | [INFO] [stdout] 96 | let lang = get_lang(&lang)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 97 | let source = self.doc.get_source(); [INFO] [stdout] 98 | let mut parser = tree_sitter::Parser::new().ok()?; [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 101 | let tree = source.parse_tree_sitter(&mut parser, None).ok()?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 102 | tree.map(|t| Self { [INFO] [stdout] | __________________^ [INFO] [stdout] 103 | | inner: t, [INFO] [stdout] 104 | | doc: self.doc.clone_with_lang(lang), [INFO] [stdout] 105 | | }) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/node.rs:104:16 [INFO] [stdout] | [INFO] [stdout] 96 | let lang = get_lang(&lang)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 102 | tree.map(|t| Self { [INFO] [stdout] | - these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 103 | inner: t, [INFO] [stdout] 104 | doc: self.doc.clone_with_lang(lang), [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/node.rs:269:5 [INFO] [stdout] | [INFO] [stdout] 268 | pub fn matches>(&self, m: M) -> bool { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 269 | m.match_node(self.clone()).is_some() [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/node.rs:273:5 [INFO] [stdout] | [INFO] [stdout] 272 | pub fn inside>(&self, m: M) -> bool { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 273 | self.ancestors().find_map(|n| m.match_node(n)).is_some() [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/node.rs:277:5 [INFO] [stdout] | [INFO] [stdout] 276 | pub fn has>(&self, m: M) -> bool { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 277 | self.dfs().skip(1).find_map(|n| m.match_node(n)).is_some() [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/node.rs:281:5 [INFO] [stdout] | [INFO] [stdout] 280 | pub fn precedes>(&self, m: M) -> bool { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 281 | self.next_all().find_map(|n| m.match_node(n)).is_some() [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/node.rs:285:5 [INFO] [stdout] | [INFO] [stdout] 284 | pub fn follows>(&self, m: M) -> bool { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 285 | self.prev_all().find_map(|n| m.match_node(n)).is_some() [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/node.rs:358:24 [INFO] [stdout] | [INFO] [stdout] 355 | let mut cursor = self.inner.walk(); [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 358 | std::iter::from_fn(move || { [INFO] [stdout] | ________________________^ [INFO] [stdout] 359 | | if done { [INFO] [stdout] 360 | | return None; [INFO] [stdout] 361 | | } [INFO] [stdout] ... | [INFO] [stdout] 371 | | Some(Node { inner, root }) [INFO] [stdout] 372 | | }) [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/node.rs:409:24 [INFO] [stdout] | [INFO] [stdout] 407 | let mut cursor = node.inner.walk(); [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 408 | cursor.goto_first_child_for_byte(self.inner.start_byte()); [INFO] [stdout] 409 | std::iter::from_fn(move || { [INFO] [stdout] | ________________________^ [INFO] [stdout] 410 | | if cursor.goto_next_sibling() { [INFO] [stdout] 411 | | Some(self.root.adopt(cursor.node())) [INFO] [stdout] 412 | | } else { [INFO] [stdout] 413 | | None [INFO] [stdout] 414 | | } [INFO] [stdout] 415 | | }) [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/node.rs:445:24 [INFO] [stdout] | [INFO] [stdout] 443 | let mut cursor = node.inner.walk(); [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 444 | cursor.goto_first_child_for_byte(self.inner.start_byte()); [INFO] [stdout] 445 | std::iter::from_fn(move || { [INFO] [stdout] | ________________________^ [INFO] [stdout] 446 | | if cursor.goto_previous_sibling() { [INFO] [stdout] 447 | | Some(self.root.adopt(cursor.node())) [INFO] [stdout] 448 | | } else { [INFO] [stdout] 449 | | None [INFO] [stdout] 450 | | } [INFO] [stdout] 451 | | }) [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/node.rs:498:5 [INFO] [stdout] | [INFO] [stdout] 494 | matcher: M, [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 495 | replacer: R, [INFO] [stdout] | ----------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 498 | / Visitor::new(&matcher) [INFO] [stdout] 499 | | .reentrant(false) [INFO] [stdout] 500 | | .visit(self.clone()) [INFO] [stdout] 501 | | .map(|matched| matched.make_edit(&matcher, &replacer)) [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/node.rs:523:10 [INFO] [stdout] | [INFO] [stdout] 520 | let mut children = self.children().peekable(); [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 523 | Some(Edit:: { [INFO] [stdout] | __________^ [INFO] [stdout] 524 | | position: start, [INFO] [stdout] 525 | | deleted_length: end - start, [INFO] [stdout] 526 | | inserted_text: Vec::new(), [INFO] [stdout] 527 | | }) [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: aborting due to 38 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `ast-grep-core` (lib test) due to 39 previous errors [INFO] running `Command { std: "docker" "inspect" "222c19723e174abd5292d3afee7d42aef9c8427a99273b9276bfe6169591157d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "222c19723e174abd5292d3afee7d42aef9c8427a99273b9276bfe6169591157d", kill_on_drop: false }` [INFO] [stdout] 222c19723e174abd5292d3afee7d42aef9c8427a99273b9276bfe6169591157d