solidity/test/libsolidity/syntaxTests/multiSource/circular_import_3.sol
Bhargava Shastry e2a2276272 Contract level checker: Disallow free function redefinition and alias
shadowing another free function

Co-authored-by: chriseth <chris@ethereum.org>
2020-09-25 17:09:58 +02:00

15 lines
640 B
Solidity

==== Source: s1.sol ====
import {f as g, g as h} from "s2.sol";
function f() pure returns (uint) { return h() - g(); }
==== Source: s2.sol ====
import {f as h} from "s1.sol";
function f() pure returns (uint) { return 2; }
function g() pure returns (uint) { return 4; }
==== Source: s3.sol ====
import "s1.sol";
import "s2.sol";
// ----
// DeclarationError 1686: (s1.sol:39-93): Function with same name and parameter types defined twice.
// DeclarationError 1686: (s2.sol:31-77): Function with same name and parameter types defined twice.
// DeclarationError 1686: (s2.sol:78-124): Function with same name and parameter types defined twice.