[INFO] fetching crate hxml 0.3.3... [INFO] testing hxml-0.3.3 against try#b83b707f97d809763b7861afa7638871f3339a33 for pr-145838-1 [INFO] extracting crate hxml 0.3.3 into /workspace/builds/worker-7-tc2/source [INFO] started tweaking crates.io crate hxml 0.3.3 [INFO] finished tweaking crates.io crate hxml 0.3.3 [INFO] tweaked toml for crates.io crate hxml 0.3.3 written to /workspace/builds/worker-7-tc2/source/Cargo.toml [INFO] validating manifest of crates.io crate hxml 0.3.3 on toolchain b83b707f97d809763b7861afa7638871f3339a33 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b83b707f97d809763b7861afa7638871f3339a33" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b83b707f97d809763b7861afa7638871f3339a33" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b83b707f97d809763b7861afa7638871f3339a33" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+b83b707f97d809763b7861afa7638871f3339a33" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 33e71a55318cb1afaa00b8e5378e49bc9ad8f5180d11d006ca283c95cbdba453 [INFO] running `Command { std: "docker" "start" "-a" "33e71a55318cb1afaa00b8e5378e49bc9ad8f5180d11d006ca283c95cbdba453", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "33e71a55318cb1afaa00b8e5378e49bc9ad8f5180d11d006ca283c95cbdba453", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "33e71a55318cb1afaa00b8e5378e49bc9ad8f5180d11d006ca283c95cbdba453", kill_on_drop: false }` [INFO] [stdout] 33e71a55318cb1afaa00b8e5378e49bc9ad8f5180d11d006ca283c95cbdba453 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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" "-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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+b83b707f97d809763b7861afa7638871f3339a33" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] dcc88fe22004af35e1b82c29761200c9ea92ea6a1214a03509f65b445d26dbd0 [INFO] running `Command { std: "docker" "start" "-a" "dcc88fe22004af35e1b82c29761200c9ea92ea6a1214a03509f65b445d26dbd0", kill_on_drop: false }` [INFO] [stderr] Compiling hxml v0.3.3 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused variable: `internal_subset_end_index` [INFO] [stdout] --> src/parse/prolog.rs:322:17 [INFO] [stdout] | [INFO] [stdout] 322 | let internal_subset_end_index = match get_internal_subset_end_index(document, name_end_index + 2) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_internal_subset_end_index` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `document` [INFO] [stdout] --> src/parse/prolog.rs:340:38 [INFO] [stdout] | [INFO] [stdout] 340 | pub fn get_internal_subset_end_index(document: &[u16], mut index: usize) -> Option { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_document` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `index` [INFO] [stdout] --> src/parse/prolog.rs:340:60 [INFO] [stdout] | [INFO] [stdout] 340 | pub fn get_internal_subset_end_index(document: &[u16], mut index: usize) -> Option { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/parse/prolog.rs:340:56 [INFO] [stdout] | [INFO] [stdout] 340 | pub fn get_internal_subset_end_index(document: &[u16], mut index: usize) -> Option { [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `document` [INFO] [stdout] --> src/parse/prolog.rs:388:23 [INFO] [stdout] | [INFO] [stdout] 388 | pub fn parse_xml_decl(document: &[u16], index: usize) -> XMLDecl { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_document` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `index` [INFO] [stdout] --> src/parse/prolog.rs:388:41 [INFO] [stdout] | [INFO] [stdout] 388 | pub fn parse_xml_decl(document: &[u16], index: usize) -> XMLDecl { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `content` [INFO] [stdout] --> src/parse/mod.rs:71:30 [INFO] [stdout] | [INFO] [stdout] 71 | pub fn get_content_end_index(content: &[u16], index: usize) -> Option { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_content` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `index` [INFO] [stdout] --> src/parse/mod.rs:71:47 [INFO] [stdout] | [INFO] [stdout] 71 | pub fn get_content_end_index(content: &[u16], index: usize) -> Option { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `to_slice`, `len`, `g_len`, `index`, and `slice` are never used [INFO] [stdout] --> src/gstring.rs:41:12 [INFO] [stdout] | [INFO] [stdout] 19 | impl GString { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 41 | pub fn to_slice(&self) -> &[u16] { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 47 | pub fn len(&self) -> usize { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 51 | pub fn g_len(&self) -> usize { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 57 | pub fn index(&self, index: usize) -> u16 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 63 | pub fn slice(&self, start: usize, end: usize) -> GString { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_content_end_index` is never used [INFO] [stdout] --> src/parse/mod.rs:71:8 [INFO] [stdout] | [INFO] [stdout] 71 | pub fn get_content_end_index(content: &[u16], index: usize) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_element_end_index` is never used [INFO] [stdout] --> src/parse/tag.rs:16:8 [INFO] [stdout] | [INFO] [stdout] 16 | pub fn get_element_end_index(document: &[u16], index: usize) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/dom.rs:19:9 [INFO] [stdout] | [INFO] [stdout] 19 | ELEMENTS.iter().filter(|e| e.is_alive).map(|e| e.pointer).collect() [INFO] [stdout] | ^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/dom.rs:29:24 [INFO] [stdout] | [INFO] [stdout] 29 | return TAGS_BY_ID.as_ref().unwrap().get(&id).copied(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/dom.rs:54:13 [INFO] [stdout] | [INFO] [stdout] 54 | TAGS_BY_ID.as_ref().unwrap().keys().map(|id| id.to_string()).collect() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/dom.rs:68:17 [INFO] [stdout] | [INFO] [stdout] 68 | TAGS_BY_ID.as_mut().unwrap().remove(id); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/dom.rs:74:24 [INFO] [stdout] | [INFO] [stdout] 74 | let tags = TAGS_BY_CLASS.as_mut().unwrap().get_mut(class).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/dom.rs:90:20 [INFO] [stdout] | [INFO] [stdout] 90 | let tags = TAGS_BY_NAME.as_mut().unwrap().get_mut(&el.tag_name).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/dom.rs:121:19 [INFO] [stdout] | [INFO] [stdout] 121 | match TAGS_BY_NAME.as_ref().unwrap().get(&tag_name) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/dom.rs:138:26 [INFO] [stdout] | [INFO] [stdout] 138 | return match TAGS_BY_NAME.as_ref().unwrap().get(&tag_name) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/dom.rs:165:19 [INFO] [stdout] | [INFO] [stdout] 165 | match TAGS_BY_CLASS.as_ref().unwrap().get(&class_name) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/dom.rs:180:24 [INFO] [stdout] | [INFO] [stdout] 180 | for element in ELEMENTS.iter() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/dom.rs:203:15 [INFO] [stdout] | [INFO] [stdout] 203 | match &PROLOG { [INFO] [stdout] | ^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] help: use `&raw const` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 203 | match &raw const PROLOG { [INFO] [stdout] | +++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/err.rs:93:14 [INFO] [stdout] | [INFO] [stdout] 93 | unsafe { ERRORS.clone() } [INFO] [stdout] | ^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/err.rs:97:14 [INFO] [stdout] | [INFO] [stdout] 97 | unsafe { ERRORS.push(e); } [INFO] [stdout] | ^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/gstring.rs:26:43 [INFO] [stdout] | [INFO] [stdout] 26 | unsafe { GString { start: 0, end: GLOBAL_STRING.len() } } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/gstring.rs:53:13 [INFO] [stdout] | [INFO] [stdout] 53 | GLOBAL_STRING.len() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/gstring.rs:67:17 [INFO] [stdout] | [INFO] [stdout] 67 | pub fn iter(&self) -> std::slice::Iter { [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 67 | pub fn iter(&self) -> std::slice::Iter<'_, u16> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/node/element.rs:161:32 [INFO] [stdout] | [INFO] [stdout] 161 | let tags_by_name = TAGS_BY_NAME.as_mut().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/node/element.rs:162:30 [INFO] [stdout] | [INFO] [stdout] 162 | let tags_by_id = TAGS_BY_ID.as_mut().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/node/element.rs:163:33 [INFO] [stdout] | [INFO] [stdout] 163 | let tags_by_class = TAGS_BY_CLASS.as_mut().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/node/memory.rs:18:9 [INFO] [stdout] | [INFO] [stdout] 18 | FREE_LIST.push(pointer.ptr); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/node/memory.rs:31:12 [INFO] [stdout] | [INFO] [stdout] 31 | if FREE_LIST.len() == 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/node/memory.rs:35:47 [INFO] [stdout] | [INFO] [stdout] 35 | element.pointer = ElementPtr::new(ELEMENTS.len()); [INFO] [stdout] | ^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/node/memory.rs:36:13 [INFO] [stdout] | [INFO] [stdout] 36 | ELEMENTS.push(element); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/node/memory.rs:38:29 [INFO] [stdout] | [INFO] [stdout] 38 | ElementPtr::new(ELEMENTS.len() - 1) [INFO] [stdout] | ^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/node/memory.rs:42:27 [INFO] [stdout] | [INFO] [stdout] 42 | let pointer = FREE_LIST.pop().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.93s [INFO] running `Command { std: "docker" "inspect" "dcc88fe22004af35e1b82c29761200c9ea92ea6a1214a03509f65b445d26dbd0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "dcc88fe22004af35e1b82c29761200c9ea92ea6a1214a03509f65b445d26dbd0", kill_on_drop: false }` [INFO] [stdout] dcc88fe22004af35e1b82c29761200c9ea92ea6a1214a03509f65b445d26dbd0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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" "-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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+b83b707f97d809763b7861afa7638871f3339a33" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 4048c70a529fffccd25deb525bb5d66053728f6a73e12381c1a93f6423b3cabf [INFO] running `Command { std: "docker" "start" "-a" "4048c70a529fffccd25deb525bb5d66053728f6a73e12381c1a93f6423b3cabf", kill_on_drop: false }` [INFO] [stdout] warning: unused variable: `internal_subset_end_index` [INFO] [stdout] --> src/parse/prolog.rs:322:17 [INFO] [stdout] | [INFO] [stdout] 322 | let internal_subset_end_index = match get_internal_subset_end_index(document, name_end_index + 2) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_internal_subset_end_index` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `document` [INFO] [stdout] --> src/parse/prolog.rs:340:38 [INFO] [stdout] | [INFO] [stdout] 340 | pub fn get_internal_subset_end_index(document: &[u16], mut index: usize) -> Option { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_document` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `index` [INFO] [stdout] --> src/parse/prolog.rs:340:60 [INFO] [stdout] | [INFO] [stdout] 340 | pub fn get_internal_subset_end_index(document: &[u16], mut index: usize) -> Option { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/parse/prolog.rs:340:56 [INFO] [stdout] | [INFO] [stdout] 340 | pub fn get_internal_subset_end_index(document: &[u16], mut index: usize) -> Option { [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `document` [INFO] [stdout] --> src/parse/prolog.rs:388:23 [INFO] [stdout] | [INFO] [stdout] 388 | pub fn parse_xml_decl(document: &[u16], index: usize) -> XMLDecl { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_document` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `index` [INFO] [stdout] --> src/parse/prolog.rs:388:41 [INFO] [stdout] | [INFO] [stdout] 388 | pub fn parse_xml_decl(document: &[u16], index: usize) -> XMLDecl { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `content` [INFO] [stdout] --> src/parse/mod.rs:71:30 [INFO] [stdout] | [INFO] [stdout] 71 | pub fn get_content_end_index(content: &[u16], index: usize) -> Option { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_content` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `index` [INFO] [stdout] --> src/parse/mod.rs:71:47 [INFO] [stdout] | [INFO] [stdout] 71 | pub fn get_content_end_index(content: &[u16], index: usize) -> Option { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `to_slice`, `len`, `g_len`, `index`, and `slice` are never used [INFO] [stdout] --> src/gstring.rs:41:12 [INFO] [stdout] | [INFO] [stdout] 19 | impl GString { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 41 | pub fn to_slice(&self) -> &[u16] { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 47 | pub fn len(&self) -> usize { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 51 | pub fn g_len(&self) -> usize { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 57 | pub fn index(&self, index: usize) -> u16 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 63 | pub fn slice(&self, start: usize, end: usize) -> GString { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_content_end_index` is never used [INFO] [stdout] --> src/parse/mod.rs:71:8 [INFO] [stdout] | [INFO] [stdout] 71 | pub fn get_content_end_index(content: &[u16], index: usize) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_element_end_index` is never used [INFO] [stdout] --> src/parse/tag.rs:16:8 [INFO] [stdout] | [INFO] [stdout] 16 | pub fn get_element_end_index(document: &[u16], index: usize) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/dom.rs:19:9 [INFO] [stdout] | [INFO] [stdout] 19 | ELEMENTS.iter().filter(|e| e.is_alive).map(|e| e.pointer).collect() [INFO] [stdout] | ^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/dom.rs:29:24 [INFO] [stdout] | [INFO] [stdout] 29 | return TAGS_BY_ID.as_ref().unwrap().get(&id).copied(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/dom.rs:54:13 [INFO] [stdout] | [INFO] [stdout] 54 | TAGS_BY_ID.as_ref().unwrap().keys().map(|id| id.to_string()).collect() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/dom.rs:68:17 [INFO] [stdout] | [INFO] [stdout] 68 | TAGS_BY_ID.as_mut().unwrap().remove(id); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/dom.rs:74:24 [INFO] [stdout] | [INFO] [stdout] 74 | let tags = TAGS_BY_CLASS.as_mut().unwrap().get_mut(class).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/dom.rs:90:20 [INFO] [stdout] | [INFO] [stdout] 90 | let tags = TAGS_BY_NAME.as_mut().unwrap().get_mut(&el.tag_name).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/dom.rs:121:19 [INFO] [stdout] | [INFO] [stdout] 121 | match TAGS_BY_NAME.as_ref().unwrap().get(&tag_name) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/dom.rs:138:26 [INFO] [stdout] | [INFO] [stdout] 138 | return match TAGS_BY_NAME.as_ref().unwrap().get(&tag_name) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/dom.rs:165:19 [INFO] [stdout] | [INFO] [stdout] 165 | match TAGS_BY_CLASS.as_ref().unwrap().get(&class_name) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/dom.rs:180:24 [INFO] [stdout] | [INFO] [stdout] 180 | for element in ELEMENTS.iter() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/dom.rs:203:15 [INFO] [stdout] | [INFO] [stdout] 203 | match &PROLOG { [INFO] [stdout] | ^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] help: use `&raw const` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 203 | match &raw const PROLOG { [INFO] [stdout] | +++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/err.rs:93:14 [INFO] [stdout] | [INFO] [stdout] 93 | unsafe { ERRORS.clone() } [INFO] [stdout] | ^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/err.rs:97:14 [INFO] [stdout] | [INFO] [stdout] 97 | unsafe { ERRORS.push(e); } [INFO] [stdout] | ^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/gstring.rs:26:43 [INFO] [stdout] | [INFO] [stdout] 26 | unsafe { GString { start: 0, end: GLOBAL_STRING.len() } } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/gstring.rs:53:13 [INFO] [stdout] | [INFO] [stdout] 53 | GLOBAL_STRING.len() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/gstring.rs:67:17 [INFO] [stdout] | [INFO] [stdout] 67 | pub fn iter(&self) -> std::slice::Iter { [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 67 | pub fn iter(&self) -> std::slice::Iter<'_, u16> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/node/element.rs:161:32 [INFO] [stdout] | [INFO] [stdout] 161 | let tags_by_name = TAGS_BY_NAME.as_mut().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/node/element.rs:162:30 [INFO] [stdout] | [INFO] [stdout] 162 | let tags_by_id = TAGS_BY_ID.as_mut().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/node/element.rs:163:33 [INFO] [stdout] | [INFO] [stdout] 163 | let tags_by_class = TAGS_BY_CLASS.as_mut().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/node/memory.rs:18:9 [INFO] [stdout] | [INFO] [stdout] 18 | FREE_LIST.push(pointer.ptr); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/node/memory.rs:31:12 [INFO] [stdout] | [INFO] [stdout] 31 | if FREE_LIST.len() == 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/node/memory.rs:35:47 [INFO] [stdout] | [INFO] [stdout] 35 | element.pointer = ElementPtr::new(ELEMENTS.len()); [INFO] [stdout] | ^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/node/memory.rs:36:13 [INFO] [stdout] | [INFO] [stdout] 36 | ELEMENTS.push(element); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/node/memory.rs:38:29 [INFO] [stdout] | [INFO] [stdout] 38 | ElementPtr::new(ELEMENTS.len() - 1) [INFO] [stdout] | ^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/node/memory.rs:42:27 [INFO] [stdout] | [INFO] [stdout] 42 | let pointer = FREE_LIST.pop().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling hxml v0.3.3 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused variable: `internal_subset_end_index` [INFO] [stdout] --> src/parse/prolog.rs:322:17 [INFO] [stdout] | [INFO] [stdout] 322 | let internal_subset_end_index = match get_internal_subset_end_index(document, name_end_index + 2) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_internal_subset_end_index` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `document` [INFO] [stdout] --> src/parse/prolog.rs:340:38 [INFO] [stdout] | [INFO] [stdout] 340 | pub fn get_internal_subset_end_index(document: &[u16], mut index: usize) -> Option { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_document` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `index` [INFO] [stdout] --> src/parse/prolog.rs:340:60 [INFO] [stdout] | [INFO] [stdout] 340 | pub fn get_internal_subset_end_index(document: &[u16], mut index: usize) -> Option { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/parse/prolog.rs:340:56 [INFO] [stdout] | [INFO] [stdout] 340 | pub fn get_internal_subset_end_index(document: &[u16], mut index: usize) -> Option { [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `document` [INFO] [stdout] --> src/parse/prolog.rs:388:23 [INFO] [stdout] | [INFO] [stdout] 388 | pub fn parse_xml_decl(document: &[u16], index: usize) -> XMLDecl { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_document` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `index` [INFO] [stdout] --> src/parse/prolog.rs:388:41 [INFO] [stdout] | [INFO] [stdout] 388 | pub fn parse_xml_decl(document: &[u16], index: usize) -> XMLDecl { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `content` [INFO] [stdout] --> src/parse/mod.rs:71:30 [INFO] [stdout] | [INFO] [stdout] 71 | pub fn get_content_end_index(content: &[u16], index: usize) -> Option { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_content` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `index` [INFO] [stdout] --> src/parse/mod.rs:71:47 [INFO] [stdout] | [INFO] [stdout] 71 | pub fn get_content_end_index(content: &[u16], index: usize) -> Option { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `to_slice`, `len`, `g_len`, `index`, and `slice` are never used [INFO] [stdout] --> src/gstring.rs:41:12 [INFO] [stdout] | [INFO] [stdout] 19 | impl GString { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 41 | pub fn to_slice(&self) -> &[u16] { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 47 | pub fn len(&self) -> usize { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 51 | pub fn g_len(&self) -> usize { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 57 | pub fn index(&self, index: usize) -> u16 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 63 | pub fn slice(&self, start: usize, end: usize) -> GString { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_content_end_index` is never used [INFO] [stdout] --> src/parse/mod.rs:71:8 [INFO] [stdout] | [INFO] [stdout] 71 | pub fn get_content_end_index(content: &[u16], index: usize) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_element_end_index` is never used [INFO] [stdout] --> src/parse/tag.rs:16:8 [INFO] [stdout] | [INFO] [stdout] 16 | pub fn get_element_end_index(document: &[u16], index: usize) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/dom.rs:19:9 [INFO] [stdout] | [INFO] [stdout] 19 | ELEMENTS.iter().filter(|e| e.is_alive).map(|e| e.pointer).collect() [INFO] [stdout] | ^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/dom.rs:29:24 [INFO] [stdout] | [INFO] [stdout] 29 | return TAGS_BY_ID.as_ref().unwrap().get(&id).copied(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/dom.rs:54:13 [INFO] [stdout] | [INFO] [stdout] 54 | TAGS_BY_ID.as_ref().unwrap().keys().map(|id| id.to_string()).collect() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/dom.rs:68:17 [INFO] [stdout] | [INFO] [stdout] 68 | TAGS_BY_ID.as_mut().unwrap().remove(id); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/dom.rs:74:24 [INFO] [stdout] | [INFO] [stdout] 74 | let tags = TAGS_BY_CLASS.as_mut().unwrap().get_mut(class).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/dom.rs:90:20 [INFO] [stdout] | [INFO] [stdout] 90 | let tags = TAGS_BY_NAME.as_mut().unwrap().get_mut(&el.tag_name).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/dom.rs:121:19 [INFO] [stdout] | [INFO] [stdout] 121 | match TAGS_BY_NAME.as_ref().unwrap().get(&tag_name) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/dom.rs:138:26 [INFO] [stdout] | [INFO] [stdout] 138 | return match TAGS_BY_NAME.as_ref().unwrap().get(&tag_name) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/dom.rs:165:19 [INFO] [stdout] | [INFO] [stdout] 165 | match TAGS_BY_CLASS.as_ref().unwrap().get(&class_name) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/dom.rs:180:24 [INFO] [stdout] | [INFO] [stdout] 180 | for element in ELEMENTS.iter() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/dom.rs:203:15 [INFO] [stdout] | [INFO] [stdout] 203 | match &PROLOG { [INFO] [stdout] | ^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] help: use `&raw const` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 203 | match &raw const PROLOG { [INFO] [stdout] | +++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/err.rs:93:14 [INFO] [stdout] | [INFO] [stdout] 93 | unsafe { ERRORS.clone() } [INFO] [stdout] | ^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/err.rs:97:14 [INFO] [stdout] | [INFO] [stdout] 97 | unsafe { ERRORS.push(e); } [INFO] [stdout] | ^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/gstring.rs:26:43 [INFO] [stdout] | [INFO] [stdout] 26 | unsafe { GString { start: 0, end: GLOBAL_STRING.len() } } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/gstring.rs:32:59 [INFO] [stdout] | [INFO] [stdout] 32 | assert!(self.end >= self.start && self.end <= GLOBAL_STRING.len()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/gstring.rs:53:13 [INFO] [stdout] | [INFO] [stdout] 53 | GLOBAL_STRING.len() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/gstring.rs:67:17 [INFO] [stdout] | [INFO] [stdout] 67 | pub fn iter(&self) -> std::slice::Iter { [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 67 | pub fn iter(&self) -> std::slice::Iter<'_, u16> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/node/element.rs:161:32 [INFO] [stdout] | [INFO] [stdout] 161 | let tags_by_name = TAGS_BY_NAME.as_mut().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/node/element.rs:162:30 [INFO] [stdout] | [INFO] [stdout] 162 | let tags_by_id = TAGS_BY_ID.as_mut().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/node/element.rs:163:33 [INFO] [stdout] | [INFO] [stdout] 163 | let tags_by_class = TAGS_BY_CLASS.as_mut().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/node/memory.rs:18:9 [INFO] [stdout] | [INFO] [stdout] 18 | FREE_LIST.push(pointer.ptr); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/node/memory.rs:31:12 [INFO] [stdout] | [INFO] [stdout] 31 | if FREE_LIST.len() == 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/node/memory.rs:35:47 [INFO] [stdout] | [INFO] [stdout] 35 | element.pointer = ElementPtr::new(ELEMENTS.len()); [INFO] [stdout] | ^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/node/memory.rs:36:13 [INFO] [stdout] | [INFO] [stdout] 36 | ELEMENTS.push(element); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/node/memory.rs:38:29 [INFO] [stdout] | [INFO] [stdout] 38 | ElementPtr::new(ELEMENTS.len() - 1) [INFO] [stdout] | ^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/node/memory.rs:42:27 [INFO] [stdout] | [INFO] [stdout] 42 | let pointer = FREE_LIST.pop().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/testbench.rs:111:9 [INFO] [stdout] | [INFO] [stdout] 111 | dom::LOCK.lock().unwrap() [INFO] [stdout] | ^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/lib.rs:90:13 [INFO] [stdout] | [INFO] [stdout] 90 | dom::LOCK.lock().unwrap() [INFO] [stdout] | ^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 1.18s [INFO] running `Command { std: "docker" "inspect" "4048c70a529fffccd25deb525bb5d66053728f6a73e12381c1a93f6423b3cabf", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4048c70a529fffccd25deb525bb5d66053728f6a73e12381c1a93f6423b3cabf", kill_on_drop: false }` [INFO] [stdout] 4048c70a529fffccd25deb525bb5d66053728f6a73e12381c1a93f6423b3cabf [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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" "-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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+b83b707f97d809763b7861afa7638871f3339a33" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] b26d6d4f877683600b0a9a06d7f43b1e2f1dd0968f3ff0797ff7de7bfb2acc69 [INFO] running `Command { std: "docker" "start" "-a" "b26d6d4f877683600b0a9a06d7f43b1e2f1dd0968f3ff0797ff7de7bfb2acc69", kill_on_drop: false }` [INFO] [stderr] warning: unused variable: `internal_subset_end_index` [INFO] [stderr] --> src/parse/prolog.rs:322:17 [INFO] [stderr] | [INFO] [stderr] 322 | let internal_subset_end_index = match get_internal_subset_end_index(document, name_end_index + 2) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_internal_subset_end_index` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `document` [INFO] [stderr] --> src/parse/prolog.rs:340:38 [INFO] [stderr] | [INFO] [stderr] 340 | pub fn get_internal_subset_end_index(document: &[u16], mut index: usize) -> Option { [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_document` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `index` [INFO] [stderr] --> src/parse/prolog.rs:340:60 [INFO] [stderr] | [INFO] [stderr] 340 | pub fn get_internal_subset_end_index(document: &[u16], mut index: usize) -> Option { [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/parse/prolog.rs:340:56 [INFO] [stderr] | [INFO] [stderr] 340 | pub fn get_internal_subset_end_index(document: &[u16], mut index: usize) -> Option { [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `document` [INFO] [stderr] --> src/parse/prolog.rs:388:23 [INFO] [stderr] | [INFO] [stderr] 388 | pub fn parse_xml_decl(document: &[u16], index: usize) -> XMLDecl { [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_document` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `index` [INFO] [stderr] --> src/parse/prolog.rs:388:41 [INFO] [stderr] | [INFO] [stderr] 388 | pub fn parse_xml_decl(document: &[u16], index: usize) -> XMLDecl { [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `content` [INFO] [stderr] --> src/parse/mod.rs:71:30 [INFO] [stderr] | [INFO] [stderr] 71 | pub fn get_content_end_index(content: &[u16], index: usize) -> Option { [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_content` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `index` [INFO] [stderr] --> src/parse/mod.rs:71:47 [INFO] [stderr] | [INFO] [stderr] 71 | pub fn get_content_end_index(content: &[u16], index: usize) -> Option { [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stderr] [INFO] [stderr] warning: methods `to_slice`, `len`, `g_len`, `index`, and `slice` are never used [INFO] [stderr] --> src/gstring.rs:41:12 [INFO] [stderr] | [INFO] [stderr] 19 | impl GString { [INFO] [stderr] | ------------ methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 41 | pub fn to_slice(&self) -> &[u16] { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 47 | pub fn len(&self) -> usize { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 51 | pub fn g_len(&self) -> usize { [INFO] [stderr] | ^^^^^ [INFO] [stderr] ... [INFO] [stderr] 57 | pub fn index(&self, index: usize) -> u16 { [INFO] [stderr] | ^^^^^ [INFO] [stderr] ... [INFO] [stderr] 63 | pub fn slice(&self, start: usize, end: usize) -> GString { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: function `get_content_end_index` is never used [INFO] [stderr] --> src/parse/mod.rs:71:8 [INFO] [stderr] | [INFO] [stderr] 71 | pub fn get_content_end_index(content: &[u16], index: usize) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `get_element_end_index` is never used [INFO] [stderr] --> src/parse/tag.rs:16:8 [INFO] [stderr] | [INFO] [stderr] 16 | pub fn get_element_end_index(document: &[u16], index: usize) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static [INFO] [stderr] --> src/dom.rs:19:9 [INFO] [stderr] | [INFO] [stderr] 19 | ELEMENTS.iter().filter(|e| e.is_alive).map(|e| e.pointer).collect() [INFO] [stderr] | ^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stderr] = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static [INFO] [stderr] --> src/dom.rs:29:24 [INFO] [stderr] | [INFO] [stderr] 29 | return TAGS_BY_ID.as_ref().unwrap().get(&id).copied(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static [INFO] [stderr] --> src/dom.rs:54:13 [INFO] [stderr] | [INFO] [stderr] 54 | TAGS_BY_ID.as_ref().unwrap().keys().map(|id| id.to_string()).collect() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/dom.rs:68:17 [INFO] [stderr] | [INFO] [stderr] 68 | TAGS_BY_ID.as_mut().unwrap().remove(id); [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] running 15 tests [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/dom.rs:74:24 [INFO] [stderr] | [INFO] [stderr] 74 | let tags = TAGS_BY_CLASS.as_mut().unwrap().get_mut(class).unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/dom.rs:90:20 [INFO] [stderr] | [INFO] [stderr] 90 | let tags = TAGS_BY_NAME.as_mut().unwrap().get_mut(&el.tag_name).unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static [INFO] [stderr] --> src/dom.rs:121:19 [INFO] [stderr] | [INFO] [stderr] 121 | match TAGS_BY_NAME.as_ref().unwrap().get(&tag_name) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static [INFO] [stderr] --> src/dom.rs:138:26 [INFO] [stderr] | [INFO] [stderr] 138 | return match TAGS_BY_NAME.as_ref().unwrap().get(&tag_name) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static [INFO] [stderr] --> src/dom.rs:165:19 [INFO] [stderr] | [INFO] [stderr] 165 | match TAGS_BY_CLASS.as_ref().unwrap().get(&class_name) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static [INFO] [stderr] --> src/dom.rs:180:24 [INFO] [stderr] | [INFO] [stderr] 180 | for element in ELEMENTS.iter() { [INFO] [stderr] | ^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static [INFO] [stderr] --> src/dom.rs:203:15 [INFO] [stderr] | [INFO] [stderr] 203 | match &PROLOG { [INFO] [stderr] | ^^^^^^^ shared reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stderr] help: use `&raw const` instead to create a raw pointer [INFO] [stderr] | [INFO] [stderr] 203 | match &raw const PROLOG { [INFO] [stderr] | +++++++++ [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static [INFO] [stderr] --> src/err.rs:93:14 [INFO] [stderr] | [INFO] [stderr] 93 | unsafe { ERRORS.clone() } [INFO] [stderr] | ^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/err.rs:97:14 [INFO] [stderr] | [INFO] [stderr] 97 | unsafe { ERRORS.push(e); } [INFO] [stderr] | ^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] test parse::prolog::tests::doctype_test ... ok [INFO] [stderr] | [INFO] [stdout] test gstring::tests::split_test ... ok [INFO] [stderr] = note: for more information, see [INFO] [stdout] test parse::reference::tests::entity_reference_test ... ok [INFO] [stderr] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] test parse::prolog::tests::prolog_test ... ok [INFO] [stderr] [INFO] [stdout] test parse::reference::tests::char_reference_test ... ok [INFO] [stderr] warning: creating a shared reference to mutable static [INFO] [stdout] test parse::tag::tests::end_tag_test ... ok [INFO] [stderr] --> src/gstring.rs:26:43 [INFO] [stdout] test parse::tag::tests::empty_element_tag_test ... ok [INFO] [stderr] | [INFO] [stdout] test parse::tag::tests::start_tag_test ... ok [INFO] [stderr] 26 | unsafe { GString { start: 0, end: GLOBAL_STRING.len() } } [INFO] [stdout] test parse::tests::char_data_test ... ok [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] test parse::tests::cd_sect_test ... ok [INFO] [stderr] | [INFO] [stdout] test parse::tests::comment_test ... ok [INFO] [stderr] = note: for more information, see [INFO] [stdout] test utils::tests::decimal_test ... ok [INFO] [stderr] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] test utils::tests::hexadecimal_test ... ok [INFO] [stderr] [INFO] [stdout] test testbench::xml_dom_test ... ok [INFO] [stderr] warning: creating a shared reference to mutable static [INFO] [stderr] --> src/gstring.rs:53:13 [INFO] [stderr] | [INFO] [stderr] 53 | GLOBAL_STRING.len() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stderr] [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> src/gstring.rs:67:17 [INFO] [stderr] | [INFO] [stderr] 67 | pub fn iter(&self) -> std::slice::Iter { [INFO] [stderr] | ^^^^^ ^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stderr] | | [INFO] [stderr] | the lifetime is elided here [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stderr] help: use `'_` for type paths [INFO] [stderr] | [INFO] [stderr] 67 | pub fn iter(&self) -> std::slice::Iter<'_, u16> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/node/element.rs:161:32 [INFO] [stderr] | [INFO] [stderr] 161 | let tags_by_name = TAGS_BY_NAME.as_mut().unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/node/element.rs:162:30 [INFO] [stderr] | [INFO] [stderr] 162 | let tags_by_id = TAGS_BY_ID.as_mut().unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/node/element.rs:163:33 [INFO] [stderr] | [INFO] [stderr] 163 | let tags_by_class = TAGS_BY_CLASS.as_mut().unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/node/memory.rs:18:9 [INFO] [stderr] | [INFO] [stderr] 18 | FREE_LIST.push(pointer.ptr); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static [INFO] [stderr] --> src/node/memory.rs:31:12 [INFO] [stderr] | [INFO] [stderr] 31 | if FREE_LIST.len() == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static [INFO] [stderr] --> src/node/memory.rs:35:47 [INFO] [stderr] | [INFO] [stderr] 35 | element.pointer = ElementPtr::new(ELEMENTS.len()); [INFO] [stderr] | ^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/node/memory.rs:36:13 [INFO] [stderr] | [INFO] [stderr] 36 | ELEMENTS.push(element); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static [INFO] [stderr] --> src/node/memory.rs:38:29 [INFO] [stderr] | [INFO] [stderr] 38 | ElementPtr::new(ELEMENTS.len() - 1) [INFO] [stdout] test tests::file_test ... ok [INFO] [stderr] | ^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] test result: ok. 15 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stderr] [INFO] [stdout] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/node/memory.rs:42:27 [INFO] [stderr] | [INFO] [stderr] 42 | let pointer = FREE_LIST.pop().unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stderr] [INFO] [stderr] warning: `hxml` (lib) generated 36 warnings (run `cargo fix --lib -p hxml` to apply 2 suggestions) [INFO] [stderr] warning: creating a shared reference to mutable static [INFO] [stderr] --> src/gstring.rs:32:59 [INFO] [stderr] | [INFO] [stderr] 32 | assert!(self.end >= self.start && self.end <= GLOBAL_STRING.len()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static [INFO] [stderr] --> src/testbench.rs:111:9 [INFO] [stderr] | [INFO] [stderr] 111 | dom::LOCK.lock().unwrap() [INFO] [stderr] | ^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static [INFO] [stderr] --> src/lib.rs:90:13 [INFO] [stderr] | [INFO] [stderr] 90 | dom::LOCK.lock().unwrap() [INFO] [stderr] | ^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stderr] [INFO] [stderr] warning: `hxml` (lib test) generated 39 warnings (36 duplicates) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.07s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/hxml-f998298d0b9c551d) [INFO] [stderr] Doc-tests hxml [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "b26d6d4f877683600b0a9a06d7f43b1e2f1dd0968f3ff0797ff7de7bfb2acc69", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b26d6d4f877683600b0a9a06d7f43b1e2f1dd0968f3ff0797ff7de7bfb2acc69", kill_on_drop: false }` [INFO] [stdout] b26d6d4f877683600b0a9a06d7f43b1e2f1dd0968f3ff0797ff7de7bfb2acc69