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

PoC: Add initial Revive support(Take #2) #5

Draft
wants to merge 25 commits into
base: main
Choose a base branch
from

Conversation

pkhry
Copy link

@pkhry pkhry commented Mar 5, 2025

Description

See this issue

See this PR for overall description

Difference from the Multicompiler approach

  • implement all needed trait items for Resolc compiler by hand and use the compiler directly in place of MultiCompiler

used solc@0.8.28+commit.7893614a.Darwin.appleclang and resolc@0.1.0-dev.10+commit.ee650cf.llvm-18.1.8 for testing.

Issues

  • TempProject relies on using MultiCompiler in some places so this makes integration testing way harder

    • #[rstest] will no work in a lot of the cases because tests explicitely assume use of MultiCompiler instead of Compiler trait.
    • Some of the publically exposed trait constraints are not public making the tests generic requires exposing more things to the user
  • Possible difficulties integrating into foundry directly as foundry just uses MultiCompiler in a lot of the places instead of leveraging the Compiler trait.

  • Yul output should in which form? We now fail right now as we can't construct a full contract from one field.

TODOs

  • finish fixing the tests

}

impl Default for Resolc {
fn default() -> Self {
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Isnt the default method always meant to pass? I see that we throwing errors here?

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

Successfully merging this pull request may close these issues.

None yet

2 participants