solang
solang copied to clipboard
Solidity Compiler for Solana and Polkadot
Currently, Solang checks the semantic correctness of the code while building the AST, i.e. it happens during a parse tree traversal. In some cases, we are not able to infer...
While browsing the solidity docs I came across its [SMT based checks](https://docs.soliditylang.org/en/latest/smtchecker.html). I think we could implement this as well in the future.
When `solang --standard-json` is run, the output from the compiler is in the [standard json](https://docs.soliditylang.org/en/v0.8.13/using-the-compiler.html#compiler-input-and-output-json-description) format. However, the input is not. 1) Parse input on stdin as json using the...
Call `seal_debug_message` in `assert_failure`, to get messages from `require()` into the debug message buffer.
Our own `memcpy` function is not exported as a public symbol, preventing LLVM from liking it to its memory copy intrinsic function. We should set this up and update our...
Cannot build directly from `cargo build` or `cargo install` because of this missing header file: https://github.com/hyperledger-labs/solang/blob/c046e64db8890d0db83d65cbfd2bb0918b7ffd1e/src/linker/linker.cpp#L2 Looking at the docker image it seems this header file might be coming from...
This contract works fine for `solc`, but crashes on Solang (for all targets): ```solidity contract Testing { uint16[2][4][] stor_arr; function getThis() public returns (uint16) { uint16[2][4][] memory arr2 = stor_arr;...
The visual studio code extension gives compiler diagnostics (i.e. compiler warnings and errors). For functions, variables, and all other types (events, contracts, etc) it should be able to: - Go...
When we declare a constant variable that has an initializer, e.g. `bool constant x = 0 < 2`, we evaluate the actual constant value in compiler time. Currently, there is...
Currently, the tests in `tests/contract_testcases/` just generate the ast dot file for each test. It would be useful if the tests included some more verification. For example https://github.com/hyperledger-labs/solang/blob/main/tests/contract_testcases/solana/structs/parse_structs_06.sol tests that...