solidity
solidity copied to clipboard
Solidity, the Smart Contract Programming Language
This PR replaces occurrences of `CMAKE_SOURCE_DIR` in the CMake configuration file with `CMAKE_CURRENT_SOURCE_DIR`. This change would allow the project to be usable as a CMake dependency for other CMake projects.
## Abstract I am building a general purpose smart contract library called Compose. @cameel suggested I use free functions instead of Solidity libraries for my particular use case. I think...
Summary This PR introduces a new peephole optimization that simplifies and reduces the bytecode for Solidity’s function selector guard emitted in the dispatcher of every contract. The standard guard: PUSH1...
## Description The language allows constant state variables of function types, but they are currently unusable, because it is impossible to initialize them. That's because a reference you get when...
## Steps to reproduce Run `isoltest` on a specific test (given below), trying to update it interactively to add gas usage to expected output: ```sh ./test/tools/isoltest --no-smt -t "semanticTests/deployedCodeExclusion/module_function_deployed*" --enforce-gas-cost...
## Description A function selector accessed through `this` is considered compile-time constant, even though `this` itself is not (the address won't change at runtime but is not known at compilation...
This PR fixes a bug in implementation of accessing an event which is defined in a separated, imported contract. Closes: https://github.com/argotorg/solidity/issues/16314
## Description This code: ```Solidity // SPDX-License-Identifier: MIT pragma solidity =0.8.29; import * as Test2 from "./test2.sol"; contract A { function returnAddress() external { emit Test2.Transfer(address(0), address(0), 14); } }...
## Description Please comment in this thread if you want to report trivial issues you find in the repository. This includes: - Typos and minor grammar issues in variable names,...