Comments (4)
Hey @0xalpharush! Thanks for reporting this. I have a few comments.
The compiler will currently stop after analysis in the case where no options are being requested that could trigger compilation. Devs were running into a bug wherein unnecessary compilation was being performed when --via-ir
was used. This was recently fixed (see: #14917 and the corresponding fix in #14926).
Please note that the current behaviour solves your issue unless you have observed any other options (such as the --via-ir
in the previous bug) that might be triggering compilation unnecessarily. If so, please mention those as a response to this. It would make most sense to work on a fix for that which would solve the underlying issue.
On the flip side, if you were already aware of the above and have a specific use case in mind that is not possible to implement with the current state of the compiler, feel free to outline it for us.
from solidity.
I don't see how that issue or PR is related to the --stop-after
flag or the limitations of the parsing stage that motivated my feature request. I don't think this is a bug or something that can be worked around as it is not implemented
EDIT: I think I misunderstood and you're suggesting to simply not request --bin
and it should speed up everything else. Did you mean that solc --ast
or solc --ast --via-ir
should produce a complete AST with reference ids and imports resolved or am I mistaken?
from solidity.
You understand it correctly. :)
So my ask here is for you to mention any possible cases that aren't covered by the current behaviour. In which case, it would make sense to keep this issue open. If not, I would close this issue for now.
from solidity.
Ôk
from solidity.
Related Issues (20)
- Support for CodeSection type for linking externally written/compiled bytecode with EOF supported Solidity contracts. HOT 1
- require() to accept custom errors instead of a message HOT 2
- solc --gas outputs nothing HOT 2
- A possible lack of warning for no-effect statement "x + 2";
- Segmentation Fault due to a possible syntax error HOT 1
- `--userdoc` and `--devdoc` are uknown options, `solc`
- Higher optimize-runs parameter results in yul::StackTooDeepError
- Detailed Errors Instead of Gas Error For Easy Debugging
- The unary "+" in "((x) /= (2 % x)) + (-y)" reports an error HOT 2
- Long statements can cause segmentation faults in IR-based codegen HOT 1
- https://gnosis.blockscout.com/token/0x16da39ACB6043D8152Ee1A898af978b199EC2936
- Syntax fix for docs/index.rts
- `Assembly exception for bytecode` occurs when compiling with via-ir
- Overflow operations are not detected when enabling via-ir compilation HOT 1
- SMTChecker: Z3 in CHC engine incorrectly determines assertion as safe, when it should report possible violation
- Unknown EVM memory space while function returns a memory array. HOT 1
- Public function is not visible outside of the contract. HOT 4
- Adjust documentation webpage layout to be compatible with RTD addons HOT 2
- smart contracts need to process AI related processing on chain and also on contract
- Signed int256 addition optimization HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from solidity.