[INFO] fetching crate an-rope 0.3.1...
[INFO] checking an-rope-0.3.1 against master#4b9792692fbb675174d4d2082e7c37b2bc930e71 for pr-153692-1
[INFO] extracting crate an-rope 0.3.1 into /workspace/builds/worker-2-tc1/source
[INFO] started tweaking crates.io crate an-rope 0.3.1
[INFO] finished tweaking crates.io crate an-rope 0.3.1
[INFO] tweaked toml for crates.io crate an-rope 0.3.1 written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate an-rope 0.3.1 on toolchain 4b9792692fbb675174d4d2082e7c37b2bc930e71
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4b9792692fbb675174d4d2082e7c37b2bc930e71" "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" "+4b9792692fbb675174d4d2082e7c37b2bc930e71" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 52 packages to latest compatible versions
[INFO] [stderr]       Adding clippy v0.0.106 (available: v0.0.302)
[INFO] [stderr]       Adding quickcheck v0.3.2 (available: v1.1.0)
[INFO] [stderr]       Adding tendril v0.2.4 (available: v0.5.0)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4b9792692fbb675174d4d2082e7c37b2bc930e71" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded futf v0.1.5
[INFO] [stderr]   Downloaded utf-8 v0.6.0
[INFO] [stderr]   Downloaded tendril v0.2.4
[INFO] [stderr]   Downloaded utf8-ranges v0.1.3
[INFO] [stderr]   Downloaded encoding_index_tests v0.1.4
[INFO] [stderr]   Downloaded nom v1.2.4
[INFO] [stderr]   Downloaded rustc-serialize v0.3.25
[INFO] [stderr]   Downloaded thread-id v2.0.0
[INFO] [stderr]   Downloaded quine-mc_cluskey v0.2.4
[INFO] [stderr]   Downloaded quickcheck v0.3.2
[INFO] [stderr]   Downloaded kernel32-sys v0.2.2
[INFO] [stderr]   Downloaded env_logger v0.3.5
[INFO] [stderr]   Downloaded encoding-index-singlebyte v1.20141219.5
[INFO] [stderr]   Downloaded semver v0.2.3
[INFO] [stderr]   Downloaded new_debug_unreachable v1.0.6
[INFO] [stderr]   Downloaded thread_local v0.2.7
[INFO] [stderr]   Downloaded rand v0.3.23
[INFO] [stderr]   Downloaded mac v0.1.1
[INFO] [stderr]   Downloaded newtype_derive v0.1.6
[INFO] [stderr]   Downloaded macro-attr v0.2.0
[INFO] [stderr]   Downloaded toml v0.1.30
[INFO] [stderr]   Downloaded rand v0.4.6
[INFO] [stderr]   Downloaded encoding-index-tradchinese v1.20141219.5
[INFO] [stderr]   Downloaded encoding-index-japanese v1.20141219.5
[INFO] [stderr]   Downloaded memchr v0.1.11
[INFO] [stderr]   Downloaded clippy v0.0.106
[INFO] [stderr]   Downloaded unicode-segmentation v1.13.2
[INFO] [stderr]   Downloaded encoding-index-korean v1.20141219.5
[INFO] [stderr]   Downloaded regex v0.1.80
[INFO] [stderr]   Downloaded aho-corasick v0.5.3
[INFO] [stderr]   Downloaded clippy_lints v0.0.106
[INFO] [stderr]   Downloaded encoding-index-simpchinese v1.20141219.5
[INFO] [stderr]   Downloaded winapi v0.2.8
[INFO] [stderr]   Downloaded encoding v0.2.33
[INFO] [stderr]   Downloaded log v0.3.9
[INFO] [stderr]   Downloaded regex-syntax v0.3.9
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+4b9792692fbb675174d4d2082e7c37b2bc930e71" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 7e33b6f4d76b9724e6f96d8582f53090d379fe49a73bfcea0c4dddb0c2ff92ac
[INFO] running `Command { std: "docker" "start" "-a" "7e33b6f4d76b9724e6f96d8582f53090d379fe49a73bfcea0c4dddb0c2ff92ac", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "7e33b6f4d76b9724e6f96d8582f53090d379fe49a73bfcea0c4dddb0c2ff92ac", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7e33b6f4d76b9724e6f96d8582f53090d379fe49a73bfcea0c4dddb0c2ff92ac", kill_on_drop: false }`
[INFO] [stdout] 7e33b6f4d76b9724e6f96d8582f53090d379fe49a73bfcea0c4dddb0c2ff92ac
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+4b9792692fbb675174d4d2082e7c37b2bc930e71" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 052005c770ac9d06014c034a7dc32e2ed019a78204704868f21236d3f8ec396a
[INFO] running `Command { std: "docker" "start" "-a" "052005c770ac9d06014c034a7dc32e2ed019a78204704868f21236d3f8ec396a", kill_on_drop: false }`
[INFO] [stderr] warning: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr]    Compiling libc v0.2.186
[INFO] [stderr]    Compiling winapi-build v0.1.1
[INFO] [stderr]     Checking winapi v0.2.8
[INFO] [stderr]    Compiling semver v0.1.20
[INFO] [stderr]     Checking regex-syntax v0.3.9
[INFO] [stderr]     Checking log v0.4.29
[INFO] [stderr]     Checking utf8-ranges v0.1.3
[INFO] [stderr]     Checking macro-attr v0.2.0
[INFO] [stderr]     Checking unicode-segmentation v1.13.2
[INFO] [stderr]    Compiling kernel32-sys v0.2.2
[INFO] [stderr]     Checking log v0.3.9
[INFO] [stderr]    Compiling rustc_version v0.1.7
[INFO] [stderr]    Compiling newtype_derive v0.1.6
[INFO] [stderr]     Checking an-rope v0.3.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: multiple lines skipped by escaped newline
[INFO] [stdout]    --> src/lib.rs:817:23
[INFO] [stdout]     |
[INFO] [stdout] 817 |                `self`.\n\
[INFO] [stdout]     |  _______________________^
[INFO] [stdout] 818 | |
[INFO] [stdout] 819 | |              [graphemes]: \
[INFO] [stdout]     | |_____________^ skipping everything up to and including this point
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple lines skipped by escaped newline
[INFO] [stdout]    --> src/lib.rs:832:72
[INFO] [stdout]     |
[INFO] [stdout] 832 |               (http://www.unicode.org/reports/tr29/#Word_Boundaries).\n\n\
[INFO] [stdout]     |  ________________________________________________________________________^
[INFO] [stdout] 833 | |
[INFO] [stdout] 834 | |             Here, \"words\" are just those substrings which, after splitting on\
[INFO] [stdout]     | |____________^ skipping everything up to and including this point
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple lines skipped by escaped newline
[INFO] [stdout]    --> src/internals/mod.rs:551:26
[INFO] [stdout]     |
[INFO] [stdout] 551 |                  subrope \n\
[INFO] [stdout]     |  __________________________^
[INFO] [stdout] 552 | |
[INFO] [stdout] 553 | |                \nAs a Rope consists of a sequence of bytes, we can iterate \
[INFO] [stdout]     | |_______________^ skipping everything up to and including this point
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple lines skipped by escaped newline
[INFO] [stdout]    --> src/internals/mod.rs:558:26
[INFO] [stdout]     |
[INFO] [stdout] 558 |                  subrope \n\
[INFO] [stdout]     |  __________________________^
[INFO] [stdout] 559 | |
[INFO] [stdout] 560 | |                \nAs a `Rope` consists of valid UTF-8, we can iterate through a \
[INFO] [stdout]     | |_______________^ skipping everything up to and including this point
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple lines skipped by escaped newline
[INFO] [stdout]    --> src/internals/mod.rs:561:74
[INFO] [stdout]     |
[INFO] [stdout] 561 |                  `Rope` by `char`. This method returns such an iterator. \n\
[INFO] [stdout]     |  __________________________________________________________________________^
[INFO] [stdout] 562 | |
[INFO] [stdout] 563 | |                \nIt's important to remember that `char` represents a Unicode \
[INFO] [stdout]     | |_______________^ skipping everything up to and including this point
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple lines skipped by escaped newline
[INFO] [stdout]    --> src/internals/mod.rs:585:23
[INFO] [stdout]     |
[INFO] [stdout] 585 |                `self`.\n\
[INFO] [stdout]     |  _______________________^
[INFO] [stdout] 586 | |
[INFO] [stdout] 587 | |              [graphemes]: \
[INFO] [stdout]     | |_____________^ skipping everything up to and including this point
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple lines skipped by escaped newline
[INFO] [stdout]    --> src/internals/mod.rs:602:72
[INFO] [stdout]     |
[INFO] [stdout] 602 |               (http://www.unicode.org/reports/tr29/#Word_Boundaries).\n\n\
[INFO] [stdout]     |  ________________________________________________________________________^
[INFO] [stdout] 603 | |
[INFO] [stdout] 604 | |             Here, \"words\" are just those substrings which, after splitting on\
[INFO] [stdout]     | |____________^ skipping everything up to and including this point
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused attribute
[INFO] [stdout]    --> src/lib.rs:441:5
[INFO] [stdout]     |
[INFO] [stdout] 441 |     #[inline]
[INFO] [stdout]     |     ^^^^^^^^^ help: remove this attribute
[INFO] [stdout]     |
[INFO] [stdout] note: attribute also specified here
[INFO] [stdout]    --> src/lib.rs:440:5
[INFO] [stdout]     |
[INFO] [stdout] 440 |     #[inline]
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/internals/mod.rs:705:18
[INFO] [stdout]     |
[INFO] [stdout] 705 |     strings: Box<Iterator<Item = &'a str> + 'a >
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 705 |     strings: Box<dyn Iterator<Item = &'a str> + 'a >
[INFO] [stdout]     |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/internals/mod.rs:728:18
[INFO] [stdout]     |
[INFO] [stdout] 728 |     strings: Box<Iterator<Item = &'a str> + 'a >
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 728 |     strings: Box<dyn Iterator<Item = &'a str> + 'a >
[INFO] [stdout]     |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:161:49
[INFO] [stdout]     |
[INFO] [stdout] 161 |            pub fn $name$(<$lf>)*(&'a $sel) -> Box<Iterator<Item=$ty> + 'a> {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/slice.rs:410:5
[INFO] [stdout]     |
[INFO] [stdout] 410 | /     unstable_iters! {
[INFO] [stdout] 411 | |         #[inline]
[INFO] [stdout] 412 | |         pub fn chars(&'a self) -> impl Iterator<Item=char> + 'a  {
[INFO] [stdout] 413 | |             self.slice_char_iter(self.node.chars())
[INFO] [stdout] ...   |
[INFO] [stdout] 427 | |     }
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `unstable_iters` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/slice.rs:520:53
[INFO] [stdout]     |
[INFO] [stdout] 520 |     fn slice_char_iter<I, T>(&'a self, i: I) -> Box<Iterator<Item=T> + 'a>
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 520 |     fn slice_char_iter<I, T>(&'a self, i: I) -> Box<dyn Iterator<Item=T> + 'a>
[INFO] [stdout]     |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/slice.rs:529:53
[INFO] [stdout]     |
[INFO] [stdout] 529 |     fn slice_strings_iter<I>(&'a self, i: I) -> Box<Iterator<Item=&'a str> + 'a>
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 529 |     fn slice_strings_iter<I>(&'a self, i: I) -> Box<dyn Iterator<Item=&'a str> + 'a>
[INFO] [stdout]     |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:161:49
[INFO] [stdout]     |
[INFO] [stdout] 161 |            pub fn $name$(<$lf>)*(&'a $sel) -> Box<Iterator<Item=$ty> + 'a> {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/internals/mod.rs:462:5
[INFO] [stdout]     |
[INFO] [stdout] 462 | /     unstable_iters! {
[INFO] [stdout] 463 | |         #[doc=
[INFO] [stdout] 464 | |             "Returns an iterator over all the strings in this `Node`s subrope."]
[INFO] [stdout] 465 | |         #[inline]
[INFO] [stdout] ...   |
[INFO] [stdout] 480 | |     }
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `unstable_iters` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:161:49
[INFO] [stdout]     |
[INFO] [stdout] 161 |            pub fn $name$(<$lf>)*(&'a $sel) -> Box<Iterator<Item=$ty> + 'a> {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/internals/mod.rs:549:5
[INFO] [stdout]     |
[INFO] [stdout] 549 | /     str_iters! {
[INFO] [stdout] 550 | |         #[doc="Returns an iterator over all the bytes in this `Node`'s \
[INFO] [stdout] 551 | |                subrope \n\
[INFO] [stdout] ...   |
[INFO] [stdout] 571 | |         impl split_whitespace<&'a str> for Node {}
[INFO] [stdout] 572 | |     }
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `unstable_iters` which comes from the expansion of the macro `str_iters` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:161:49
[INFO] [stdout]     |
[INFO] [stdout] 161 |            pub fn $name$(<$lf>)*(&'a $sel) -> Box<Iterator<Item=$ty> + 'a> {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/internals/mod.rs:549:5
[INFO] [stdout]     |
[INFO] [stdout] 549 | /     str_iters! {
[INFO] [stdout] 550 | |         #[doc="Returns an iterator over all the bytes in this `Node`'s \
[INFO] [stdout] 551 | |                subrope \n\
[INFO] [stdout] ...   |
[INFO] [stdout] 571 | |         impl split_whitespace<&'a str> for Node {}
[INFO] [stdout] 572 | |     }
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `unstable_iters` which comes from the expansion of the macro `str_iters` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:161:49
[INFO] [stdout]     |
[INFO] [stdout] 161 |            pub fn $name$(<$lf>)*(&'a $sel) -> Box<Iterator<Item=$ty> + 'a> {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/internals/mod.rs:549:5
[INFO] [stdout]     |
[INFO] [stdout] 549 | /     str_iters! {
[INFO] [stdout] 550 | |         #[doc="Returns an iterator over all the bytes in this `Node`'s \
[INFO] [stdout] 551 | |                subrope \n\
[INFO] [stdout] ...   |
[INFO] [stdout] 571 | |         impl split_whitespace<&'a str> for Node {}
[INFO] [stdout] 572 | |     }
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `unstable_iters` which comes from the expansion of the macro `str_iters` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:161:49
[INFO] [stdout]     |
[INFO] [stdout] 161 |            pub fn $name$(<$lf>)*(&'a $sel) -> Box<Iterator<Item=$ty> + 'a> {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/internals/mod.rs:582:5
[INFO] [stdout]     |
[INFO] [stdout] 582 | /     unicode_seg_iters! {
[INFO] [stdout] 583 | |         #[doc=
[INFO] [stdout] 584 | |             "Returns an iterator over the [grapheme clusters][graphemes] of \
[INFO] [stdout] 585 | |              `self`.\n\
[INFO] [stdout] ...   |
[INFO] [stdout] 596 | |         impl graphemes for Node { extend }
[INFO] [stdout] 597 | |     }
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `unstable_iters` which comes from the expansion of the macro `unicode_seg_iters` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:161:49
[INFO] [stdout]     |
[INFO] [stdout] 161 |            pub fn $name$(<$lf>)*(&'a $sel) -> Box<Iterator<Item=$ty> + 'a> {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/internals/mod.rs:598:5
[INFO] [stdout]     |
[INFO] [stdout] 598 | /     unicode_seg_iters! {
[INFO] [stdout] 599 | |         #[doc=
[INFO] [stdout] 600 | |             "Returns an iterator over the words of `self`, separated on \
[INFO] [stdout] 601 | |             [UAX#29 word boundaries]\
[INFO] [stdout] ...   |
[INFO] [stdout] 619 | |         impl split_word_bounds for Node {}
[INFO] [stdout] 620 | |     }
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `unstable_iters` which comes from the expansion of the macro `unicode_seg_iters` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:161:49
[INFO] [stdout]     |
[INFO] [stdout] 161 |            pub fn $name$(<$lf>)*(&'a $sel) -> Box<Iterator<Item=$ty> + 'a> {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/internals/mod.rs:598:5
[INFO] [stdout]     |
[INFO] [stdout] 598 | /     unicode_seg_iters! {
[INFO] [stdout] 599 | |         #[doc=
[INFO] [stdout] 600 | |             "Returns an iterator over the words of `self`, separated on \
[INFO] [stdout] 601 | |             [UAX#29 word boundaries]\
[INFO] [stdout] ...   |
[INFO] [stdout] 619 | |         impl split_word_bounds for Node {}
[INFO] [stdout] 620 | |     }
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `unstable_iters` which comes from the expansion of the macro `unicode_seg_iters` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:161:49
[INFO] [stdout]     |
[INFO] [stdout] 161 |            pub fn $name$(<$lf>)*(&'a $sel) -> Box<Iterator<Item=$ty> + 'a> {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 743 | /     unstable_iters! {
[INFO] [stdout] 744 | |         #[doc="Returns an iterator over all the strings in this `Rope`"]
[INFO] [stdout] 745 | |         #[inline]
[INFO] [stdout] 746 | |         pub fn strings<'a>(&'a self) -> impl Iterator<Item=&'a str> + 'a {
[INFO] [stdout] ...   |
[INFO] [stdout] 769 | |     }
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `unstable_iters` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:161:49
[INFO] [stdout]     |
[INFO] [stdout] 161 |            pub fn $name$(<$lf>)*(&'a $sel) -> Box<Iterator<Item=$ty> + 'a> {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 791 | /     str_iters! {
[INFO] [stdout] 792 | |         #[doc="Returns an iterator over all the bytes in this `Rope`.\n\
[INFO] [stdout] 793 | |                \nAs a Rope consists of a sequence of bytes, we can iterate \
[INFO] [stdout] 794 | |                through a rope by byte. This method returns such an iterator."]
[INFO] [stdout] ...   |
[INFO] [stdout] 812 | |     }
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `unstable_iters` which comes from the expansion of the macro `str_iters` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:161:49
[INFO] [stdout]     |
[INFO] [stdout] 161 |            pub fn $name$(<$lf>)*(&'a $sel) -> Box<Iterator<Item=$ty> + 'a> {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 791 | /     str_iters! {
[INFO] [stdout] 792 | |         #[doc="Returns an iterator over all the bytes in this `Rope`.\n\
[INFO] [stdout] 793 | |                \nAs a Rope consists of a sequence of bytes, we can iterate \
[INFO] [stdout] 794 | |                through a rope by byte. This method returns such an iterator."]
[INFO] [stdout] ...   |
[INFO] [stdout] 812 | |     }
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `unstable_iters` which comes from the expansion of the macro `str_iters` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:161:49
[INFO] [stdout]     |
[INFO] [stdout] 161 |            pub fn $name$(<$lf>)*(&'a $sel) -> Box<Iterator<Item=$ty> + 'a> {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 791 | /     str_iters! {
[INFO] [stdout] 792 | |         #[doc="Returns an iterator over all the bytes in this `Rope`.\n\
[INFO] [stdout] 793 | |                \nAs a Rope consists of a sequence of bytes, we can iterate \
[INFO] [stdout] 794 | |                through a rope by byte. This method returns such an iterator."]
[INFO] [stdout] ...   |
[INFO] [stdout] 812 | |     }
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `unstable_iters` which comes from the expansion of the macro `str_iters` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:161:49
[INFO] [stdout]     |
[INFO] [stdout] 161 |            pub fn $name$(<$lf>)*(&'a $sel) -> Box<Iterator<Item=$ty> + 'a> {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 791 | /     str_iters! {
[INFO] [stdout] 792 | |         #[doc="Returns an iterator over all the bytes in this `Rope`.\n\
[INFO] [stdout] 793 | |                \nAs a Rope consists of a sequence of bytes, we can iterate \
[INFO] [stdout] 794 | |                through a rope by byte. This method returns such an iterator."]
[INFO] [stdout] ...   |
[INFO] [stdout] 812 | |     }
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `unstable_iters` which comes from the expansion of the macro `str_iters` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:161:49
[INFO] [stdout]     |
[INFO] [stdout] 161 |            pub fn $name$(<$lf>)*(&'a $sel) -> Box<Iterator<Item=$ty> + 'a> {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 814 | /     unicode_seg_iters! {
[INFO] [stdout] 815 | |         #[doc=
[INFO] [stdout] 816 | |             "Returns an iterator over the [grapheme clusters][graphemes] of \
[INFO] [stdout] 817 | |              `self`.\n\
[INFO] [stdout] ...   |
[INFO] [stdout] 854 | |     }
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `unstable_iters` which comes from the expansion of the macro `unicode_seg_iters` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:161:49
[INFO] [stdout]     |
[INFO] [stdout] 161 |            pub fn $name$(<$lf>)*(&'a $sel) -> Box<Iterator<Item=$ty> + 'a> {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 814 | /     unicode_seg_iters! {
[INFO] [stdout] 815 | |         #[doc=
[INFO] [stdout] 816 | |             "Returns an iterator over the [grapheme clusters][graphemes] of \
[INFO] [stdout] 817 | |              `self`.\n\
[INFO] [stdout] ...   |
[INFO] [stdout] 854 | |     }
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `unstable_iters` which comes from the expansion of the macro `unicode_seg_iters` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:161:49
[INFO] [stdout]     |
[INFO] [stdout] 161 |            pub fn $name$(<$lf>)*(&'a $sel) -> Box<Iterator<Item=$ty> + 'a> {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 814 | /     unicode_seg_iters! {
[INFO] [stdout] 815 | |         #[doc=
[INFO] [stdout] 816 | |             "Returns an iterator over the [grapheme clusters][graphemes] of \
[INFO] [stdout] 817 | |              `self`.\n\
[INFO] [stdout] ...   |
[INFO] [stdout] 854 | |     }
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `unstable_iters` which comes from the expansion of the macro `unicode_seg_iters` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/lib.rs:762:46
[INFO] [stdout]     |
[INFO] [stdout] 762 | ...                   .scan(0, move |mut l, i|  {
[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: trait `Unicode` is never used
[INFO] [stdout]  --> src/unicode/mod.rs:7:11
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub trait Unicode<'a> {
[INFO] [stdout]   |           ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `nodes` is never used
[INFO] [stdout]    --> src/internals/mod.rs:446:8
[INFO] [stdout]     |
[INFO] [stdout] 317 | impl Node {
[INFO] [stdout]     | --------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 446 |     fn nodes(&self) -> Nodes {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Nodes` is never constructed
[INFO] [stdout]    --> src/internals/mod.rs:645:8
[INFO] [stdout]     |
[INFO] [stdout] 645 | struct Nodes<'a>(Vec<&'a Node>);
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:871:29
[INFO] [stdout]     |
[INFO] [stdout] 871 |     pub fn grapheme_indices(&self) -> internals::GraphemeIndices {
[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] 871 |     pub fn grapheme_indices(&self) -> internals::GraphemeIndices<'_> {
[INFO] [stdout]     |                                                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:893:37
[INFO] [stdout]     |
[INFO] [stdout] 893 |     pub fn split_word_bound_indices(&self) -> internals::UWordBoundIndices {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 893 |     pub fn split_word_bound_indices(&self) -> internals::UWordBoundIndices<'_> {
[INFO] [stdout]     |                                                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:940:18
[INFO] [stdout]     |
[INFO] [stdout] 940 |     pub fn slice(&self, range: ops::Range<usize>) -> RopeSlice {
[INFO] [stdout]     |                  ^^^^^ the lifetime is elided here   ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 940 |     pub fn slice(&self, range: ops::Range<usize>) -> RopeSlice<'_> {
[INFO] [stdout]     |                                                               ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/internals/mod.rs:446:14
[INFO] [stdout]     |
[INFO] [stdout] 446 |     fn nodes(&self) -> Nodes {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 446 |     fn nodes(&self) -> Nodes<'_> {
[INFO] [stdout]     |                             ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/internals/mod.rs:452:15
[INFO] [stdout]     |
[INFO] [stdout] 452 |     fn leaves(&self) -> Leaves {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 452 |     fn leaves(&self) -> Leaves<'_> {
[INFO] [stdout]     |                               ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/internals/mod.rs:622:29
[INFO] [stdout]     |
[INFO] [stdout] 622 |     pub fn grapheme_indices(&self) -> GraphemeIndices {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 622 |     pub fn grapheme_indices(&self) -> GraphemeIndices<'_> {
[INFO] [stdout]     |                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/internals/mod.rs:632:37
[INFO] [stdout]     |
[INFO] [stdout] 632 |     pub fn split_word_bound_indices(&self) -> UWordBoundIndices {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 632 |     pub fn split_word_bound_indices(&self) -> UWordBoundIndices<'_> {
[INFO] [stdout]     |                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking thread-id v2.0.0
[INFO] [stderr]     Checking memchr v0.1.11
[INFO] [stderr]     Checking rand v0.4.6
[INFO] [stderr]     Checking thread_local v0.2.7
[INFO] [stderr]     Checking aho-corasick v0.5.3
[INFO] [stderr]     Checking regex v0.1.80
[INFO] [stderr]     Checking rand v0.3.23
[INFO] [stderr]     Checking env_logger v0.3.5
[INFO] [stderr]     Checking quickcheck v0.3.2
[INFO] [stdout] warning: multiple lines skipped by escaped newline
[INFO] [stdout]    --> src/lib.rs:817:23
[INFO] [stdout]     |
[INFO] [stdout] 817 |                `self`.\n\
[INFO] [stdout]     |  _______________________^
[INFO] [stdout] 818 | |
[INFO] [stdout] 819 | |              [graphemes]: \
[INFO] [stdout]     | |_____________^ skipping everything up to and including this point
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple lines skipped by escaped newline
[INFO] [stdout]    --> src/lib.rs:832:72
[INFO] [stdout]     |
[INFO] [stdout] 832 |               (http://www.unicode.org/reports/tr29/#Word_Boundaries).\n\n\
[INFO] [stdout]     |  ________________________________________________________________________^
[INFO] [stdout] 833 | |
[INFO] [stdout] 834 | |             Here, \"words\" are just those substrings which, after splitting on\
[INFO] [stdout]     | |____________^ skipping everything up to and including this point
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple lines skipped by escaped newline
[INFO] [stdout]    --> src/internals/mod.rs:551:26
[INFO] [stdout]     |
[INFO] [stdout] 551 |                  subrope \n\
[INFO] [stdout]     |  __________________________^
[INFO] [stdout] 552 | |
[INFO] [stdout] 553 | |                \nAs a Rope consists of a sequence of bytes, we can iterate \
[INFO] [stdout]     | |_______________^ skipping everything up to and including this point
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple lines skipped by escaped newline
[INFO] [stdout]    --> src/internals/mod.rs:558:26
[INFO] [stdout]     |
[INFO] [stdout] 558 |                  subrope \n\
[INFO] [stdout]     |  __________________________^
[INFO] [stdout] 559 | |
[INFO] [stdout] 560 | |                \nAs a `Rope` consists of valid UTF-8, we can iterate through a \
[INFO] [stdout]     | |_______________^ skipping everything up to and including this point
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple lines skipped by escaped newline
[INFO] [stdout]    --> src/internals/mod.rs:561:74
[INFO] [stdout]     |
[INFO] [stdout] 561 |                  `Rope` by `char`. This method returns such an iterator. \n\
[INFO] [stdout]     |  __________________________________________________________________________^
[INFO] [stdout] 562 | |
[INFO] [stdout] 563 | |                \nIt's important to remember that `char` represents a Unicode \
[INFO] [stdout]     | |_______________^ skipping everything up to and including this point
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple lines skipped by escaped newline
[INFO] [stdout]    --> src/internals/mod.rs:585:23
[INFO] [stdout]     |
[INFO] [stdout] 585 |                `self`.\n\
[INFO] [stdout]     |  _______________________^
[INFO] [stdout] 586 | |
[INFO] [stdout] 587 | |              [graphemes]: \
[INFO] [stdout]     | |_____________^ skipping everything up to and including this point
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple lines skipped by escaped newline
[INFO] [stdout]    --> src/internals/mod.rs:602:72
[INFO] [stdout]     |
[INFO] [stdout] 602 |               (http://www.unicode.org/reports/tr29/#Word_Boundaries).\n\n\
[INFO] [stdout]     |  ________________________________________________________________________^
[INFO] [stdout] 603 | |
[INFO] [stdout] 604 | |             Here, \"words\" are just those substrings which, after splitting on\
[INFO] [stdout]     | |____________^ skipping everything up to and including this point
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `metric::Line`
[INFO] [stdout]  --> src/test/mod.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use metric::Line;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `metric::Measured`
[INFO] [stdout]  --> src/test/mod.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use metric::Measured;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around method argument
[INFO] [stdout]   --> src/test/mod.rs:61:18
[INFO] [stdout]    |
[INFO] [stdout] 61 |     r = r.delete((8..12));
[INFO] [stdout]    |                  ^     ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 61 -     r = r.delete((8..12));
[INFO] [stdout] 61 +     r = r.delete(8..12 );
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around method argument
[INFO] [stdout]   --> src/test/mod.rs:68:18
[INFO] [stdout]    |
[INFO] [stdout] 68 |     r = r.delete((0..0));
[INFO] [stdout]    |                  ^    ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 68 -     r = r.delete((0..0));
[INFO] [stdout] 68 +     r = r.delete(0..0 );
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around method argument
[INFO] [stdout]    --> src/test/mod.rs:117:14
[INFO] [stdout]     |
[INFO] [stdout] 117 |     r.delete((12..8)); // lol, fuck you
[INFO] [stdout]     |              ^     ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 117 -     r.delete((12..8)); // lol, fuck you
[INFO] [stdout] 117 +     r.delete(12..8 ); // lol, fuck you
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]    --> src/slice.rs:710:9
[INFO] [stdout]     |
[INFO] [stdout] 710 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused attribute
[INFO] [stdout]    --> src/test/mod.rs:114:1
[INFO] [stdout]     |
[INFO] [stdout] 114 | #[should_panic]
[INFO] [stdout]     | ^^^^^^^^^^^^^^^ help: remove this attribute
[INFO] [stdout]     |
[INFO] [stdout] note: attribute also specified here
[INFO] [stdout]    --> src/test/mod.rs:113:13
[INFO] [stdout]     |
[INFO] [stdout] 113 |           , should_panic(expected = "attempt to subtract with overflow"))]
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused attribute
[INFO] [stdout]    --> src/lib.rs:441:5
[INFO] [stdout]     |
[INFO] [stdout] 441 |     #[inline]
[INFO] [stdout]     |     ^^^^^^^^^ help: remove this attribute
[INFO] [stdout]     |
[INFO] [stdout] note: attribute also specified here
[INFO] [stdout]    --> src/lib.rs:440:5
[INFO] [stdout]     |
[INFO] [stdout] 440 |     #[inline]
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/internals/mod.rs:705:18
[INFO] [stdout]     |
[INFO] [stdout] 705 |     strings: Box<Iterator<Item = &'a str> + 'a >
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 705 |     strings: Box<dyn Iterator<Item = &'a str> + 'a >
[INFO] [stdout]     |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/internals/mod.rs:728:18
[INFO] [stdout]     |
[INFO] [stdout] 728 |     strings: Box<Iterator<Item = &'a str> + 'a >
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 728 |     strings: Box<dyn Iterator<Item = &'a str> + 'a >
[INFO] [stdout]     |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:161:49
[INFO] [stdout]     |
[INFO] [stdout] 161 |            pub fn $name$(<$lf>)*(&'a $sel) -> Box<Iterator<Item=$ty> + 'a> {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/slice.rs:410:5
[INFO] [stdout]     |
[INFO] [stdout] 410 | /     unstable_iters! {
[INFO] [stdout] 411 | |         #[inline]
[INFO] [stdout] 412 | |         pub fn chars(&'a self) -> impl Iterator<Item=char> + 'a  {
[INFO] [stdout] 413 | |             self.slice_char_iter(self.node.chars())
[INFO] [stdout] ...   |
[INFO] [stdout] 427 | |     }
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `unstable_iters` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/slice.rs:520:53
[INFO] [stdout]     |
[INFO] [stdout] 520 |     fn slice_char_iter<I, T>(&'a self, i: I) -> Box<Iterator<Item=T> + 'a>
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 520 |     fn slice_char_iter<I, T>(&'a self, i: I) -> Box<dyn Iterator<Item=T> + 'a>
[INFO] [stdout]     |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/slice.rs:529:53
[INFO] [stdout]     |
[INFO] [stdout] 529 |     fn slice_strings_iter<I>(&'a self, i: I) -> Box<Iterator<Item=&'a str> + 'a>
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 529 |     fn slice_strings_iter<I>(&'a self, i: I) -> Box<dyn Iterator<Item=&'a str> + 'a>
[INFO] [stdout]     |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:161:49
[INFO] [stdout]     |
[INFO] [stdout] 161 |            pub fn $name$(<$lf>)*(&'a $sel) -> Box<Iterator<Item=$ty> + 'a> {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/internals/mod.rs:462:5
[INFO] [stdout]     |
[INFO] [stdout] 462 | /     unstable_iters! {
[INFO] [stdout] 463 | |         #[doc=
[INFO] [stdout] 464 | |             "Returns an iterator over all the strings in this `Node`s subrope."]
[INFO] [stdout] 465 | |         #[inline]
[INFO] [stdout] ...   |
[INFO] [stdout] 480 | |     }
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `unstable_iters` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:161:49
[INFO] [stdout]     |
[INFO] [stdout] 161 |            pub fn $name$(<$lf>)*(&'a $sel) -> Box<Iterator<Item=$ty> + 'a> {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/internals/mod.rs:549:5
[INFO] [stdout]     |
[INFO] [stdout] 549 | /     str_iters! {
[INFO] [stdout] 550 | |         #[doc="Returns an iterator over all the bytes in this `Node`'s \
[INFO] [stdout] 551 | |                subrope \n\
[INFO] [stdout] ...   |
[INFO] [stdout] 571 | |         impl split_whitespace<&'a str> for Node {}
[INFO] [stdout] 572 | |     }
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `unstable_iters` which comes from the expansion of the macro `str_iters` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:161:49
[INFO] [stdout]     |
[INFO] [stdout] 161 |            pub fn $name$(<$lf>)*(&'a $sel) -> Box<Iterator<Item=$ty> + 'a> {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/internals/mod.rs:549:5
[INFO] [stdout]     |
[INFO] [stdout] 549 | /     str_iters! {
[INFO] [stdout] 550 | |         #[doc="Returns an iterator over all the bytes in this `Node`'s \
[INFO] [stdout] 551 | |                subrope \n\
[INFO] [stdout] ...   |
[INFO] [stdout] 571 | |         impl split_whitespace<&'a str> for Node {}
[INFO] [stdout] 572 | |     }
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `unstable_iters` which comes from the expansion of the macro `str_iters` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:161:49
[INFO] [stdout]     |
[INFO] [stdout] 161 |            pub fn $name$(<$lf>)*(&'a $sel) -> Box<Iterator<Item=$ty> + 'a> {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/internals/mod.rs:549:5
[INFO] [stdout]     |
[INFO] [stdout] 549 | /     str_iters! {
[INFO] [stdout] 550 | |         #[doc="Returns an iterator over all the bytes in this `Node`'s \
[INFO] [stdout] 551 | |                subrope \n\
[INFO] [stdout] ...   |
[INFO] [stdout] 571 | |         impl split_whitespace<&'a str> for Node {}
[INFO] [stdout] 572 | |     }
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `unstable_iters` which comes from the expansion of the macro `str_iters` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:161:49
[INFO] [stdout]     |
[INFO] [stdout] 161 |            pub fn $name$(<$lf>)*(&'a $sel) -> Box<Iterator<Item=$ty> + 'a> {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/internals/mod.rs:582:5
[INFO] [stdout]     |
[INFO] [stdout] 582 | /     unicode_seg_iters! {
[INFO] [stdout] 583 | |         #[doc=
[INFO] [stdout] 584 | |             "Returns an iterator over the [grapheme clusters][graphemes] of \
[INFO] [stdout] 585 | |              `self`.\n\
[INFO] [stdout] ...   |
[INFO] [stdout] 596 | |         impl graphemes for Node { extend }
[INFO] [stdout] 597 | |     }
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `unstable_iters` which comes from the expansion of the macro `unicode_seg_iters` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:161:49
[INFO] [stdout]     |
[INFO] [stdout] 161 |            pub fn $name$(<$lf>)*(&'a $sel) -> Box<Iterator<Item=$ty> + 'a> {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/internals/mod.rs:598:5
[INFO] [stdout]     |
[INFO] [stdout] 598 | /     unicode_seg_iters! {
[INFO] [stdout] 599 | |         #[doc=
[INFO] [stdout] 600 | |             "Returns an iterator over the words of `self`, separated on \
[INFO] [stdout] 601 | |             [UAX#29 word boundaries]\
[INFO] [stdout] ...   |
[INFO] [stdout] 619 | |         impl split_word_bounds for Node {}
[INFO] [stdout] 620 | |     }
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `unstable_iters` which comes from the expansion of the macro `unicode_seg_iters` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:161:49
[INFO] [stdout]     |
[INFO] [stdout] 161 |            pub fn $name$(<$lf>)*(&'a $sel) -> Box<Iterator<Item=$ty> + 'a> {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/internals/mod.rs:598:5
[INFO] [stdout]     |
[INFO] [stdout] 598 | /     unicode_seg_iters! {
[INFO] [stdout] 599 | |         #[doc=
[INFO] [stdout] 600 | |             "Returns an iterator over the words of `self`, separated on \
[INFO] [stdout] 601 | |             [UAX#29 word boundaries]\
[INFO] [stdout] ...   |
[INFO] [stdout] 619 | |         impl split_word_bounds for Node {}
[INFO] [stdout] 620 | |     }
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `unstable_iters` which comes from the expansion of the macro `unicode_seg_iters` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:161:49
[INFO] [stdout]     |
[INFO] [stdout] 161 |            pub fn $name$(<$lf>)*(&'a $sel) -> Box<Iterator<Item=$ty> + 'a> {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 743 | /     unstable_iters! {
[INFO] [stdout] 744 | |         #[doc="Returns an iterator over all the strings in this `Rope`"]
[INFO] [stdout] 745 | |         #[inline]
[INFO] [stdout] 746 | |         pub fn strings<'a>(&'a self) -> impl Iterator<Item=&'a str> + 'a {
[INFO] [stdout] ...   |
[INFO] [stdout] 769 | |     }
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `unstable_iters` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:161:49
[INFO] [stdout]     |
[INFO] [stdout] 161 |            pub fn $name$(<$lf>)*(&'a $sel) -> Box<Iterator<Item=$ty> + 'a> {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 791 | /     str_iters! {
[INFO] [stdout] 792 | |         #[doc="Returns an iterator over all the bytes in this `Rope`.\n\
[INFO] [stdout] 793 | |                \nAs a Rope consists of a sequence of bytes, we can iterate \
[INFO] [stdout] 794 | |                through a rope by byte. This method returns such an iterator."]
[INFO] [stdout] ...   |
[INFO] [stdout] 812 | |     }
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `unstable_iters` which comes from the expansion of the macro `str_iters` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:161:49
[INFO] [stdout]     |
[INFO] [stdout] 161 |            pub fn $name$(<$lf>)*(&'a $sel) -> Box<Iterator<Item=$ty> + 'a> {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 791 | /     str_iters! {
[INFO] [stdout] 792 | |         #[doc="Returns an iterator over all the bytes in this `Rope`.\n\
[INFO] [stdout] 793 | |                \nAs a Rope consists of a sequence of bytes, we can iterate \
[INFO] [stdout] 794 | |                through a rope by byte. This method returns such an iterator."]
[INFO] [stdout] ...   |
[INFO] [stdout] 812 | |     }
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `unstable_iters` which comes from the expansion of the macro `str_iters` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:161:49
[INFO] [stdout]     |
[INFO] [stdout] 161 |            pub fn $name$(<$lf>)*(&'a $sel) -> Box<Iterator<Item=$ty> + 'a> {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 791 | /     str_iters! {
[INFO] [stdout] 792 | |         #[doc="Returns an iterator over all the bytes in this `Rope`.\n\
[INFO] [stdout] 793 | |                \nAs a Rope consists of a sequence of bytes, we can iterate \
[INFO] [stdout] 794 | |                through a rope by byte. This method returns such an iterator."]
[INFO] [stdout] ...   |
[INFO] [stdout] 812 | |     }
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `unstable_iters` which comes from the expansion of the macro `str_iters` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:161:49
[INFO] [stdout]     |
[INFO] [stdout] 161 |            pub fn $name$(<$lf>)*(&'a $sel) -> Box<Iterator<Item=$ty> + 'a> {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 791 | /     str_iters! {
[INFO] [stdout] 792 | |         #[doc="Returns an iterator over all the bytes in this `Rope`.\n\
[INFO] [stdout] 793 | |                \nAs a Rope consists of a sequence of bytes, we can iterate \
[INFO] [stdout] 794 | |                through a rope by byte. This method returns such an iterator."]
[INFO] [stdout] ...   |
[INFO] [stdout] 812 | |     }
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `unstable_iters` which comes from the expansion of the macro `str_iters` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:161:49
[INFO] [stdout]     |
[INFO] [stdout] 161 |            pub fn $name$(<$lf>)*(&'a $sel) -> Box<Iterator<Item=$ty> + 'a> {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 814 | /     unicode_seg_iters! {
[INFO] [stdout] 815 | |         #[doc=
[INFO] [stdout] 816 | |             "Returns an iterator over the [grapheme clusters][graphemes] of \
[INFO] [stdout] 817 | |              `self`.\n\
[INFO] [stdout] ...   |
[INFO] [stdout] 854 | |     }
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `unstable_iters` which comes from the expansion of the macro `unicode_seg_iters` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:161:49
[INFO] [stdout]     |
[INFO] [stdout] 161 |            pub fn $name$(<$lf>)*(&'a $sel) -> Box<Iterator<Item=$ty> + 'a> {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 814 | /     unicode_seg_iters! {
[INFO] [stdout] 815 | |         #[doc=
[INFO] [stdout] 816 | |             "Returns an iterator over the [grapheme clusters][graphemes] of \
[INFO] [stdout] 817 | |              `self`.\n\
[INFO] [stdout] ...   |
[INFO] [stdout] 854 | |     }
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `unstable_iters` which comes from the expansion of the macro `unicode_seg_iters` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:161:49
[INFO] [stdout]     |
[INFO] [stdout] 161 |            pub fn $name$(<$lf>)*(&'a $sel) -> Box<Iterator<Item=$ty> + 'a> {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 814 | /     unicode_seg_iters! {
[INFO] [stdout] 815 | |         #[doc=
[INFO] [stdout] 816 | |             "Returns an iterator over the [grapheme clusters][graphemes] of \
[INFO] [stdout] 817 | |              `self`.\n\
[INFO] [stdout] ...   |
[INFO] [stdout] 854 | |     }
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `unstable_iters` which comes from the expansion of the macro `unicode_seg_iters` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/test/mod.rs:28:9
[INFO] [stdout]    |
[INFO] [stdout] 28 |     let mut rope = Rope::from("this is\n\
[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: variable does not need to be mutable
[INFO] [stdout]   --> src/test/mod.rs:44:9
[INFO] [stdout]    |
[INFO] [stdout] 44 |     let mut rope = Rope::from("this is\n\
[INFO] [stdout]    |         ----^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/test/mod.rs:116:9
[INFO] [stdout]     |
[INFO] [stdout] 116 |     let mut r = Rope::from("this is not fine");
[INFO] [stdout]     |         ----^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/test/mod.rs:476:17
[INFO] [stdout]     |
[INFO] [stdout] 476 |             let mut rope = Rope::from(a.clone());
[INFO] [stdout]     |                 ----^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `left`
[INFO] [stdout]   --> src/internals/test.rs:49:10
[INFO] [stdout]    |
[INFO] [stdout] 49 |     let (left, right) = b.split(Line(1));
[INFO] [stdout]    |          ^^^^ help: if this is intentional, prefix it with an underscore: `_left`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `right`
[INFO] [stdout]   --> src/internals/test.rs:49:16
[INFO] [stdout]    |
[INFO] [stdout] 49 |     let (left, right) = b.split(Line(1));
[INFO] [stdout]    |                ^^^^^ help: if this is intentional, prefix it with an underscore: `_right`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/lib.rs:762:46
[INFO] [stdout]     |
[INFO] [stdout] 762 | ...                   .scan(0, move |mut l, i|  {
[INFO] [stdout]     |                                      ----^
[INFO] [stdout]     |                                      |
[INFO] [stdout]     |                                      help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `line_delete_test_1` is never used
[INFO] [stdout]   --> src/test/mod.rs:26:4
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn line_delete_test_1() {
[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 `line_delete_test_2` is never used
[INFO] [stdout]   --> src/test/mod.rs:42:4
[INFO] [stdout]    |
[INFO] [stdout] 42 | fn line_delete_test_2() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `debug_test_1` is never used
[INFO] [stdout]    --> src/test/mod.rs:125:8
[INFO] [stdout]     |
[INFO] [stdout] 125 |     fn debug_test_1() {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `debug_test_2` is never used
[INFO] [stdout]    --> src/test/mod.rs:131:8
[INFO] [stdout]     |
[INFO] [stdout] 131 |     fn debug_test_2() {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `debug_test_3` is never used
[INFO] [stdout]    --> src/test/mod.rs:137:8
[INFO] [stdout]     |
[INFO] [stdout] 137 |     fn debug_test_3() {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `rope_indexing_is_string_indexing` is never used
[INFO] [stdout]    --> src/test/mod.rs:446:8
[INFO] [stdout]     |
[INFO] [stdout] 446 |     fn rope_indexing_is_string_indexing() {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `rope_insert_char_is_string_insert_char` is never used
[INFO] [stdout]    --> src/test/mod.rs:462:8
[INFO] [stdout]     |
[INFO] [stdout] 462 |     fn rope_insert_char_is_string_insert_char() {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Unicode` is never used
[INFO] [stdout]  --> src/unicode/mod.rs:7:11
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub trait Unicode<'a> {
[INFO] [stdout]   |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TEST_WORD` is never used
[INFO] [stdout]    --> src/unicode/test/testdata.rs:520:15
[INFO] [stdout]     |
[INFO] [stdout] 520 |     pub const TEST_WORD: &'static [(&'static str, &'static [&'static str])] = &[
[INFO] [stdout]     |               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `nodes` is never used
[INFO] [stdout]    --> src/internals/mod.rs:446:8
[INFO] [stdout]     |
[INFO] [stdout] 317 | impl Node {
[INFO] [stdout]     | --------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 446 |     fn nodes(&self) -> Nodes {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Nodes` is never constructed
[INFO] [stdout]    --> src/internals/mod.rs:645:8
[INFO] [stdout]     |
[INFO] [stdout] 645 | struct Nodes<'a>(Vec<&'a Node>);
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:871:29
[INFO] [stdout]     |
[INFO] [stdout] 871 |     pub fn grapheme_indices(&self) -> internals::GraphemeIndices {
[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] 871 |     pub fn grapheme_indices(&self) -> internals::GraphemeIndices<'_> {
[INFO] [stdout]     |                                                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:893:37
[INFO] [stdout]     |
[INFO] [stdout] 893 |     pub fn split_word_bound_indices(&self) -> internals::UWordBoundIndices {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 893 |     pub fn split_word_bound_indices(&self) -> internals::UWordBoundIndices<'_> {
[INFO] [stdout]     |                                                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:940:18
[INFO] [stdout]     |
[INFO] [stdout] 940 |     pub fn slice(&self, range: ops::Range<usize>) -> RopeSlice {
[INFO] [stdout]     |                  ^^^^^ the lifetime is elided here   ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 940 |     pub fn slice(&self, range: ops::Range<usize>) -> RopeSlice<'_> {
[INFO] [stdout]     |                                                               ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: module `FromIterator` should have a snake case name
[INFO] [stdout]    --> src/test/mod.rs:614:9
[INFO] [stdout]     |
[INFO] [stdout] 614 |     mod FromIterator {
[INFO] [stdout]     |         ^^^^^^^^^^^^ help: convert the identifier to snake case: `from_iterator`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/internals/mod.rs:446:14
[INFO] [stdout]     |
[INFO] [stdout] 446 |     fn nodes(&self) -> Nodes {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 446 |     fn nodes(&self) -> Nodes<'_> {
[INFO] [stdout]     |                             ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/internals/mod.rs:452:15
[INFO] [stdout]     |
[INFO] [stdout] 452 |     fn leaves(&self) -> Leaves {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 452 |     fn leaves(&self) -> Leaves<'_> {
[INFO] [stdout]     |                               ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/internals/mod.rs:622:29
[INFO] [stdout]     |
[INFO] [stdout] 622 |     pub fn grapheme_indices(&self) -> GraphemeIndices {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 622 |     pub fn grapheme_indices(&self) -> GraphemeIndices<'_> {
[INFO] [stdout]     |                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/internals/mod.rs:632:37
[INFO] [stdout]     |
[INFO] [stdout] 632 |     pub fn split_word_bound_indices(&self) -> UWordBoundIndices {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 632 |     pub fn split_word_bound_indices(&self) -> UWordBoundIndices<'_> {
[INFO] [stdout]     |                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 5.63s
[INFO] running `Command { std: "docker" "inspect" "052005c770ac9d06014c034a7dc32e2ed019a78204704868f21236d3f8ec396a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "052005c770ac9d06014c034a7dc32e2ed019a78204704868f21236d3f8ec396a", kill_on_drop: false }`
[INFO] [stdout] 052005c770ac9d06014c034a7dc32e2ed019a78204704868f21236d3f8ec396a
