aboutsummaryrefslogtreecommitdiffstats
path: root/test/libsolidity/syntaxTests/constructor/constructor_visibility.sol
blob: f9c4b9b98d1fd673a6569fc407a9378505c53dcd (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
// The constructor of a base class should not be visible in the derived class
contract A { constructor(string memory) public { } }
contract B is A {
  function f() pure public {
    A x = A(0); // convert from address
    string memory y = "ab";
    A(y); // call as a function is invalid
    x;
  }
}
// ----
// TypeError: (250-254): Explicit type conversion not allowed from "string memory" to "contract A".