[INFO] fetching crate ethcontract-mock 0.25.4...
[INFO] checking ethcontract-mock-0.25.4 against master#b0696a5160711c068cb1f01b7437db7990d15750 for pr-121848
[INFO] extracting crate ethcontract-mock 0.25.4 into /workspace/builds/worker-7-tc1/source
[INFO] validating manifest of crates.io crate ethcontract-mock 0.25.4 on toolchain b0696a5160711c068cb1f01b7437db7990d15750
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b0696a5160711c068cb1f01b7437db7990d15750" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate ethcontract-mock 0.25.4
[INFO] finished tweaking crates.io crate ethcontract-mock 0.25.4
[INFO] tweaked toml for crates.io crate ethcontract-mock 0.25.4 written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b0696a5160711c068cb1f01b7437db7990d15750" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b0696a5160711c068cb1f01b7437db7990d15750" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded predicates v3.1.0
[INFO] [stderr]   Downloaded downcast v0.11.0
[INFO] [stderr]   Downloaded termtree v0.4.1
[INFO] [stderr]   Downloaded predicates-core v1.0.6
[INFO] [stderr]   Downloaded ethbloom v0.13.0
[INFO] [stderr]   Downloaded predicates-tree v1.0.9
[INFO] [stderr]   Downloaded ethcontract-derive v0.25.5
[INFO] [stderr]   Downloaded ethereum-types v0.14.1
[INFO] [stderr]   Downloaded predicates v2.1.5
[INFO] [stderr]   Downloaded web3 v0.19.0
[INFO] [stderr]   Downloaded mockall_derive v0.11.4
[INFO] [stderr]   Downloaded fragile v2.0.0
[INFO] [stderr]   Downloaded mockall v0.11.4
[INFO] [stderr]   Downloaded ethabi v18.0.0
[INFO] [stderr]   Downloaded ethcontract-common v0.25.5
[INFO] [stderr]   Downloaded ethcontract-generate v0.25.5
[INFO] [stderr]   Downloaded ethcontract v0.25.5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b0696a5160711c068cb1f01b7437db7990d15750" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 52275db3a8cf869ee80fbf10815ecf43a3d663f889c2566f8af3153001b340f0
[INFO] running `Command { std: "docker" "start" "-a" "52275db3a8cf869ee80fbf10815ecf43a3d663f889c2566f8af3153001b340f0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "52275db3a8cf869ee80fbf10815ecf43a3d663f889c2566f8af3153001b340f0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "52275db3a8cf869ee80fbf10815ecf43a3d663f889c2566f8af3153001b340f0", kill_on_drop: false }`
[INFO] [stdout] 52275db3a8cf869ee80fbf10815ecf43a3d663f889c2566f8af3153001b340f0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b0696a5160711c068cb1f01b7437db7990d15750" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] f0f8dad9f7261dca210c5885e3c7cd3450c68b2be755a0e36be8d9d707081811
[INFO] running `Command { std: "docker" "start" "-a" "f0f8dad9f7261dca210c5885e3c7cd3450c68b2be755a0e36be8d9d707081811", kill_on_drop: false }`
[INFO] [stderr]    Compiling crunchy v0.2.2
[INFO] [stderr]    Compiling cfg-if v1.0.0
[INFO] [stderr]    Compiling tiny-keccak v2.0.2
[INFO] [stderr]    Compiling memchr v2.7.1
[INFO] [stderr]    Compiling futures-macro v0.3.30
[INFO] [stderr]    Compiling serde v1.0.197
[INFO] [stderr]    Compiling lock_api v0.4.11
[INFO] [stderr]    Compiling getrandom v0.2.12
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling rustc-hex v2.1.0
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling parking_lot_core v0.9.9
[INFO] [stderr]    Compiling ppv-lite86 v0.2.17
[INFO] [stderr]    Compiling thiserror-impl v1.0.58
[INFO] [stderr]    Compiling typenum v1.17.0
[INFO] [stderr]    Compiling bytes v1.5.0
[INFO] [stderr]    Compiling static_assertions v1.1.0
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling byteorder v1.5.0
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling rlp v0.5.2
[INFO] [stderr]    Compiling futures-core v0.3.30
[INFO] [stderr]    Compiling futures-sink v0.3.30
[INFO] [stderr]    Compiling tinyvec_macros v0.1.1
[INFO] [stderr]    Compiling tinyvec v1.6.0
[INFO] [stderr]    Compiling futures-channel v0.3.30
[INFO] [stderr]    Compiling fixed-hash v0.8.0
[INFO] [stderr]    Compiling impl-rlp v0.3.0
[INFO] [stderr]    Compiling aho-corasick v1.1.2
[INFO] [stderr]    Compiling pin-project-internal v1.1.5
[INFO] [stderr]    Compiling slab v0.4.9
[INFO] [stderr]    Compiling pin-project-lite v0.2.13
[INFO] [stderr]    Compiling regex-syntax v0.8.2
[INFO] [stderr]    Compiling futures-io v0.3.30
[INFO] [stderr]    Compiling futures-task v0.3.30
[INFO] [stderr]    Compiling pin-utils v0.1.0
[INFO] [stderr]    Compiling hex v0.4.3
[INFO] [stderr]     Checking regex-automata v0.4.6
[INFO] [stderr]    Compiling uint v0.9.5
[INFO] [stderr]    Compiling futures-util v0.3.30
[INFO] [stderr]    Compiling unicode-normalization v0.1.23
[INFO] [stderr]    Compiling impl-serde v0.4.0
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling crypto-common v0.1.6
[INFO] [stderr]    Compiling unicode-bidi v0.3.15
[INFO] [stderr]    Compiling itoa v1.0.10
[INFO] [stderr]    Compiling ryu v1.0.17
[INFO] [stderr]    Compiling convert_case v0.4.0
[INFO] [stderr]    Compiling serde_json v1.0.114
[INFO] [stderr]    Compiling ethbloom v0.13.0
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]     Checking regex v1.10.3
[INFO] [stderr]    Compiling primitive-types v0.12.2
[INFO] [stderr]    Compiling keccak v0.1.5
[INFO] [stderr]    Compiling smallvec v1.13.1
[INFO] [stderr]    Compiling scopeguard v1.2.0
[INFO] [stderr]    Compiling sha3 v0.10.8
[INFO] [stderr]    Compiling secp256k1-sys v0.8.1
[INFO] [stderr]    Compiling thiserror v1.0.58
[INFO] [stderr]    Compiling futures-executor v0.3.30
[INFO] [stderr]    Compiling ethereum-types v0.14.1
[INFO] [stderr]    Compiling futures v0.3.30
[INFO] [stderr]    Compiling log v0.4.21
[INFO] [stderr]    Compiling jsonrpc-core v18.0.0
[INFO] [stderr]    Compiling parking_lot v0.12.1
[INFO] [stderr]    Compiling ethabi v18.0.0
[INFO] [stderr]    Compiling idna v0.4.0
[INFO] [stderr]    Compiling derive_more v0.99.17
[INFO] [stderr]    Compiling pin-project v1.1.5
[INFO] [stderr]    Compiling percent-encoding v2.3.1
[INFO] [stderr]    Compiling futures-timer v3.0.3
[INFO] [stderr]    Compiling arrayvec v0.7.4
[INFO] [stderr]    Compiling anyhow v1.0.81
[INFO] [stderr]    Compiling form_urlencoded v1.2.1
[INFO] [stderr]    Compiling idna v0.5.0
[INFO] [stderr]     Checking predicates-core v1.0.6
[INFO] [stderr]    Compiling lazy_static v1.4.0
[INFO] [stderr]    Compiling Inflector v0.11.4
[INFO] [stderr]     Checking float-cmp v0.9.0
[INFO] [stderr]    Compiling url v2.5.0
[INFO] [stderr]     Checking normalize-line-endings v0.3.0
[INFO] [stderr]     Checking either v1.10.0
[INFO] [stderr]     Checking difflib v0.4.0
[INFO] [stderr]     Checking itertools v0.10.5
[INFO] [stderr]     Checking termtree v0.4.1
[INFO] [stderr]     Checking predicates-tree v1.0.9
[INFO] [stderr]    Compiling mockall_derive v0.11.4
[INFO] [stderr]     Checking fragile v2.0.0
[INFO] [stderr]     Checking downcast v0.11.0
[INFO] [stderr]     Checking anstyle v1.0.6
[INFO] [stderr]     Checking zeroize v1.7.0
[INFO] [stderr]     Checking tokio v1.36.0
[INFO] [stderr]     Checking predicates v3.1.0
[INFO] [stderr]     Checking secp256k1 v0.27.0
[INFO] [stderr]     Checking predicates v2.1.5
[INFO] [stderr]    Compiling web3 v0.19.0
[INFO] [stderr]     Checking mockall v0.11.4
[INFO] [stderr]     Checking ethcontract-common v0.25.5
[INFO] [stderr]    Compiling ethcontract-generate v0.25.5
[INFO] [stderr]    Compiling ethcontract-derive v0.25.5
[INFO] [stderr]     Checking ethcontract v0.25.5
[INFO] [stderr]     Checking ethcontract-mock v0.25.4 (/opt/rustwide/workdir)
[INFO] [stdout] warning: the item `TryFrom` is imported redundantly
[INFO] [stdout]  --> src/details/mod.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::convert::TryFrom;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]  --> /rustc/b0696a5160711c068cb1f01b7437db7990d15750/library/std/src/prelude/mod.rs:129:13
[INFO] [stdout]   |
[INFO] [stdout]   = note: the item `TryFrom` is already defined here
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: failed to read artifact JSON file
[INFO] [stdout]        
[INFO] [stdout]        Caused by:
[INFO] [stdout]            No such file or directory (os error 2)
[INFO] [stdout]        
[INFO] [stdout]        Stack backtrace:
[INFO] [stdout]           0: <E as anyhow::context::ext::StdError>::ext_context
[INFO] [stdout]           1: anyhow::context::<impl anyhow::Context<T,E> for core::result::Result<T,E>>::context
[INFO] [stdout]           2: ethcontract_generate::source::get_local_contract
[INFO] [stdout]           3: ethcontract_generate::source::Source::artifact_json
[INFO] [stdout]           4: ethcontract_derive::generate
[INFO] [stdout]           5: ethcontract_derive::contract
[INFO] [stdout]           6: core::ops::function::Fn::call
[INFO] [stdout]           7: proc_macro::bridge::client::Client<proc_macro::TokenStream,proc_macro::TokenStream>::expand1::{{closure}}::{{closure}}
[INFO] [stdout]           8: proc_macro::bridge::client::run_client::{{closure}}::{{closure}}::{{closure}}
[INFO] [stdout]           9: proc_macro::bridge::scoped_cell::ScopedCell<T>::set::{{closure}}
[INFO] [stdout]          10: proc_macro::bridge::scoped_cell::ScopedCell<T>::replace
[INFO] [stdout]          11: proc_macro::bridge::client::run_client::{{closure}}::{{closure}}
[INFO] [stdout]          12: std::thread::local::LocalKey<T>::try_with
[INFO] [stdout]          13: proc_macro::bridge::client::run_client::{{closure}}
[INFO] [stdout]          14: <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]          15: std::panicking::try::do_call
[INFO] [stdout]          16: __rust_try
[INFO] [stdout]          17: std::panicking::try
[INFO] [stdout]          18: proc_macro::bridge::client::run_client
[INFO] [stdout]          19: proc_macro::bridge::client::Client<proc_macro::TokenStream,proc_macro::TokenStream>::expand1::{{closure}}
[INFO] [stdout]          20: proc_macro::bridge::selfless_reify::reify_to_extern_c_fn_hrt_bridge::wrapper
[INFO] [stdout]          21: <proc_macro::bridge::server::MaybeCrossThread<rustc_expand::proc_macro::MessagePipe<proc_macro::bridge::buffer::Buffer>> as proc_macro::bridge::server::ExecutionStrategy>::run_bridge_and_client::<proc_macro::bridge::server::Dispatcher<proc_macro::bridge::server::MarkedTypes<rustc_expand::proc_macro_server::Rustc>>>
[INFO] [stdout]          22: <proc_macro::bridge::client::Client<proc_macro::TokenStream, proc_macro::TokenStream>>::run::<rustc_expand::proc_macro_server::Rustc, proc_macro::bridge::server::MaybeCrossThread<rustc_expand::proc_macro::MessagePipe<proc_macro::bridge::buffer::Buffer>>>
[INFO] [stdout]          23: <rustc_expand::proc_macro::BangProcMacro as rustc_expand::base::BangProcMacro>::expand
[INFO] [stdout]          24: <rustc_expand::expand::MacroExpander>::fully_expand_fragment
[INFO] [stdout]          25: <rustc_expand::expand::MacroExpander>::expand_crate
[INFO] [stdout]          26: rustc_interface::passes::resolver_for_lowering
[INFO] [stdout]          27: rustc_query_impl::plumbing::__rust_begin_short_backtrace::<rustc_query_impl::query_impl::resolver_for_lowering::dynamic_query::{closure#2}::{closure#0}, rustc_middle::query::erase::Erased<[u8; 8]>>
[INFO] [stdout]          28: rustc_query_system::query::plumbing::try_execute_query::<rustc_query_impl::DynamicConfig<rustc_query_system::query::caches::SingleCache<rustc_middle::query::erase::Erased<[u8; 8]>>, false, false, false>, rustc_query_impl::plumbing::QueryCtxt, false>
[INFO] [stdout]          29: rustc_query_impl::query_impl::resolver_for_lowering::get_query_non_incr::__rust_end_short_backtrace
[INFO] [stdout]          30: rustc_interface::interface::run_compiler::<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#0}>::{closure#0}
[INFO] [stdout]          31: std::sys_common::backtrace::__rust_begin_short_backtrace::<rustc_interface::util::run_in_thread_with_globals<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#0}>::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#0}::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>
[INFO] [stdout]          32: <<std::thread::Builder>::spawn_unchecked_<rustc_interface::util::run_in_thread_with_globals<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#0}>::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#0}::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#1} as core::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]          33: <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once
[INFO] [stdout]                     at /rustc/b0696a5160711c068cb1f01b7437db7990d15750/library/alloc/src/boxed.rs:2016:9
[INFO] [stdout]          34: <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once
[INFO] [stdout]                     at /rustc/b0696a5160711c068cb1f01b7437db7990d15750/library/alloc/src/boxed.rs:2016:9
[INFO] [stdout]          35: std::sys::pal::unix::thread::Thread::new::thread_start
[INFO] [stdout]                     at /rustc/b0696a5160711c068cb1f01b7437db7990d15750/library/std/src/sys/pal/unix/thread.rs:108:17
[INFO] [stdout]          36: <unknown>
[INFO] [stdout]          37: __clone
[INFO] [stdout]  --> src/test/returns.rs:3:24
[INFO] [stdout]   |
[INFO] [stdout] 3 | ethcontract::contract!("examples/truffle/build/contracts/AbiTypes.json");
[INFO] [stdout]   |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: failed to read artifact JSON file
[INFO] [stdout]        
[INFO] [stdout]        Caused by:
[INFO] [stdout]            No such file or directory (os error 2)
[INFO] [stdout]        
[INFO] [stdout]        Stack backtrace:
[INFO] [stdout]           0: <E as anyhow::context::ext::StdError>::ext_context
[INFO] [stdout]           1: anyhow::context::<impl anyhow::Context<T,E> for core::result::Result<T,E>>::context
[INFO] [stdout]           2: ethcontract_generate::source::get_local_contract
[INFO] [stdout]           3: ethcontract_generate::source::Source::artifact_json
[INFO] [stdout]           4: ethcontract_derive::generate
[INFO] [stdout]           5: ethcontract_derive::contract
[INFO] [stdout]           6: core::ops::function::Fn::call
[INFO] [stdout]           7: proc_macro::bridge::client::Client<proc_macro::TokenStream,proc_macro::TokenStream>::expand1::{{closure}}::{{closure}}
[INFO] [stdout]           8: proc_macro::bridge::client::run_client::{{closure}}::{{closure}}::{{closure}}
[INFO] [stdout]           9: proc_macro::bridge::scoped_cell::ScopedCell<T>::set::{{closure}}
[INFO] [stdout]          10: proc_macro::bridge::scoped_cell::ScopedCell<T>::replace
[INFO] [stdout]          11: proc_macro::bridge::client::run_client::{{closure}}::{{closure}}
[INFO] [stdout]          12: std::thread::local::LocalKey<T>::try_with
[INFO] [stdout]          13: proc_macro::bridge::client::run_client::{{closure}}
[INFO] [stdout]          14: <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]          15: std::panicking::try::do_call
[INFO] [stdout]          16: __rust_try
[INFO] [stdout]          17: std::panicking::try
[INFO] [stdout]          18: proc_macro::bridge::client::run_client
[INFO] [stdout]          19: proc_macro::bridge::client::Client<proc_macro::TokenStream,proc_macro::TokenStream>::expand1::{{closure}}
[INFO] [stdout]          20: proc_macro::bridge::selfless_reify::reify_to_extern_c_fn_hrt_bridge::wrapper
[INFO] [stdout]          21: <proc_macro::bridge::server::MaybeCrossThread<rustc_expand::proc_macro::MessagePipe<proc_macro::bridge::buffer::Buffer>> as proc_macro::bridge::server::ExecutionStrategy>::run_bridge_and_client::<proc_macro::bridge::server::Dispatcher<proc_macro::bridge::server::MarkedTypes<rustc_expand::proc_macro_server::Rustc>>>
[INFO] [stdout]          22: <proc_macro::bridge::client::Client<proc_macro::TokenStream, proc_macro::TokenStream>>::run::<rustc_expand::proc_macro_server::Rustc, proc_macro::bridge::server::MaybeCrossThread<rustc_expand::proc_macro::MessagePipe<proc_macro::bridge::buffer::Buffer>>>
[INFO] [stdout]          23: <rustc_expand::proc_macro::BangProcMacro as rustc_expand::base::BangProcMacro>::expand
[INFO] [stdout]          24: <rustc_expand::expand::MacroExpander>::fully_expand_fragment
[INFO] [stdout]          25: <rustc_expand::expand::MacroExpander>::expand_crate
[INFO] [stdout]          26: rustc_interface::passes::resolver_for_lowering
[INFO] [stdout]          27: rustc_query_impl::plumbing::__rust_begin_short_backtrace::<rustc_query_impl::query_impl::resolver_for_lowering::dynamic_query::{closure#2}::{closure#0}, rustc_middle::query::erase::Erased<[u8; 8]>>
[INFO] [stdout]          28: rustc_query_system::query::plumbing::try_execute_query::<rustc_query_impl::DynamicConfig<rustc_query_system::query::caches::SingleCache<rustc_middle::query::erase::Erased<[u8; 8]>>, false, false, false>, rustc_query_impl::plumbing::QueryCtxt, false>
[INFO] [stdout]          29: rustc_query_impl::query_impl::resolver_for_lowering::get_query_non_incr::__rust_end_short_backtrace
[INFO] [stdout]          30: rustc_interface::interface::run_compiler::<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#0}>::{closure#0}
[INFO] [stdout]          31: std::sys_common::backtrace::__rust_begin_short_backtrace::<rustc_interface::util::run_in_thread_with_globals<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#0}>::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#0}::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>
[INFO] [stdout]          32: <<std::thread::Builder>::spawn_unchecked_<rustc_interface::util::run_in_thread_with_globals<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#0}>::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#0}::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#1} as core::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]          33: <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once
[INFO] [stdout]                     at /rustc/b0696a5160711c068cb1f01b7437db7990d15750/library/alloc/src/boxed.rs:2016:9
[INFO] [stdout]          34: <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once
[INFO] [stdout]                     at /rustc/b0696a5160711c068cb1f01b7437db7990d15750/library/alloc/src/boxed.rs:2016:9
[INFO] [stdout]          35: std::sys::pal::unix::thread::Thread::new::thread_start
[INFO] [stdout]                     at /rustc/b0696a5160711c068cb1f01b7437db7990d15750/library/std/src/sys/pal/unix/thread.rs:108:17
[INFO] [stdout]          36: <unknown>
[INFO] [stdout]          37: __clone
[INFO] [stdout]   --> src/test/mod.rs:84:24
[INFO] [stdout]    |
[INFO] [stdout] 84 | ethcontract::contract!("examples/truffle/build/contracts/ERC20.json");
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `ERC20` in this scope
[INFO] [stdout]   --> src/test/mod.rs:86:41
[INFO] [stdout]    |
[INFO] [stdout] 86 | fn setup() -> (Mock, DynWeb3, Contract, ERC20) {
[INFO] [stdout]    |                                         ^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `TryFrom` is imported redundantly
[INFO] [stdout]  --> src/details/mod.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::convert::TryFrom;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]  --> /rustc/b0696a5160711c068cb1f01b7437db7990d15750/library/std/src/prelude/mod.rs:129:13
[INFO] [stdout]   |
[INFO] [stdout]   = note: the item `TryFrom` is already defined here
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Mock` is imported redundantly
[INFO] [stdout]  --> src/test/eth_block_number.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::*;
[INFO] [stdout]   |     -------- the item `Mock` is already imported here
[INFO] [stdout] 2 | use crate::Mock;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Mock` is imported redundantly
[INFO] [stdout]  --> src/test/eth_chain_id.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::*;
[INFO] [stdout]   |     -------- the item `Mock` is already imported here
[INFO] [stdout] 2 | use crate::Mock;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Mock` is imported redundantly
[INFO] [stdout]  --> src/test/eth_gas_price.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::*;
[INFO] [stdout]   |     -------- the item `Mock` is already imported here
[INFO] [stdout] 2 | use crate::Mock;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Mock` is imported redundantly
[INFO] [stdout]  --> src/test/eth_transaction_count.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::*;
[INFO] [stdout]   |     -------- the item `Mock` is already imported here
[INFO] [stdout] 2 | use crate::Mock;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `BlockNumber` is imported redundantly
[INFO] [stdout]  --> src/test/eth_transaction_count.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::*;
[INFO] [stdout]   |     -------- the item `BlockNumber` is already imported here
[INFO] [stdout] 2 | use crate::Mock;
[INFO] [stdout] 3 | use ethcontract::BlockNumber;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Mock` is imported redundantly
[INFO] [stdout]  --> src/test/net_version.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::*;
[INFO] [stdout]   |     -------- the item `Mock` is already imported here
[INFO] [stdout] 2 | use crate::Mock;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ERC20`
[INFO] [stdout]   --> src/test/batch.rs:10:17
[INFO] [stdout]    |
[INFO] [stdout] 10 |         .expect(ERC20::signatures().name())
[INFO] [stdout]    |                 ^^^^^ use of undeclared type `ERC20`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ERC20`
[INFO] [stdout]   --> src/test/batch.rs:15:17
[INFO] [stdout]    |
[INFO] [stdout] 15 |         .expect(ERC20::signatures().symbol())
[INFO] [stdout]    |                 ^^^^^ use of undeclared type `ERC20`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ERC20`
[INFO] [stdout]   --> src/test/batch.rs:20:17
[INFO] [stdout]    |
[INFO] [stdout] 20 |         .expect(ERC20::signatures().decimals())
[INFO] [stdout]    |                 ^^^^^ use of undeclared type `ERC20`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ERC20`
[INFO] [stdout]   --> src/test/batch.rs:25:17
[INFO] [stdout]    |
[INFO] [stdout] 25 |         .expect(ERC20::signatures().total_supply())
[INFO] [stdout]    |                 ^^^^^ use of undeclared type `ERC20`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ERC20`
[INFO] [stdout]   --> src/test/eth_block_number.rs:17:21
[INFO] [stdout]    |
[INFO] [stdout] 17 |     contract.expect(ERC20::signatures().transfer());
[INFO] [stdout]    |                     ^^^^^ use of undeclared type `ERC20`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ERC20`
[INFO] [stdout]   --> src/test/eth_block_number.rs:36:17
[INFO] [stdout]    |
[INFO] [stdout] 36 |         .expect(ERC20::signatures().transfer())
[INFO] [stdout]    |                 ^^^^^ use of undeclared type `ERC20`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ERC20`
[INFO] [stdout]   --> src/test/eth_block_number.rs:55:21
[INFO] [stdout]    |
[INFO] [stdout] 55 |     contract.expect(ERC20::signatures().transfer());
[INFO] [stdout]    |                     ^^^^^ use of undeclared type `ERC20`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ERC20`
[INFO] [stdout]  --> src/test/eth_estimate_gas.rs:8:21
[INFO] [stdout]   |
[INFO] [stdout] 8 |     contract.expect(ERC20::signatures().transfer());
[INFO] [stdout]   |                     ^^^^^ use of undeclared type `ERC20`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ERC20`
[INFO] [stdout]   --> src/test/eth_estimate_gas.rs:25:21
[INFO] [stdout]    |
[INFO] [stdout] 25 |     contract.expect(ERC20::signatures().transfer());
[INFO] [stdout]    |                     ^^^^^ use of undeclared type `ERC20`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ERC20`
[INFO] [stdout]   --> src/test/eth_estimate_gas.rs:82:21
[INFO] [stdout]    |
[INFO] [stdout] 82 |     contract.expect(ERC20::signatures().transfer());
[INFO] [stdout]    |                     ^^^^^ use of undeclared type `ERC20`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ERC20`
[INFO] [stdout]    --> src/test/eth_estimate_gas.rs:114:21
[INFO] [stdout]     |
[INFO] [stdout] 114 |     contract.expect(ERC20::signatures().transfer());
[INFO] [stdout]     |                     ^^^^^ use of undeclared type `ERC20`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ERC20`
[INFO] [stdout]  --> src/test/eth_get_transaction_receipt.rs:8:21
[INFO] [stdout]   |
[INFO] [stdout] 8 |     contract.expect(ERC20::signatures().transfer());
[INFO] [stdout]   |                     ^^^^^ use of undeclared type `ERC20`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ERC20`
[INFO] [stdout]   --> src/test/eth_transaction_count.rs:23:21
[INFO] [stdout]    |
[INFO] [stdout] 23 |     contract.expect(ERC20::signatures().transfer());
[INFO] [stdout]    |                     ^^^^^ use of undeclared type `ERC20`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ERC20`
[INFO] [stdout]   --> src/test/eth_transaction_count.rs:51:21
[INFO] [stdout]    |
[INFO] [stdout] 51 |     contract.expect(ERC20::signatures().transfer());
[INFO] [stdout]    |                     ^^^^^ use of undeclared type `ERC20`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ERC20`
[INFO] [stdout]   --> src/test/eth_transaction_count.rs:92:21
[INFO] [stdout]    |
[INFO] [stdout] 92 |     contract.expect(ERC20::signatures().transfer());
[INFO] [stdout]    |                     ^^^^^ use of undeclared type `ERC20`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]  --> src/test/returns.rs:7:43
[INFO] [stdout]   |
[INFO] [stdout] 7 |     let contract = Mock::new(1234).deploy(AbiTypes::raw_contract().abi.clone());
[INFO] [stdout]   |                                           ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]  --> src/test/returns.rs:9:21
[INFO] [stdout]   |
[INFO] [stdout] 9 |     contract.expect(AbiTypes::signatures().get_void());
[INFO] [stdout]   |                     ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]   --> src/test/returns.rs:10:21
[INFO] [stdout]    |
[INFO] [stdout] 10 |     contract.expect(AbiTypes::signatures().get_u8());
[INFO] [stdout]    |                     ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]   --> src/test/returns.rs:11:21
[INFO] [stdout]    |
[INFO] [stdout] 11 |     contract.expect(AbiTypes::signatures().abiv_2_struct());
[INFO] [stdout]    |                     ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]   --> src/test/returns.rs:12:21
[INFO] [stdout]    |
[INFO] [stdout] 12 |     contract.expect(AbiTypes::signatures().abiv_2_array_of_struct());
[INFO] [stdout]    |                     ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]   --> src/test/returns.rs:13:21
[INFO] [stdout]    |
[INFO] [stdout] 13 |     contract.expect(AbiTypes::signatures().multiple_results());
[INFO] [stdout]    |                     ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]   --> src/test/returns.rs:14:21
[INFO] [stdout]    |
[INFO] [stdout] 14 |     contract.expect(AbiTypes::signatures().multiple_results_struct());
[INFO] [stdout]    |                     ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]   --> src/test/returns.rs:16:20
[INFO] [stdout]    |
[INFO] [stdout] 16 |     let instance = AbiTypes::at(&contract.web3(), contract.address);
[INFO] [stdout]    |                    ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]   --> src/test/returns.rs:39:43
[INFO] [stdout]    |
[INFO] [stdout] 39 |     let contract = Mock::new(1234).deploy(AbiTypes::raw_contract().abi.clone());
[INFO] [stdout]    |                                           ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]   --> src/test/returns.rs:42:17
[INFO] [stdout]    |
[INFO] [stdout] 42 |         .expect(AbiTypes::signatures().get_void())
[INFO] [stdout]    |                 ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]   --> src/test/returns.rs:44:21
[INFO] [stdout]    |
[INFO] [stdout] 44 |     contract.expect(AbiTypes::signatures().get_u8()).returns(42);
[INFO] [stdout]    |                     ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]   --> src/test/returns.rs:46:17
[INFO] [stdout]    |
[INFO] [stdout] 46 |         .expect(AbiTypes::signatures().abiv_2_struct())
[INFO] [stdout]    |                 ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]   --> src/test/returns.rs:49:17
[INFO] [stdout]    |
[INFO] [stdout] 49 |         .expect(AbiTypes::signatures().abiv_2_array_of_struct())
[INFO] [stdout]    |                 ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]   --> src/test/returns.rs:52:17
[INFO] [stdout]    |
[INFO] [stdout] 52 |         .expect(AbiTypes::signatures().multiple_results())
[INFO] [stdout]    |                 ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]   --> src/test/returns.rs:55:17
[INFO] [stdout]    |
[INFO] [stdout] 55 |         .expect(AbiTypes::signatures().multiple_results_struct())
[INFO] [stdout]    |                 ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]   --> src/test/returns.rs:58:20
[INFO] [stdout]    |
[INFO] [stdout] 58 |     let instance = AbiTypes::at(&contract.web3(), contract.address);
[INFO] [stdout]    |                    ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]   --> src/test/returns.rs:81:43
[INFO] [stdout]    |
[INFO] [stdout] 81 |     let contract = Mock::new(1234).deploy(AbiTypes::raw_contract().abi.clone());
[INFO] [stdout]    |                                           ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]   --> src/test/returns.rs:84:17
[INFO] [stdout]    |
[INFO] [stdout] 84 |         .expect(AbiTypes::signatures().get_void())
[INFO] [stdout]    |                 ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]   --> src/test/returns.rs:87:17
[INFO] [stdout]    |
[INFO] [stdout] 87 |         .expect(AbiTypes::signatures().get_u8())
[INFO] [stdout]    |                 ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]   --> src/test/returns.rs:90:17
[INFO] [stdout]    |
[INFO] [stdout] 90 |         .expect(AbiTypes::signatures().abiv_2_struct())
[INFO] [stdout]    |                 ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]   --> src/test/returns.rs:93:17
[INFO] [stdout]    |
[INFO] [stdout] 93 |         .expect(AbiTypes::signatures().abiv_2_array_of_struct())
[INFO] [stdout]    |                 ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]   --> src/test/returns.rs:96:17
[INFO] [stdout]    |
[INFO] [stdout] 96 |         .expect(AbiTypes::signatures().multiple_results())
[INFO] [stdout]    |                 ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]   --> src/test/returns.rs:99:17
[INFO] [stdout]    |
[INFO] [stdout] 99 |         .expect(AbiTypes::signatures().multiple_results_struct())
[INFO] [stdout]    |                 ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]    --> src/test/returns.rs:102:20
[INFO] [stdout]     |
[INFO] [stdout] 102 |     let instance = AbiTypes::at(&contract.web3(), contract.address);
[INFO] [stdout]     |                    ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]    --> src/test/returns.rs:125:43
[INFO] [stdout]     |
[INFO] [stdout] 125 |     let contract = Mock::new(1234).deploy(AbiTypes::raw_contract().abi.clone());
[INFO] [stdout]     |                                           ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]    --> src/test/returns.rs:128:17
[INFO] [stdout]     |
[INFO] [stdout] 128 |         .expect(AbiTypes::signatures().get_void())
[INFO] [stdout]     |                 ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]    --> src/test/returns.rs:131:17
[INFO] [stdout]     |
[INFO] [stdout] 131 |         .expect(AbiTypes::signatures().get_u8())
[INFO] [stdout]     |                 ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]    --> src/test/returns.rs:134:17
[INFO] [stdout]     |
[INFO] [stdout] 134 |         .expect(AbiTypes::signatures().abiv_2_struct())
[INFO] [stdout]     |                 ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]    --> src/test/returns.rs:137:17
[INFO] [stdout]     |
[INFO] [stdout] 137 |         .expect(AbiTypes::signatures().abiv_2_array_of_struct())
[INFO] [stdout]     |                 ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]    --> src/test/returns.rs:140:17
[INFO] [stdout]     |
[INFO] [stdout] 140 |         .expect(AbiTypes::signatures().multiple_results())
[INFO] [stdout]     |                 ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]    --> src/test/returns.rs:143:17
[INFO] [stdout]     |
[INFO] [stdout] 143 |         .expect(AbiTypes::signatures().multiple_results_struct())
[INFO] [stdout]     |                 ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]    --> src/test/returns.rs:146:20
[INFO] [stdout]     |
[INFO] [stdout] 146 |     let instance = AbiTypes::at(&contract.web3(), contract.address);
[INFO] [stdout]     |                    ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ERC20`
[INFO] [stdout]   --> src/test/mod.rs:89:32
[INFO] [stdout]    |
[INFO] [stdout] 89 |     let contract = mock.deploy(ERC20::raw_contract().abi.clone());
[INFO] [stdout]    |                                ^^^^^ use of undeclared type `ERC20`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ERC20`
[INFO] [stdout]   --> src/test/mod.rs:90:24
[INFO] [stdout]    |
[INFO] [stdout] 90 |     let mut instance = ERC20::at(&web3, contract.address);
[INFO] [stdout]    |                        ^^^^^ use of undeclared type `ERC20`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ERC20`
[INFO] [stdout]   --> src/test/mod.rs:99:32
[INFO] [stdout]    |
[INFO] [stdout] 99 |     let contract = mock.deploy(ERC20::raw_contract().abi.clone());
[INFO] [stdout]    |                                ^^^^^ use of undeclared type `ERC20`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ERC20`
[INFO] [stdout]    --> src/test/mod.rs:106:17
[INFO] [stdout]     |
[INFO] [stdout] 106 |         .expect(ERC20::signatures().balance_of())
[INFO] [stdout]     |                 ^^^^^ use of undeclared type `ERC20`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ERC20`
[INFO] [stdout]    --> src/test/mod.rs:113:17
[INFO] [stdout]     |
[INFO] [stdout] 113 |         .expect(ERC20::signatures().transfer())
[INFO] [stdout]     |                 ^^^^^ use of undeclared type `ERC20`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ERC20`
[INFO] [stdout]    --> src/test/mod.rs:135:17
[INFO] [stdout]     |
[INFO] [stdout] 135 |         .expect(ERC20::signatures().balance_of())
[INFO] [stdout]     |                 ^^^^^ use of undeclared type `ERC20`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ERC20`
[INFO] [stdout]    --> src/test/mod.rs:142:17
[INFO] [stdout]     |
[INFO] [stdout] 142 |         .expect(ERC20::signatures().balance_of())
[INFO] [stdout]     |                 ^^^^^ use of undeclared type `ERC20`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ERC20`
[INFO] [stdout]    --> src/test/mod.rs:146:27
[INFO] [stdout]     |
[INFO] [stdout] 146 |     let actual_contract = ERC20::at(&mock.web3(), contract.address);
[INFO] [stdout]     |                           ^^^^^ use of undeclared type `ERC20`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 58 previous errors; 7 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0412, E0433.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0412`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `ethcontract-mock` (lib test) due to 59 previous errors; 7 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "f0f8dad9f7261dca210c5885e3c7cd3450c68b2be755a0e36be8d9d707081811", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f0f8dad9f7261dca210c5885e3c7cd3450c68b2be755a0e36be8d9d707081811", kill_on_drop: false }`
[INFO] [stdout] f0f8dad9f7261dca210c5885e3c7cd3450c68b2be755a0e36be8d9d707081811
[INFO] checking ethcontract-mock-0.25.4 against try#bfe97fcae016881ad333f0ff8cea2cadb9cf136c for pr-121848
[INFO] extracting crate ethcontract-mock 0.25.4 into /workspace/builds/worker-7-tc2/source
[INFO] validating manifest of crates.io crate ethcontract-mock 0.25.4 on toolchain bfe97fcae016881ad333f0ff8cea2cadb9cf136c
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+bfe97fcae016881ad333f0ff8cea2cadb9cf136c" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate ethcontract-mock 0.25.4
[INFO] finished tweaking crates.io crate ethcontract-mock 0.25.4
[INFO] tweaked toml for crates.io crate ethcontract-mock 0.25.4 written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+bfe97fcae016881ad333f0ff8cea2cadb9cf136c" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+bfe97fcae016881ad333f0ff8cea2cadb9cf136c" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+bfe97fcae016881ad333f0ff8cea2cadb9cf136c" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 33085152e0f92d7d8c02ca0903ae362ef1ad7c2364649747bed9f47a507c8713
[INFO] running `Command { std: "docker" "start" "-a" "33085152e0f92d7d8c02ca0903ae362ef1ad7c2364649747bed9f47a507c8713", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "33085152e0f92d7d8c02ca0903ae362ef1ad7c2364649747bed9f47a507c8713", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "33085152e0f92d7d8c02ca0903ae362ef1ad7c2364649747bed9f47a507c8713", kill_on_drop: false }`
[INFO] [stdout] 33085152e0f92d7d8c02ca0903ae362ef1ad7c2364649747bed9f47a507c8713
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+bfe97fcae016881ad333f0ff8cea2cadb9cf136c" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b343fd3ab227ce73298c78ea56e507ce5ad144e825013f2a58ec3e208ddb7b35
[INFO] running `Command { std: "docker" "start" "-a" "b343fd3ab227ce73298c78ea56e507ce5ad144e825013f2a58ec3e208ddb7b35", kill_on_drop: false }`
[INFO] [stderr]    Compiling crunchy v0.2.2
[INFO] [stderr]    Compiling cfg-if v1.0.0
[INFO] [stderr]    Compiling tiny-keccak v2.0.2
[INFO] [stderr]    Compiling memchr v2.7.1
[INFO] [stderr]    Compiling futures-macro v0.3.30
[INFO] [stderr]    Compiling serde v1.0.197
[INFO] [stderr]    Compiling lock_api v0.4.11
[INFO] [stderr]    Compiling getrandom v0.2.12
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling ppv-lite86 v0.2.17
[INFO] [stderr]    Compiling parking_lot_core v0.9.9
[INFO] [stderr]    Compiling rustc-hex v2.1.0
[INFO] [stderr]    Compiling thiserror-impl v1.0.58
[INFO] [stderr]    Compiling typenum v1.17.0
[INFO] [stderr]    Compiling byteorder v1.5.0
[INFO] [stderr]    Compiling bytes v1.5.0
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling static_assertions v1.1.0
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling rlp v0.5.2
[INFO] [stderr]    Compiling futures-core v0.3.30
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling futures-sink v0.3.30
[INFO] [stderr]    Compiling tinyvec_macros v0.1.1
[INFO] [stderr]    Compiling tinyvec v1.6.0
[INFO] [stderr]    Compiling fixed-hash v0.8.0
[INFO] [stderr]    Compiling futures-channel v0.3.30
[INFO] [stderr]    Compiling impl-rlp v0.3.0
[INFO] [stderr]    Compiling aho-corasick v1.1.2
[INFO] [stderr]    Compiling pin-project-internal v1.1.5
[INFO] [stderr]    Compiling slab v0.4.9
[INFO] [stderr]    Compiling futures-io v0.3.30
[INFO] [stderr]    Compiling regex-syntax v0.8.2
[INFO] [stderr]    Compiling hex v0.4.3
[INFO] [stderr]    Compiling futures-task v0.3.30
[INFO] [stderr]    Compiling impl-serde v0.4.0
[INFO] [stderr]    Compiling pin-utils v0.1.0
[INFO] [stderr]    Compiling pin-project-lite v0.2.13
[INFO] [stderr]    Compiling uint v0.9.5
[INFO] [stderr]    Compiling futures-util v0.3.30
[INFO] [stderr]     Checking regex-automata v0.4.6
[INFO] [stderr]    Compiling unicode-normalization v0.1.23
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling crypto-common v0.1.6
[INFO] [stderr]    Compiling convert_case v0.4.0
[INFO] [stderr]    Compiling ryu v1.0.17
[INFO] [stderr]    Compiling itoa v1.0.10
[INFO] [stderr]    Compiling unicode-bidi v0.3.15
[INFO] [stderr]    Compiling serde_json v1.0.114
[INFO] [stderr]    Compiling ethbloom v0.13.0
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling primitive-types v0.12.2
[INFO] [stderr]    Compiling smallvec v1.13.1
[INFO] [stderr]     Checking regex v1.10.3
[INFO] [stderr]    Compiling scopeguard v1.2.0
[INFO] [stderr]    Compiling keccak v0.1.5
[INFO] [stderr]    Compiling sha3 v0.10.8
[INFO] [stderr]    Compiling secp256k1-sys v0.8.1
[INFO] [stderr]    Compiling ethereum-types v0.14.1
[INFO] [stderr]    Compiling futures-executor v0.3.30
[INFO] [stderr]    Compiling futures v0.3.30
[INFO] [stderr]    Compiling thiserror v1.0.58
[INFO] [stderr]    Compiling log v0.4.21
[INFO] [stderr]    Compiling parking_lot v0.12.1
[INFO] [stderr]    Compiling jsonrpc-core v18.0.0
[INFO] [stderr]    Compiling idna v0.4.0
[INFO] [stderr]    Compiling derive_more v0.99.17
[INFO] [stderr]    Compiling ethabi v18.0.0
[INFO] [stderr]    Compiling pin-project v1.1.5
[INFO] [stderr]    Compiling arrayvec v0.7.4
[INFO] [stderr]    Compiling futures-timer v3.0.3
[INFO] [stderr]    Compiling percent-encoding v2.3.1
[INFO] [stderr]    Compiling form_urlencoded v1.2.1
[INFO] [stderr]    Compiling anyhow v1.0.81
[INFO] [stderr]    Compiling idna v0.5.0
[INFO] [stderr]     Checking predicates-core v1.0.6
[INFO] [stderr]    Compiling lazy_static v1.4.0
[INFO] [stderr]    Compiling Inflector v0.11.4
[INFO] [stderr]    Compiling url v2.5.0
[INFO] [stderr]     Checking float-cmp v0.9.0
[INFO] [stderr]     Checking difflib v0.4.0
[INFO] [stderr]     Checking normalize-line-endings v0.3.0
[INFO] [stderr]     Checking either v1.10.0
[INFO] [stderr]     Checking termtree v0.4.1
[INFO] [stderr]    Compiling mockall_derive v0.11.4
[INFO] [stderr]     Checking downcast v0.11.0
[INFO] [stderr]     Checking predicates-tree v1.0.9
[INFO] [stderr]     Checking anstyle v1.0.6
[INFO] [stderr]     Checking zeroize v1.7.0
[INFO] [stderr]     Checking fragile v2.0.0
[INFO] [stderr]     Checking tokio v1.36.0
[INFO] [stderr]     Checking itertools v0.10.5
[INFO] [stderr]     Checking predicates v3.1.0
[INFO] [stderr]     Checking secp256k1 v0.27.0
[INFO] [stderr]     Checking predicates v2.1.5
[INFO] [stderr]    Compiling web3 v0.19.0
[INFO] [stderr]     Checking mockall v0.11.4
[INFO] [stderr]    Compiling ethcontract-common v0.25.5
[INFO] [stderr]    Compiling ethcontract-generate v0.25.5
[INFO] [stderr]    Compiling ethcontract-derive v0.25.5
[INFO] [stderr]     Checking ethcontract v0.25.5
[INFO] [stderr]     Checking ethcontract-mock v0.25.4 (/opt/rustwide/workdir)
[INFO] [stdout] warning: the item `TryFrom` is imported redundantly
[INFO] [stdout]  --> src/details/mod.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::convert::TryFrom;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]  --> /rustc/bfe97fcae016881ad333f0ff8cea2cadb9cf136c/library/std/src/prelude/mod.rs:129:13
[INFO] [stdout]   |
[INFO] [stdout]   = note: the item `TryFrom` is already defined here
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: failed to read artifact JSON file
[INFO] [stdout]        
[INFO] [stdout]        Caused by:
[INFO] [stdout]            No such file or directory (os error 2)
[INFO] [stdout]        
[INFO] [stdout]        Stack backtrace:
[INFO] [stdout]           0: <E as anyhow::context::ext::StdError>::ext_context
[INFO] [stdout]           1: anyhow::context::<impl anyhow::Context<T,E> for core::result::Result<T,E>>::context
[INFO] [stdout]           2: ethcontract_generate::source::get_local_contract
[INFO] [stdout]           3: ethcontract_generate::source::Source::artifact_json
[INFO] [stdout]           4: ethcontract_derive::generate
[INFO] [stdout]           5: ethcontract_derive::contract
[INFO] [stdout]           6: core::ops::function::Fn::call
[INFO] [stdout]           7: proc_macro::bridge::client::Client<proc_macro::TokenStream,proc_macro::TokenStream>::expand1::{{closure}}::{{closure}}
[INFO] [stdout]           8: proc_macro::bridge::client::run_client::{{closure}}::{{closure}}::{{closure}}
[INFO] [stdout]           9: proc_macro::bridge::scoped_cell::ScopedCell<T>::set::{{closure}}
[INFO] [stdout]          10: proc_macro::bridge::scoped_cell::ScopedCell<T>::replace
[INFO] [stdout]          11: proc_macro::bridge::client::run_client::{{closure}}::{{closure}}
[INFO] [stdout]          12: std::thread::local::LocalKey<T>::try_with
[INFO] [stdout]          13: proc_macro::bridge::client::run_client::{{closure}}
[INFO] [stdout]          14: <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]          15: std::panicking::try::do_call
[INFO] [stdout]          16: __rust_try
[INFO] [stdout]          17: std::panicking::try
[INFO] [stdout]          18: proc_macro::bridge::client::run_client
[INFO] [stdout]          19: proc_macro::bridge::client::Client<proc_macro::TokenStream,proc_macro::TokenStream>::expand1::{{closure}}
[INFO] [stdout]          20: proc_macro::bridge::selfless_reify::reify_to_extern_c_fn_hrt_bridge::wrapper
[INFO] [stdout]          21: <proc_macro::bridge::server::MaybeCrossThread<rustc_expand::proc_macro::MessagePipe<proc_macro::bridge::buffer::Buffer>> as proc_macro::bridge::server::ExecutionStrategy>::run_bridge_and_client::<proc_macro::bridge::server::Dispatcher<proc_macro::bridge::server::MarkedTypes<rustc_expand::proc_macro_server::Rustc>>>
[INFO] [stdout]          22: <proc_macro::bridge::client::Client<proc_macro::TokenStream, proc_macro::TokenStream>>::run::<rustc_expand::proc_macro_server::Rustc, proc_macro::bridge::server::MaybeCrossThread<rustc_expand::proc_macro::MessagePipe<proc_macro::bridge::buffer::Buffer>>>
[INFO] [stdout]          23: <rustc_expand::proc_macro::BangProcMacro as rustc_expand::base::BangProcMacro>::expand
[INFO] [stdout]          24: <rustc_expand::expand::MacroExpander>::fully_expand_fragment
[INFO] [stdout]          25: <rustc_expand::expand::MacroExpander>::expand_crate
[INFO] [stdout]          26: rustc_interface::passes::resolver_for_lowering
[INFO] [stdout]          27: rustc_query_impl::plumbing::__rust_begin_short_backtrace::<rustc_query_impl::query_impl::resolver_for_lowering::dynamic_query::{closure#2}::{closure#0}, rustc_middle::query::erase::Erased<[u8; 8]>>
[INFO] [stdout]          28: rustc_query_system::query::plumbing::try_execute_query::<rustc_query_impl::DynamicConfig<rustc_query_system::query::caches::SingleCache<rustc_middle::query::erase::Erased<[u8; 8]>>, false, false, false>, rustc_query_impl::plumbing::QueryCtxt, false>
[INFO] [stdout]          29: rustc_query_impl::query_impl::resolver_for_lowering::get_query_non_incr::__rust_end_short_backtrace
[INFO] [stdout]          30: rustc_interface::interface::run_compiler::<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#0}>::{closure#0}
[INFO] [stdout]          31: std::sys_common::backtrace::__rust_begin_short_backtrace::<rustc_interface::util::run_in_thread_with_globals<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#0}>::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#0}::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>
[INFO] [stdout]          32: <<std::thread::Builder>::spawn_unchecked_<rustc_interface::util::run_in_thread_with_globals<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#0}>::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#0}::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#1} as core::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]          33: <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once
[INFO] [stdout]                     at /rustc/bfe97fcae016881ad333f0ff8cea2cadb9cf136c/library/alloc/src/boxed.rs:2016:9
[INFO] [stdout]          34: <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once
[INFO] [stdout]                     at /rustc/bfe97fcae016881ad333f0ff8cea2cadb9cf136c/library/alloc/src/boxed.rs:2016:9
[INFO] [stdout]          35: std::sys::pal::unix::thread::Thread::new::thread_start
[INFO] [stdout]                     at /rustc/bfe97fcae016881ad333f0ff8cea2cadb9cf136c/library/std/src/sys/pal/unix/thread.rs:108:17
[INFO] [stdout]          36: <unknown>
[INFO] [stdout]          37: __clone
[INFO] [stdout]  --> src/test/returns.rs:3:24
[INFO] [stdout]   |
[INFO] [stdout] 3 | ethcontract::contract!("examples/truffle/build/contracts/AbiTypes.json");
[INFO] [stdout]   |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: failed to read artifact JSON file
[INFO] [stdout]        
[INFO] [stdout]        Caused by:
[INFO] [stdout]            No such file or directory (os error 2)
[INFO] [stdout]        
[INFO] [stdout]        Stack backtrace:
[INFO] [stdout]           0: <E as anyhow::context::ext::StdError>::ext_context
[INFO] [stdout]           1: anyhow::context::<impl anyhow::Context<T,E> for core::result::Result<T,E>>::context
[INFO] [stdout]           2: ethcontract_generate::source::get_local_contract
[INFO] [stdout]           3: ethcontract_generate::source::Source::artifact_json
[INFO] [stdout]           4: ethcontract_derive::generate
[INFO] [stdout]           5: ethcontract_derive::contract
[INFO] [stdout]           6: core::ops::function::Fn::call
[INFO] [stdout]           7: proc_macro::bridge::client::Client<proc_macro::TokenStream,proc_macro::TokenStream>::expand1::{{closure}}::{{closure}}
[INFO] [stdout]           8: proc_macro::bridge::client::run_client::{{closure}}::{{closure}}::{{closure}}
[INFO] [stdout]           9: proc_macro::bridge::scoped_cell::ScopedCell<T>::set::{{closure}}
[INFO] [stdout]          10: proc_macro::bridge::scoped_cell::ScopedCell<T>::replace
[INFO] [stdout]          11: proc_macro::bridge::client::run_client::{{closure}}::{{closure}}
[INFO] [stdout]          12: std::thread::local::LocalKey<T>::try_with
[INFO] [stdout]          13: proc_macro::bridge::client::run_client::{{closure}}
[INFO] [stdout]          14: <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]          15: std::panicking::try::do_call
[INFO] [stdout]          16: __rust_try
[INFO] [stdout]          17: std::panicking::try
[INFO] [stdout]          18: proc_macro::bridge::client::run_client
[INFO] [stdout]          19: proc_macro::bridge::client::Client<proc_macro::TokenStream,proc_macro::TokenStream>::expand1::{{closure}}
[INFO] [stdout]          20: proc_macro::bridge::selfless_reify::reify_to_extern_c_fn_hrt_bridge::wrapper
[INFO] [stdout]          21: <proc_macro::bridge::server::MaybeCrossThread<rustc_expand::proc_macro::MessagePipe<proc_macro::bridge::buffer::Buffer>> as proc_macro::bridge::server::ExecutionStrategy>::run_bridge_and_client::<proc_macro::bridge::server::Dispatcher<proc_macro::bridge::server::MarkedTypes<rustc_expand::proc_macro_server::Rustc>>>
[INFO] [stdout]          22: <proc_macro::bridge::client::Client<proc_macro::TokenStream, proc_macro::TokenStream>>::run::<rustc_expand::proc_macro_server::Rustc, proc_macro::bridge::server::MaybeCrossThread<rustc_expand::proc_macro::MessagePipe<proc_macro::bridge::buffer::Buffer>>>
[INFO] [stdout]          23: <rustc_expand::proc_macro::BangProcMacro as rustc_expand::base::BangProcMacro>::expand
[INFO] [stdout]          24: <rustc_expand::expand::MacroExpander>::fully_expand_fragment
[INFO] [stdout]          25: <rustc_expand::expand::MacroExpander>::expand_crate
[INFO] [stdout]          26: rustc_interface::passes::resolver_for_lowering
[INFO] [stdout]          27: rustc_query_impl::plumbing::__rust_begin_short_backtrace::<rustc_query_impl::query_impl::resolver_for_lowering::dynamic_query::{closure#2}::{closure#0}, rustc_middle::query::erase::Erased<[u8; 8]>>
[INFO] [stdout]          28: rustc_query_system::query::plumbing::try_execute_query::<rustc_query_impl::DynamicConfig<rustc_query_system::query::caches::SingleCache<rustc_middle::query::erase::Erased<[u8; 8]>>, false, false, false>, rustc_query_impl::plumbing::QueryCtxt, false>
[INFO] [stdout]          29: rustc_query_impl::query_impl::resolver_for_lowering::get_query_non_incr::__rust_end_short_backtrace
[INFO] [stdout]          30: rustc_interface::interface::run_compiler::<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#0}>::{closure#0}
[INFO] [stdout]          31: std::sys_common::backtrace::__rust_begin_short_backtrace::<rustc_interface::util::run_in_thread_with_globals<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#0}>::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#0}::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>
[INFO] [stdout]          32: <<std::thread::Builder>::spawn_unchecked_<rustc_interface::util::run_in_thread_with_globals<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#0}>::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#0}::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#1} as core::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]          33: <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once
[INFO] [stdout]                     at /rustc/bfe97fcae016881ad333f0ff8cea2cadb9cf136c/library/alloc/src/boxed.rs:2016:9
[INFO] [stdout]          34: <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once
[INFO] [stdout]                     at /rustc/bfe97fcae016881ad333f0ff8cea2cadb9cf136c/library/alloc/src/boxed.rs:2016:9
[INFO] [stdout]          35: std::sys::pal::unix::thread::Thread::new::thread_start
[INFO] [stdout]                     at /rustc/bfe97fcae016881ad333f0ff8cea2cadb9cf136c/library/std/src/sys/pal/unix/thread.rs:108:17
[INFO] [stdout]          36: <unknown>
[INFO] [stdout]          37: __clone
[INFO] [stdout]   --> src/test/mod.rs:84:24
[INFO] [stdout]    |
[INFO] [stdout] 84 | ethcontract::contract!("examples/truffle/build/contracts/ERC20.json");
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `ERC20` in this scope
[INFO] [stdout]   --> src/test/mod.rs:86:41
[INFO] [stdout]    |
[INFO] [stdout] 86 | fn setup() -> (Mock, DynWeb3, Contract, ERC20) {
[INFO] [stdout]    |                                         ^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `TryFrom` is imported redundantly
[INFO] [stdout]  --> src/details/mod.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::convert::TryFrom;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]  --> /rustc/bfe97fcae016881ad333f0ff8cea2cadb9cf136c/library/std/src/prelude/mod.rs:129:13
[INFO] [stdout]   |
[INFO] [stdout]   = note: the item `TryFrom` is already defined here
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Mock` is imported redundantly
[INFO] [stdout]  --> src/test/eth_block_number.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::*;
[INFO] [stdout]   |     -------- the item `Mock` is already imported here
[INFO] [stdout] 2 | use crate::Mock;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Mock` is imported redundantly
[INFO] [stdout]  --> src/test/eth_chain_id.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::*;
[INFO] [stdout]   |     -------- the item `Mock` is already imported here
[INFO] [stdout] 2 | use crate::Mock;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Mock` is imported redundantly
[INFO] [stdout]  --> src/test/eth_gas_price.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::*;
[INFO] [stdout]   |     -------- the item `Mock` is already imported here
[INFO] [stdout] 2 | use crate::Mock;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Mock` is imported redundantly
[INFO] [stdout]  --> src/test/eth_transaction_count.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::*;
[INFO] [stdout]   |     -------- the item `Mock` is already imported here
[INFO] [stdout] 2 | use crate::Mock;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `BlockNumber` is imported redundantly
[INFO] [stdout]  --> src/test/eth_transaction_count.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::*;
[INFO] [stdout]   |     -------- the item `BlockNumber` is already imported here
[INFO] [stdout] 2 | use crate::Mock;
[INFO] [stdout] 3 | use ethcontract::BlockNumber;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Mock` is imported redundantly
[INFO] [stdout]  --> src/test/net_version.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::*;
[INFO] [stdout]   |     -------- the item `Mock` is already imported here
[INFO] [stdout] 2 | use crate::Mock;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ERC20`
[INFO] [stdout]   --> src/test/batch.rs:10:17
[INFO] [stdout]    |
[INFO] [stdout] 10 |         .expect(ERC20::signatures().name())
[INFO] [stdout]    |                 ^^^^^ use of undeclared type `ERC20`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ERC20`
[INFO] [stdout]   --> src/test/batch.rs:15:17
[INFO] [stdout]    |
[INFO] [stdout] 15 |         .expect(ERC20::signatures().symbol())
[INFO] [stdout]    |                 ^^^^^ use of undeclared type `ERC20`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ERC20`
[INFO] [stdout]   --> src/test/batch.rs:20:17
[INFO] [stdout]    |
[INFO] [stdout] 20 |         .expect(ERC20::signatures().decimals())
[INFO] [stdout]    |                 ^^^^^ use of undeclared type `ERC20`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ERC20`
[INFO] [stdout]   --> src/test/batch.rs:25:17
[INFO] [stdout]    |
[INFO] [stdout] 25 |         .expect(ERC20::signatures().total_supply())
[INFO] [stdout]    |                 ^^^^^ use of undeclared type `ERC20`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ERC20`
[INFO] [stdout]   --> src/test/eth_block_number.rs:17:21
[INFO] [stdout]    |
[INFO] [stdout] 17 |     contract.expect(ERC20::signatures().transfer());
[INFO] [stdout]    |                     ^^^^^ use of undeclared type `ERC20`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ERC20`
[INFO] [stdout]   --> src/test/eth_block_number.rs:36:17
[INFO] [stdout]    |
[INFO] [stdout] 36 |         .expect(ERC20::signatures().transfer())
[INFO] [stdout]    |                 ^^^^^ use of undeclared type `ERC20`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ERC20`
[INFO] [stdout]   --> src/test/eth_block_number.rs:55:21
[INFO] [stdout]    |
[INFO] [stdout] 55 |     contract.expect(ERC20::signatures().transfer());
[INFO] [stdout]    |                     ^^^^^ use of undeclared type `ERC20`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ERC20`
[INFO] [stdout]  --> src/test/eth_estimate_gas.rs:8:21
[INFO] [stdout]   |
[INFO] [stdout] 8 |     contract.expect(ERC20::signatures().transfer());
[INFO] [stdout]   |                     ^^^^^ use of undeclared type `ERC20`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ERC20`
[INFO] [stdout]   --> src/test/eth_estimate_gas.rs:25:21
[INFO] [stdout]    |
[INFO] [stdout] 25 |     contract.expect(ERC20::signatures().transfer());
[INFO] [stdout]    |                     ^^^^^ use of undeclared type `ERC20`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ERC20`
[INFO] [stdout]   --> src/test/eth_estimate_gas.rs:82:21
[INFO] [stdout]    |
[INFO] [stdout] 82 |     contract.expect(ERC20::signatures().transfer());
[INFO] [stdout]    |                     ^^^^^ use of undeclared type `ERC20`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ERC20`
[INFO] [stdout]    --> src/test/eth_estimate_gas.rs:114:21
[INFO] [stdout]     |
[INFO] [stdout] 114 |     contract.expect(ERC20::signatures().transfer());
[INFO] [stdout]     |                     ^^^^^ use of undeclared type `ERC20`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ERC20`
[INFO] [stdout]  --> src/test/eth_get_transaction_receipt.rs:8:21
[INFO] [stdout]   |
[INFO] [stdout] 8 |     contract.expect(ERC20::signatures().transfer());
[INFO] [stdout]   |                     ^^^^^ use of undeclared type `ERC20`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ERC20`
[INFO] [stdout]   --> src/test/eth_transaction_count.rs:23:21
[INFO] [stdout]    |
[INFO] [stdout] 23 |     contract.expect(ERC20::signatures().transfer());
[INFO] [stdout]    |                     ^^^^^ use of undeclared type `ERC20`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ERC20`
[INFO] [stdout]   --> src/test/eth_transaction_count.rs:51:21
[INFO] [stdout]    |
[INFO] [stdout] 51 |     contract.expect(ERC20::signatures().transfer());
[INFO] [stdout]    |                     ^^^^^ use of undeclared type `ERC20`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ERC20`
[INFO] [stdout]   --> src/test/eth_transaction_count.rs:92:21
[INFO] [stdout]    |
[INFO] [stdout] 92 |     contract.expect(ERC20::signatures().transfer());
[INFO] [stdout]    |                     ^^^^^ use of undeclared type `ERC20`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]  --> src/test/returns.rs:7:43
[INFO] [stdout]   |
[INFO] [stdout] 7 |     let contract = Mock::new(1234).deploy(AbiTypes::raw_contract().abi.clone());
[INFO] [stdout]   |                                           ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]  --> src/test/returns.rs:9:21
[INFO] [stdout]   |
[INFO] [stdout] 9 |     contract.expect(AbiTypes::signatures().get_void());
[INFO] [stdout]   |                     ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]   --> src/test/returns.rs:10:21
[INFO] [stdout]    |
[INFO] [stdout] 10 |     contract.expect(AbiTypes::signatures().get_u8());
[INFO] [stdout]    |                     ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]   --> src/test/returns.rs:11:21
[INFO] [stdout]    |
[INFO] [stdout] 11 |     contract.expect(AbiTypes::signatures().abiv_2_struct());
[INFO] [stdout]    |                     ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]   --> src/test/returns.rs:12:21
[INFO] [stdout]    |
[INFO] [stdout] 12 |     contract.expect(AbiTypes::signatures().abiv_2_array_of_struct());
[INFO] [stdout]    |                     ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]   --> src/test/returns.rs:13:21
[INFO] [stdout]    |
[INFO] [stdout] 13 |     contract.expect(AbiTypes::signatures().multiple_results());
[INFO] [stdout]    |                     ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]   --> src/test/returns.rs:14:21
[INFO] [stdout]    |
[INFO] [stdout] 14 |     contract.expect(AbiTypes::signatures().multiple_results_struct());
[INFO] [stdout]    |                     ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]   --> src/test/returns.rs:16:20
[INFO] [stdout]    |
[INFO] [stdout] 16 |     let instance = AbiTypes::at(&contract.web3(), contract.address);
[INFO] [stdout]    |                    ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]   --> src/test/returns.rs:39:43
[INFO] [stdout]    |
[INFO] [stdout] 39 |     let contract = Mock::new(1234).deploy(AbiTypes::raw_contract().abi.clone());
[INFO] [stdout]    |                                           ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]   --> src/test/returns.rs:42:17
[INFO] [stdout]    |
[INFO] [stdout] 42 |         .expect(AbiTypes::signatures().get_void())
[INFO] [stdout]    |                 ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]   --> src/test/returns.rs:44:21
[INFO] [stdout]    |
[INFO] [stdout] 44 |     contract.expect(AbiTypes::signatures().get_u8()).returns(42);
[INFO] [stdout]    |                     ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]   --> src/test/returns.rs:46:17
[INFO] [stdout]    |
[INFO] [stdout] 46 |         .expect(AbiTypes::signatures().abiv_2_struct())
[INFO] [stdout]    |                 ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]   --> src/test/returns.rs:49:17
[INFO] [stdout]    |
[INFO] [stdout] 49 |         .expect(AbiTypes::signatures().abiv_2_array_of_struct())
[INFO] [stdout]    |                 ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]   --> src/test/returns.rs:52:17
[INFO] [stdout]    |
[INFO] [stdout] 52 |         .expect(AbiTypes::signatures().multiple_results())
[INFO] [stdout]    |                 ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]   --> src/test/returns.rs:55:17
[INFO] [stdout]    |
[INFO] [stdout] 55 |         .expect(AbiTypes::signatures().multiple_results_struct())
[INFO] [stdout]    |                 ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]   --> src/test/returns.rs:58:20
[INFO] [stdout]    |
[INFO] [stdout] 58 |     let instance = AbiTypes::at(&contract.web3(), contract.address);
[INFO] [stdout]    |                    ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]   --> src/test/returns.rs:81:43
[INFO] [stdout]    |
[INFO] [stdout] 81 |     let contract = Mock::new(1234).deploy(AbiTypes::raw_contract().abi.clone());
[INFO] [stdout]    |                                           ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]   --> src/test/returns.rs:84:17
[INFO] [stdout]    |
[INFO] [stdout] 84 |         .expect(AbiTypes::signatures().get_void())
[INFO] [stdout]    |                 ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]   --> src/test/returns.rs:87:17
[INFO] [stdout]    |
[INFO] [stdout] 87 |         .expect(AbiTypes::signatures().get_u8())
[INFO] [stdout]    |                 ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]   --> src/test/returns.rs:90:17
[INFO] [stdout]    |
[INFO] [stdout] 90 |         .expect(AbiTypes::signatures().abiv_2_struct())
[INFO] [stdout]    |                 ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]   --> src/test/returns.rs:93:17
[INFO] [stdout]    |
[INFO] [stdout] 93 |         .expect(AbiTypes::signatures().abiv_2_array_of_struct())
[INFO] [stdout]    |                 ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]   --> src/test/returns.rs:96:17
[INFO] [stdout]    |
[INFO] [stdout] 96 |         .expect(AbiTypes::signatures().multiple_results())
[INFO] [stdout]    |                 ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]   --> src/test/returns.rs:99:17
[INFO] [stdout]    |
[INFO] [stdout] 99 |         .expect(AbiTypes::signatures().multiple_results_struct())
[INFO] [stdout]    |                 ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]    --> src/test/returns.rs:102:20
[INFO] [stdout]     |
[INFO] [stdout] 102 |     let instance = AbiTypes::at(&contract.web3(), contract.address);
[INFO] [stdout]     |                    ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]    --> src/test/returns.rs:125:43
[INFO] [stdout]     |
[INFO] [stdout] 125 |     let contract = Mock::new(1234).deploy(AbiTypes::raw_contract().abi.clone());
[INFO] [stdout]     |                                           ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]    --> src/test/returns.rs:128:17
[INFO] [stdout]     |
[INFO] [stdout] 128 |         .expect(AbiTypes::signatures().get_void())
[INFO] [stdout]     |                 ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]    --> src/test/returns.rs:131:17
[INFO] [stdout]     |
[INFO] [stdout] 131 |         .expect(AbiTypes::signatures().get_u8())
[INFO] [stdout]     |                 ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]    --> src/test/returns.rs:134:17
[INFO] [stdout]     |
[INFO] [stdout] 134 |         .expect(AbiTypes::signatures().abiv_2_struct())
[INFO] [stdout]     |                 ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]    --> src/test/returns.rs:137:17
[INFO] [stdout]     |
[INFO] [stdout] 137 |         .expect(AbiTypes::signatures().abiv_2_array_of_struct())
[INFO] [stdout]     |                 ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]    --> src/test/returns.rs:140:17
[INFO] [stdout]     |
[INFO] [stdout] 140 |         .expect(AbiTypes::signatures().multiple_results())
[INFO] [stdout]     |                 ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]    --> src/test/returns.rs:143:17
[INFO] [stdout]     |
[INFO] [stdout] 143 |         .expect(AbiTypes::signatures().multiple_results_struct())
[INFO] [stdout]     |                 ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AbiTypes`
[INFO] [stdout]    --> src/test/returns.rs:146:20
[INFO] [stdout]     |
[INFO] [stdout] 146 |     let instance = AbiTypes::at(&contract.web3(), contract.address);
[INFO] [stdout]     |                    ^^^^^^^^ use of undeclared type `AbiTypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ERC20`
[INFO] [stdout]   --> src/test/mod.rs:89:32
[INFO] [stdout]    |
[INFO] [stdout] 89 |     let contract = mock.deploy(ERC20::raw_contract().abi.clone());
[INFO] [stdout]    |                                ^^^^^ use of undeclared type `ERC20`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ERC20`
[INFO] [stdout]   --> src/test/mod.rs:90:24
[INFO] [stdout]    |
[INFO] [stdout] 90 |     let mut instance = ERC20::at(&web3, contract.address);
[INFO] [stdout]    |                        ^^^^^ use of undeclared type `ERC20`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ERC20`
[INFO] [stdout]   --> src/test/mod.rs:99:32
[INFO] [stdout]    |
[INFO] [stdout] 99 |     let contract = mock.deploy(ERC20::raw_contract().abi.clone());
[INFO] [stdout]    |                                ^^^^^ use of undeclared type `ERC20`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ERC20`
[INFO] [stdout]    --> src/test/mod.rs:106:17
[INFO] [stdout]     |
[INFO] [stdout] 106 |         .expect(ERC20::signatures().balance_of())
[INFO] [stdout]     |                 ^^^^^ use of undeclared type `ERC20`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ERC20`
[INFO] [stdout]    --> src/test/mod.rs:113:17
[INFO] [stdout]     |
[INFO] [stdout] 113 |         .expect(ERC20::signatures().transfer())
[INFO] [stdout]     |                 ^^^^^ use of undeclared type `ERC20`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ERC20`
[INFO] [stdout]    --> src/test/mod.rs:135:17
[INFO] [stdout]     |
[INFO] [stdout] 135 |         .expect(ERC20::signatures().balance_of())
[INFO] [stdout]     |                 ^^^^^ use of undeclared type `ERC20`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ERC20`
[INFO] [stdout]    --> src/test/mod.rs:142:17
[INFO] [stdout]     |
[INFO] [stdout] 142 |         .expect(ERC20::signatures().balance_of())
[INFO] [stdout]     |                 ^^^^^ use of undeclared type `ERC20`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ERC20`
[INFO] [stdout]    --> src/test/mod.rs:146:27
[INFO] [stdout]     |
[INFO] [stdout] 146 |     let actual_contract = ERC20::at(&mock.web3(), contract.address);
[INFO] [stdout]     |                           ^^^^^ use of undeclared type `ERC20`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 58 previous errors; 7 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0412, E0433.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0412`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `ethcontract-mock` (lib test) due to 59 previous errors; 7 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "b343fd3ab227ce73298c78ea56e507ce5ad144e825013f2a58ec3e208ddb7b35", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b343fd3ab227ce73298c78ea56e507ce5ad144e825013f2a58ec3e208ddb7b35", kill_on_drop: false }`
[INFO] [stdout] b343fd3ab227ce73298c78ea56e507ce5ad144e825013f2a58ec3e208ddb7b35
