diff options
-rw-r--r-- | CMakeLists.txt | 1 | ||||
-rw-r--r-- | docs/contracts.rst | 16 | ||||
-rw-r--r-- | libevmasm/CMakeLists.txt | 2 |
3 files changed, 10 insertions, 9 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 1844b2ed..4ac56b43 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -21,6 +21,7 @@ include(EthCcache) # Let's find our dependencies include(EthDependencies) include(jsoncpp) +include_directories(${JSONCPP_INCLUDE_DIR}) find_package(Threads) diff --git a/docs/contracts.rst b/docs/contracts.rst index a1f2895c..17eb23f7 100644 --- a/docs/contracts.rst +++ b/docs/contracts.rst @@ -841,10 +841,10 @@ Details are given in the following example. :: - pragma solidity ^0.4.16; + pragma solidity ^0.4.22; contract owned { - function owned() { owner = msg.sender; } + constructor() { owner = msg.sender; } address owner; } @@ -875,7 +875,7 @@ Details are given in the following example. // also a base class of `mortal`, yet there is only a single // instance of `owned` (as for virtual inheritance in C++). contract named is owned, mortal { - function named(bytes32 name) { + constructor(bytes32 name) { Config config = Config(0xD5f9D8D94886E70b06E474c3fB14Fd43E2f23970); NameReg(config.lookup(1)).register(name); } @@ -913,10 +913,10 @@ Note that above, we call ``mortal.kill()`` to "forward" the destruction request. The way this is done is problematic, as seen in the following example:: - pragma solidity ^0.4.0; + pragma solidity ^0.4.22; contract owned { - function owned() public { owner = msg.sender; } + constructor() public { owner = msg.sender; } address owner; } @@ -942,10 +942,10 @@ derived override, but this function will bypass ``Base1.kill``, basically because it does not even know about ``Base1``. The way around this is to use ``super``:: - pragma solidity ^0.4.0; + pragma solidity ^0.4.22; contract owned { - function owned() public { owner = msg.sender; } + constructor() public { owner = msg.sender; } address owner; } @@ -1033,7 +1033,7 @@ Arguments for Base Constructors Derived contracts need to provide all arguments needed for the base constructors. This can be done in two ways:: - pragma solidity ^0.4.0; + pragma solidity ^0.4.22; contract Base { uint x; diff --git a/libevmasm/CMakeLists.txt b/libevmasm/CMakeLists.txt index cfd59dff..86192c1b 100644 --- a/libevmasm/CMakeLists.txt +++ b/libevmasm/CMakeLists.txt @@ -2,4 +2,4 @@ file(GLOB sources "*.cpp") file(GLOB headers "*.h") add_library(evmasm ${sources} ${headers}) -target_link_libraries(evmasm PUBLIC jsoncpp devcore) +target_link_libraries(evmasm PUBLIC devcore) |