[INFO] cloning repository https://github.com/JeffDownie/computed_map
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/JeffDownie/computed_map" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJeffDownie%2Fcomputed_map", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJeffDownie%2Fcomputed_map'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] b783253fc40e02df3bcb5c570bd72d0068419cce
[INFO] checking JeffDownie/computed_map against 1.95.0 for pr-155915
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJeffDownie%2Fcomputed_map" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/JeffDownie/computed_map
[INFO] finished tweaking git repo https://github.com/JeffDownie/computed_map
[INFO] tweaked toml for git repo https://github.com/JeffDownie/computed_map written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/JeffDownie/computed_map on toolchain 1.95.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/JeffDownie/computed_map already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded autocfg v0.1.8
[INFO] [stderr]   Downloaded utf8-ranges v1.0.5
[INFO] [stderr]   Downloaded dirs v1.0.5
[INFO] [stderr]   Downloaded log v0.3.9
[INFO] [stderr]   Downloaded clippy v0.0.302
[INFO] [stderr]   Downloaded thread_local v0.3.6
[INFO] [stderr]   Downloaded syntex_pos v0.59.1
[INFO] [stderr]   Downloaded syntex_errors v0.59.1
[INFO] [stderr]   Downloaded env_logger v0.4.3
[INFO] [stderr]   Downloaded strings v0.1.1
[INFO] [stderr]   Downloaded rand_pcg v0.1.2
[INFO] [stderr]   Downloaded bitflags v0.9.1
[INFO] [stderr]   Downloaded convert_case v0.8.0
[INFO] [stderr]   Downloaded extprim v1.7.1
[INFO] [stderr]   Downloaded term v0.5.2
[INFO] [stderr]   Downloaded ucd-util v0.1.10
[INFO] [stderr]   Downloaded rand_os v0.1.3
[INFO] [stderr]   Downloaded rand_jitter v0.1.4
[INFO] [stderr]   Downloaded term v0.4.6
[INFO] [stderr]   Downloaded getopts v0.2.23
[INFO] [stderr]   Downloaded rustfmt v0.10.0
[INFO] [stderr]   Downloaded rand v0.6.5
[INFO] [stderr]   Downloaded aho-corasick v0.6.10
[INFO] [stderr]   Downloaded toml v0.4.10
[INFO] [stderr]   Downloaded regex v0.2.11
[INFO] [stderr]   Downloaded syntex_syntax v0.59.1
[INFO] [stderr]   Downloaded regex-syntax v0.5.6
[INFO] [stderr]   Downloaded syn v2.0.102
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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" "+1.95.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] f5f416cb91d251c05721fad8ae261492ff496535f32cbfaecb27950d897e87c6
[INFO] running `Command { std: "docker" "start" "-a" "f5f416cb91d251c05721fad8ae261492ff496535f32cbfaecb27950d897e87c6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "f5f416cb91d251c05721fad8ae261492ff496535f32cbfaecb27950d897e87c6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f5f416cb91d251c05721fad8ae261492ff496535f32cbfaecb27950d897e87c6", kill_on_drop: false }`
[INFO] [stdout] f5f416cb91d251c05721fad8ae261492ff496535f32cbfaecb27950d897e87c6
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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" "+1.95.0" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] d1a25c593896d1054dbe755c80fe10e9b30bc56015eed21fbac85ca293771086
[INFO] running `Command { std: "docker" "start" "-a" "d1a25c593896d1054dbe755c80fe10e9b30bc56015eed21fbac85ca293771086", kill_on_drop: false }`
[INFO] [stderr] warning: computed_map v0.1.0 (/opt/rustwide/workdir) ignoring invalid dependency `clippy` which is missing a lib target
[INFO] [stderr]    Compiling proc-macro2 v1.0.95
[INFO] [stderr]    Compiling autocfg v1.4.0
[INFO] [stderr]     Checking rand_core v0.4.2
[INFO] [stderr]    Compiling serde v1.0.219
[INFO] [stderr]    Compiling libc v0.2.172
[INFO] [stderr]    Compiling semver-parser v0.7.0
[INFO] [stderr]     Checking memchr v2.7.5
[INFO] [stderr]     Checking log v0.4.27
[INFO] [stderr]     Checking rand_core v0.3.1
[INFO] [stderr]     Checking log v0.3.9
[INFO] [stderr]     Checking rand_jitter v0.1.4
[INFO] [stderr]     Checking rand_isaac v0.1.1
[INFO] [stderr]    Compiling semver v0.9.0
[INFO] [stderr]    Compiling autocfg v0.1.8
[INFO] [stderr]     Checking rand_hc v0.1.0
[INFO] [stderr]     Checking rand_xorshift v0.1.1
[INFO] [stderr]    Compiling regex v0.2.11
[INFO] [stderr]     Checking ucd-util v0.1.10
[INFO] [stderr]     Checking unicode-ident v1.0.18
[INFO] [stderr]    Compiling rustc_version v0.2.3
[INFO] [stderr]    Compiling rand_chacha v0.1.1
[INFO] [stderr]    Compiling rand_pcg v0.1.2
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling rand v0.6.5
[INFO] [stderr]     Checking thread_local v0.3.6
[INFO] [stderr]    Compiling extprim v1.7.1
[INFO] [stderr]     Checking aho-corasick v0.6.10
[INFO] [stderr]     Checking regex-syntax v0.5.6
[INFO] [stderr]     Checking utf8-ranges v1.0.5
[INFO] [stderr]     Checking unicode-xid v0.1.0
[INFO] [stderr]     Checking term v0.4.6
[INFO] [stderr]    Compiling quote v1.0.40
[INFO] [stderr]     Checking bitflags v0.9.1
[INFO] [stderr]     Checking unicode-width v0.2.1
[INFO] [stderr]     Checking rand_os v0.1.3
[INFO] [stderr]    Compiling syn v2.0.102
[INFO] [stderr]    Compiling rustfmt v0.10.0
[INFO] [stderr]     Checking getopts v0.2.23
[INFO] [stderr]     Checking convert_case v0.8.0
[INFO] [stderr]     Checking strings v0.1.1
[INFO] [stderr]     Checking diff v0.1.13
[INFO] [stderr]     Checking env_logger v0.4.3
[INFO] [stderr]     Checking computed_map v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling serde_derive v1.0.219
[INFO] [stderr]     Checking syntex_pos v0.59.1
[INFO] [stderr]     Checking serde_json v1.0.140
[INFO] [stderr]     Checking toml v0.4.10
[INFO] [stderr]     Checking syntex_errors v0.59.1
[INFO] [stderr]     Checking syntex_syntax v0.59.1
[INFO] [stdout] pub mod test_table
[INFO] [stdout] {
[INFO] [stdout]     #[derive(Debug)] pub enum ReadableTableState {} #[derive(Debug)] pub enum
[INFO] [stdout]     WritableTableState {} pub trait TableStatus {} impl TableStatus for
[INFO] [stdout]     ReadableTableState {} impl TableStatus for WritableTableState {}
[INFO] [stdout] } #[derive(Debug, PartialEq, Clone)] struct MappedValuesStructTestTable {}
[INFO] [stdout] #[derive(Default, Debug)] struct MappingIndexesTestTable {} impl
[INFO] [stdout] MappingIndexesTestTable { fn new() -> Self { Self {} } }
[INFO] [stdout] #[derive(Default, Debug)] struct TestTable < S : test_table :: TableStatus >
[INFO] [stdout] {
[INFO] [stdout]     table : std :: collections :: BTreeMap < u64,
[INFO] [stdout]     (u64, MappedValuesStructTestTable) > , mapping_indexes :
[INFO] [stdout]     MappingIndexesTestTable, state : std :: marker :: PhantomData < S >
[INFO] [stdout] } impl TestTable < test_table :: ReadableTableState >
[INFO] [stdout] {
[INFO] [stdout]     fn new() -> Self
[INFO] [stdout]     {
[INFO] [stdout]         Self
[INFO] [stdout]         {
[INFO] [stdout]             table : std :: collections :: BTreeMap :: new(), mapping_indexes :
[INFO] [stdout]             MappingIndexesTestTable :: new(), state : std :: marker ::
[INFO] [stdout]             PhantomData
[INFO] [stdout]         }
[INFO] [stdout]     } fn lock(mut self) -> TestTable < test_table :: WritableTableState >
[INFO] [stdout]     {
[INFO] [stdout]         TestTable
[INFO] [stdout]         {
[INFO] [stdout]             table : self.table, mapping_indexes : self.mapping_indexes, state
[INFO] [stdout]             : std :: marker :: PhantomData :: < test_table ::
[INFO] [stdout]             WritableTableState >
[INFO] [stdout]         }
[INFO] [stdout]     } fn get(& self, key : & u64) -> Option < &
[INFO] [stdout]     (u64, MappedValuesStructTestTable) > { self.table.get(key) } fn
[INFO] [stdout]     iter(& self) -> std :: collections :: btree_map :: Iter < u64,
[INFO] [stdout]     (u64, MappedValuesStructTestTable) > { self.table.iter() } fn len(& self)
[INFO] [stdout]     -> usize { self.table.len() }
[INFO] [stdout] } impl TestTable < test_table :: WritableTableState >
[INFO] [stdout] {
[INFO] [stdout]     fn unlock(mut self) -> TestTable < test_table :: ReadableTableState >
[INFO] [stdout]     {
[INFO] [stdout]         TestTable
[INFO] [stdout]         {
[INFO] [stdout]             table : self.table, mapping_indexes : self.mapping_indexes, state
[INFO] [stdout]             : std :: marker :: PhantomData :: < test_table ::
[INFO] [stdout]             ReadableTableState >
[INFO] [stdout]         }
[INFO] [stdout]     } fn insert(& mut self, key : u64, value : u64) -> Option <
[INFO] [stdout]     (u64, MappedValuesStructTestTable) >
[INFO] [stdout]     {
[INFO] [stdout]         let new_mapped_values = MappedValuesStructTestTable {}; let
[INFO] [stdout]         maybe_old_value =
[INFO] [stdout]         self.table.insert(key, (value, new_mapped_values.clone())); if let
[INFO] [stdout]         Some((_, old_mapped_values)) = maybe_old_value.clone() {}
[INFO] [stdout]         maybe_old_value
[INFO] [stdout]     } fn remove(& mut self, key : & u64) -> Option <
[INFO] [stdout]     (u64, MappedValuesStructTestTable) >
[INFO] [stdout]     {
[INFO] [stdout]         let maybe_old_value = self.table.remove(key); if let
[INFO] [stdout]         Some((_, old_mapped_values)) = maybe_old_value.clone() {}
[INFO] [stdout]         maybe_old_value
[INFO] [stdout]     }
[INFO] [stdout] }
[INFO] [stdout] pub mod test_table
[INFO] [stdout] {
[INFO] [stdout]     #[derive(Debug)] pub enum ReadableTableState {} #[derive(Debug)] pub enum
[INFO] [stdout]     WritableTableState {} pub trait TableStatus {} impl TableStatus for
[INFO] [stdout]     ReadableTableState {} impl TableStatus for WritableTableState {}
[INFO] [stdout] } #[derive(Debug, PartialEq, Clone)] struct MappedValuesStructTestTable
[INFO] [stdout] { plus_one : u64 } #[derive(Default, Debug)] struct MappingIndexesTestTable
[INFO] [stdout] {
[INFO] [stdout]     plus_one : std :: collections :: BTreeMap < u64, std :: collections ::
[INFO] [stdout]     BTreeSet < u64 >>
[INFO] [stdout] } impl MappingIndexesTestTable
[INFO] [stdout] {
[INFO] [stdout]     fn new() -> Self
[INFO] [stdout]     { Self { plus_one : std :: collections :: BTreeMap :: new() } }
[INFO] [stdout] } #[derive(Default, Debug)] struct TestTable < S : test_table :: TableStatus >
[INFO] [stdout] {
[INFO] [stdout]     table : std :: collections :: BTreeMap < u64,
[INFO] [stdout]     (u64, MappedValuesStructTestTable) > , mapping_indexes :
[INFO] [stdout]     MappingIndexesTestTable, state : std :: marker :: PhantomData < S >
[INFO] [stdout] } impl TestTable < test_table :: ReadableTableState >
[INFO] [stdout] {
[INFO] [stdout]     fn new() -> Self
[INFO] [stdout]     {
[INFO] [stdout]         Self
[INFO] [stdout]         {
[INFO] [stdout]             table : std :: collections :: BTreeMap :: new(), mapping_indexes :
[INFO] [stdout]             MappingIndexesTestTable :: new(), state : std :: marker ::
[INFO] [stdout]             PhantomData
[INFO] [stdout]         }
[INFO] [stdout]     } fn lock(mut self) -> TestTable < test_table :: WritableTableState >
[INFO] [stdout]     {
[INFO] [stdout]         TestTable
[INFO] [stdout]         {
[INFO] [stdout]             table : self.table, mapping_indexes : self.mapping_indexes, state
[INFO] [stdout]             : std :: marker :: PhantomData :: < test_table ::
[INFO] [stdout]             WritableTableState >
[INFO] [stdout]         }
[INFO] [stdout]     } fn get(& self, key : & u64) -> Option < &
[INFO] [stdout]     (u64, MappedValuesStructTestTable) > { self.table.get(key) } fn
[INFO] [stdout]     iter(& self) -> std :: collections :: btree_map :: Iter < u64,
[INFO] [stdout]     (u64, MappedValuesStructTestTable) > { self.table.iter() } fn len(& self)
[INFO] [stdout]     -> usize { self.table.len() } fn get_plus_one(& self, mapped_key : & u64)
[INFO] [stdout]     -> Option < & std :: collections :: BTreeSet < u64 >>
[INFO] [stdout]     { self.mapping_indexes.plus_one.get(mapped_key) } fn iter_plus_one(& self)
[INFO] [stdout]     -> std :: collections :: btree_map :: Iter < u64, std :: collections ::
[INFO] [stdout]     BTreeSet < u64 >> { self.mapping_indexes.plus_one.iter() }
[INFO] [stdout] } impl TestTable < test_table :: WritableTableState >
[INFO] [stdout] {
[INFO] [stdout]     fn unlock(mut self) -> TestTable < test_table :: ReadableTableState >
[INFO] [stdout]     {
[INFO] [stdout]         TestTable
[INFO] [stdout]         {
[INFO] [stdout]             table : self.table, mapping_indexes : self.mapping_indexes, state
[INFO] [stdout]             : std :: marker :: PhantomData :: < test_table ::
[INFO] [stdout]             ReadableTableState >
[INFO] [stdout]         }
[INFO] [stdout]     } fn insert(& mut self, key : u64, value : u64) -> Option <
[INFO] [stdout]     (u64, MappedValuesStructTestTable) >
[INFO] [stdout]     {
[INFO] [stdout]         let new_mapped_values = MappedValuesStructTestTable
[INFO] [stdout]         { plus_one : (| x : u64 | -> u64 { x + 1 }) (value.clone()) }; let
[INFO] [stdout]         maybe_old_value =
[INFO] [stdout]         self.table.insert(key, (value, new_mapped_values.clone())); if let
[INFO] [stdout]         Some((_, old_mapped_values)) = maybe_old_value.clone()
[INFO] [stdout]         {
[INFO] [stdout]             self.mapping_indexes.plus_one.entry(old_mapped_values.plus_one.clone()).and_modify(|
[INFO] [stdout]             value | { value.remove(& key); });
[INFO] [stdout]         }
[INFO] [stdout]         self.mapping_indexes.plus_one.entry(new_mapped_values.plus_one.clone()).and_modify(|
[INFO] [stdout]         value |
[INFO] [stdout]         {
[INFO] [stdout]             value.insert(key);
[INFO] [stdout]         }).or_insert_with(||
[INFO] [stdout]         {
[INFO] [stdout]             let mut new_set = std :: collections :: BTreeSet :: new();
[INFO] [stdout]             new_set.insert(key); new_set
[INFO] [stdout]         }); maybe_old_value
[INFO] [stdout]     } fn remove(& mut self, key : & u64) -> Option <
[INFO] [stdout]     (u64, MappedValuesStructTestTable) >
[INFO] [stdout]     {
[INFO] [stdout]         let maybe_old_value = self.table.remove(key); if let
[INFO] [stdout]         Some((_, old_mapped_values)) = maybe_old_value.clone()
[INFO] [stdout]         {
[INFO] [stdout]             self.mapping_indexes.plus_one.entry(old_mapped_values.plus_one.clone()).and_modify(|
[INFO] [stdout]             value | { value.remove(& key); });
[INFO] [stdout]         } maybe_old_value
[INFO] [stdout]     }
[INFO] [stdout] }
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 36.06s
[INFO] running `Command { std: "docker" "inspect" "d1a25c593896d1054dbe755c80fe10e9b30bc56015eed21fbac85ca293771086", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d1a25c593896d1054dbe755c80fe10e9b30bc56015eed21fbac85ca293771086", kill_on_drop: false }`
[INFO] [stdout] d1a25c593896d1054dbe755c80fe10e9b30bc56015eed21fbac85ca293771086
