Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Working example rubixi - panic exeption #3

Closed
mstad opened this issue Mar 7, 2021 · 1 comment
Closed

Working example rubixi - panic exeption #3

mstad opened this issue Mar 7, 2021 · 1 comment

Comments

@mstad
Copy link

mstad commented Mar 7, 2021

I installed in ubuntu 18.04 ethBMC with:

  • rustc 1.52.0-nightly (caca2121f 2021-03-05)
  • geth 1.8.27-stable-4bcc0a37
  • Yices 2.6.2

After launching the' cargo build --release' in the main EthBMC folder,
I receive some following warnings:
------------------- 1 -------------------------
Compiling ethereum-newtypes v0.1.0 (/home/mirkostad/Programmi/EthBMC-master/evmexec/ethereum-newtypes)
warning: unused doc comment
--> evmexec/ethereum-newtypes/src/lib.rs:16:1
|
16 | /// A wrapper around U256, pads to even length by default
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
|
= note: #[warn(unused_doc_comments)] on by default
= help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion

warning: unused doc comment
--> evmexec/ethereum-newtypes/src/lib.rs:19:1
|
19 | /// An ethereum account address, pads to 20 byte hex representation by default
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
|
= help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion

warning: unused doc comment
--> evmexec/ethereum-newtypes/src/lib.rs:22:1
|
22 | /// An ethereum Hash, pads to 32 byte hex representation by default
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
|
= help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion

warning: 3 warnings emitted

-------------------------------- 2 ----------------------------------------------------
Compiling evmexec v0.1.0 (/home/mirkostad/Programmi/EthBMC-master/evmexec)
warning: use of deprecated associated function std::error::Error::description: use the Display impl or to_string()
--> evmexec/src/evm.rs:101:62
|
101 | Err(why) => panic!("couldn't spawn evm: {}", why.description()),
| ^^^^^^^^^^^
|
= note: #[warn(deprecated)] on by default

warning: variant is never constructed: Yes
--> evmexec/src/evm.rs:239:5
|
239 | Yes,
| ^^^
|
= note: #[warn(dead_code)] on by default

warning: 2 warnings emitted

---------------------------------------------- 3 -----------------------------------------------------------
warning: unused doc comment
--> parity_connector/src/types.rs:27:1
|
27 | /// A rust representation of an ethereum block, reduced to the fields used by ethAEG
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
|
= note: #[warn(unused_doc_comments)] on by default
= help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion

warning: method eth_blockNumber should have a snake case name
--> parity_connector/src/client.rs:9:12
|
9 | pub fn eth_blockNumber(&mut self) -> RpcRequest;
| ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: eth_block_number
|
= note: #[warn(non_snake_case)] on by default

warning: method eth_getBlockByNumber should have a snake case name
--> parity_connector/src/client.rs:12:12
|
12 | pub fn eth_getBlockByNumber(&mut self, number: BlockSelector, as_tx: bool) -> RpcRequest;
| ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: eth_get_block_by_number

warning: method eth_getCode should have a snake case name
--> parity_connector/src/client.rs:15:12
|
15 | pub fn eth_getCode(&mut self, address: Address, number: BlockSelector) -> RpcRequest;
| ^^^^^^^^^^^ help: convert the identifier to snake case: eth_get_code

warning: method eth_getBalance should have a snake case name
--> parity_connector/src/client.rs:18:12
|
18 | pub fn eth_getBalance(&mut self, address: Address, number: BlockSelector) -> RpcRequest;
| ^^^^^^^^^^^^^^ help: convert the identifier to snake case: eth_get_balance

warning: method eth_getStorage should have a snake case name
--> parity_connector/src/client.rs:20:12
|
20 | pub fn eth_getStorage(&mut self, address: Address, number: BlockSelector) -> RpcRequest;
| ^^^^^^^^^^^^^^ help: convert the identifier to snake case: eth_get_storage

warning: 6 warnings emitted

------------------------------------------------------ 4 -----------------------------------------------------
Compiling esvm v0.1.0 (/home/mirkostad/Programmi/EthBMC-master/esvm)
warning: unnecessary braces around block return value
--> esvm/src/se/env.rs:18:9
|
18 | { Mutex::new(HashMap::new()) };
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces
|
= note: #[warn(unused_braces)] on by default

warning: unnecessary parentheses around type
--> esvm/src/se/symbolic_state.rs:551:38
|
551 | pub fn pop1(&mut self) -> Option<(BVal)> {
| ^^^^^^ help: remove these parentheses
|
= note: #[warn(unused_parens)] on by default

warning: unnecessary braces around block return value
--> esvm/src/se/symbolic_state.rs:742:62
|
742 | static ref SAT_CACHE: RwLock<HashMap<Vec, bool>> = { RwLock::new(HashMap::new()) };
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces

warning: use of deprecated associated function std::error::Error::description: use the Display impl or to_string()
--> esvm/src/se/expr/z3.rs:58:61
|
58 | Err(why) => panic!("couldn't spawn z3: {}", why.description()),
| ^^^^^^^^^^^
|
= note: #[warn(deprecated)] on by default

warning: cannot borrow res as mutable because it is also borrowed as immutable
--> esvm/src/se/symbolic_executor/stack_ops.rs:55:25
|
43 | &res.env.blockhashes,
| ------- immutable borrow occurs here
...
55 | res.push(Arc::clone(hash));
| ^^^ ---- immutable borrow later used here
| |
| mutable borrow occurs here
|
= note: #[warn(mutable_borrow_reservation_conflict)] on by default
= warning: this borrowing pattern was not meant to be accepted, and may become a hard error in the future
= note: for more information, see issue #59159 rust-lang/rust#59159

warning: 5 warnings emitted

-------------------------------------------------------------- 5 ---------------------------------------------------------
Compiling contracts v0.1.0 (/home/mirkostad/Programmi/EthBMC-master/esvm/contracts)
warning: unused Result that must be used
--> esvm/src/main.rs:25:5
|
25 | fs::create_dir_all("log");
| ^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: #[warn(unused_must_use)] on by default
= note: this Result may be an Err variant, which should be handled

warning: 1 warning emitted

Then I tried to execute
$ ./target/release/ethbmc examples/rubixi/rubixi.yml
I receive the output in the attachment.
Do you have any suggestion?
Thanks in advance
rubixi_error.txt

@Joool
Copy link
Collaborator

Joool commented Jul 6, 2021

Should be fixed now. Please raise another issue if the error persists.

@Joool Joool closed this as completed Jul 6, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants