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

SMTChecker: Fail to parse abi.encodeCall #14989

Open
Subway2023 opened this issue Apr 5, 2024 · 0 comments
Open

SMTChecker: Fail to parse abi.encodeCall #14989

Subway2023 opened this issue Apr 5, 2024 · 0 comments
Assignees
Projects

Comments

@Subway2023
Copy link

Description

0.8.14 release claims that the SMTChecker supports the abi.encodeCall. However, when using abi.encodeCall to encode function, SMTChecker will crash

Environment

  • Compiler version: 0.8.25
  • Target EVM version (as per compiler settings): No restrictions
  • Framework/IDE (e.g. Truffle or Remix): Remix and Command-line
  • EVM execution environment / backend / blockchain client: None
  • Operating system: Linux

Steps to Reproduce

contract C {
    function f()public {
        bytes memory result=abi.encodeCall(this.f, ());
        assert(result.length==4);
    }
}

Remix

1712287544633
Successfully executed.

Command-line

solc C.sol --model-checker-ext-calls trusted --model-checker-timeout 0 --model-checker-engine chc --model-checker-solvers z3

or

solc C.sol --model-checker-ext-calls trusted --model-checker-timeout 0 --model-checker-engine bmc --model-checker-bmc-loop-iterations 10 --model-checker-solvers z3

1712287707139

SMTChecker crash

@cameel cameel added the smt label Apr 8, 2024
@blishko blishko added this to To Do in SMT Checker via automation Apr 17, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
SMT Checker
  
To Do
Development

No branches or pull requests

3 participants