solidity/test/libsolidity/syntaxTests/inlineAssembly/push0_disallowed.sol
hrkrshnn 41ce3feb0a test: some tests for push0
1. `push0_disallowed.yul`: checks if `push0()` is a valid builtin in strict Yul
2. `push0_disallowed.sol`: checks if `push0()` is a valid builtin in inline assembly
3. `push0.sol`: simple semantic test that returns 0
4. `evmone_support.sol`: tests if push0 works properly in evmone
5. Updated some bytecode too large tests to use `shanghai` as version
6. Updated various tests where `push1 0` was hardcoded in different forms / expectations on bytecode
size (`Assembler.cpp`, `GasCosts.cpp`, `SolidityCompiler.cpp`, `SolidityExpressionCompiler.cpp`)
2023-04-12 00:10:24 +02:00

20 lines
381 B
Solidity

// Ok
contract push0 {}
contract A {
// Ok, warning about shadowing
function push0() external {}
}
contract C {
function f() external {
assembly {
// Not okay
push0()
}
}
}
// ----
// Warning 2519: (77-105): This declaration shadows an existing declaration.
// DeclarationError 4619: (205-210): Function "push0" not found.