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

Running syntax tests via IR #15670

Open
cameel opened this issue Dec 20, 2024 · 0 comments
Open

Running syntax tests via IR #15670

cameel opened this issue Dec 20, 2024 · 0 comments
Labels
low impact Changes are not very noticeable or potential benefits are limited. medium effort Default level of effort must have eventually Something we consider essential but not enough to prevent us from releasing Solidity 1.0 without it. testing 🔨

Comments

@cameel
Copy link
Member

cameel commented Dec 20, 2024

Abstract

Currently our syntax tests get compiled only using the legacy codegen. We should either switch to compiling via IR or compile using both.

Motivation

Compiling via IR would increase test coverage and and bugs like #15669 show that we really need that.

This was also originally an issue for EOF implementation because it only works via IR.

Note that this is likely going to significantly increase the test running time.

Specification

We already have compileViaYul flag in syntax tests:

m_compileViaYul = m_reader.stringSetting("compileViaYul", "false");

The solution would be to either switch the default to true or start supporting also like in semantic tests to compile both ways (and make it the default). Then fix any issues that come up in the tests.

@cameel cameel added testing 🔨 medium effort Default level of effort low impact Changes are not very noticeable or potential benefits are limited. must have eventually Something we consider essential but not enough to prevent us from releasing Solidity 1.0 without it. labels Dec 20, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
low impact Changes are not very noticeable or potential benefits are limited. medium effort Default level of effort must have eventually Something we consider essential but not enough to prevent us from releasing Solidity 1.0 without it. testing 🔨
Projects
None yet
Development

No branches or pull requests

1 participant