Merge remote-tracking branch 'origin/develop' into breaking

This commit is contained in:
chriseth
2020-03-24 13:35:41 +01:00
856 changed files with 12967 additions and 8148 deletions
+1 -1
View File
@@ -13,7 +13,7 @@ This can be done by using the ``abstract`` keyword as shown in the following exa
defined as abstract, because the function ``utterance()`` was defined, but no implementation was
provided (no implementation body ``{ }`` was given).::
pragma solidity >=0.4.0 <0.8.0;
pragma solidity >=0.6.0 <0.8.0;
abstract contract Feline {
function utterance() public virtual returns (bytes32);
+1 -1
View File
@@ -335,7 +335,7 @@ operations as long as there is enough gas passed on to it.
::
pragma solidity >0.6.1 <0.8.0;
pragma solidity >=0.6.2 <0.8.0;
contract Test {
// This function is called for all messages sent to
+8 -8
View File
@@ -154,7 +154,7 @@ A call to ``Final.destroy()`` will call ``Base2.destroy`` because we specify it
explicitly in the final override, but this function will bypass
``Base1.destroy``. The way around this is to use ``super``::
pragma solidity >=0.4.22 <0.8.0;
pragma solidity >=0.6.0 <0.8.0;
contract owned {
constructor() public { owner = msg.sender; }
@@ -204,7 +204,7 @@ use the ``override`` keyword in the function header as shown in this example:
::
pragma solidity >=0.5.0 <0.8.0;
pragma solidity >=0.6.0 <0.8.0;
contract Base
{
@@ -227,7 +227,7 @@ bases, it has to explicitly override it:
::
pragma solidity >=0.5.0 <0.8.0;
pragma solidity >=0.6.0 <0.8.0;
contract Base1
{
@@ -253,7 +253,7 @@ that already overrides all other functions.
::
pragma solidity >=0.5.0 <0.8.0;
pragma solidity >=0.6.0 <0.8.0;
contract A { function f() public pure{} }
contract B is A {}
@@ -293,7 +293,7 @@ of the variable:
::
pragma solidity >=0.5.0 <0.8.0;
pragma solidity >=0.6.0 <0.8.0;
contract A
{
@@ -324,7 +324,7 @@ and the ``override`` keyword must be used in the overriding modifier:
::
pragma solidity >=0.5.0 <0.8.0;
pragma solidity >=0.6.0 <0.8.0;
contract Base
{
@@ -342,7 +342,7 @@ explicitly:
::
pragma solidity >=0.5.0 <0.8.0;
pragma solidity >=0.6.0 <0.8.0;
contract Base1
{
@@ -498,7 +498,7 @@ One area where inheritance linearization is especially important and perhaps not
::
pragma solidity >=0.4.0 <0.8.0;
pragma solidity >=0.4.22 <0.8.0;
contract Base1 {
constructor() public {}
+2 -2
View File
@@ -22,7 +22,7 @@ Interfaces are denoted by their own keyword:
::
pragma solidity >=0.5.0 <0.8.0;
pragma solidity >=0.6.2 <0.8.0;
interface Token {
enum TokenType { Fungible, NonFungible }
@@ -42,7 +42,7 @@ inheritance.
::
pragma solidity >0.6.1 <0.8.0;
pragma solidity >=0.6.2 <0.8.0;
interface ParentA {
function test() external returns (uint256);
+6 -4
View File
@@ -47,12 +47,14 @@ more advanced example to implement a set).
::
pragma solidity >=0.4.22 <0.8.0;
pragma solidity >=0.6.0 <0.8.0;
// We define a new struct datatype that will be used to
// hold its data in the calling contract.
struct Data { mapping(uint => bool) flags; }
struct Data {
mapping(uint => bool) flags;
}
library Set {
// Note that the first parameter is of type "storage
@@ -123,7 +125,7 @@ custom types without the overhead of external function calls:
::
pragma solidity >=0.4.16 <0.8.0;
pragma solidity >=0.6.0 <0.8.0;
struct bigint {
uint[] limbs;
@@ -237,7 +239,7 @@ Its value can be obtained from Solidity using the ``.selector`` member as follow
::
pragma solidity >0.5.13 <0.8.0;
pragma solidity >=0.5.14 <0.8.0;
library L {
function f(uint256) external {}
+1 -1
View File
@@ -29,7 +29,7 @@ may only be used inside a contract, not inside any of its functions.
Let us rewrite the set example from the
:ref:`libraries` in this way::
pragma solidity >=0.4.16 <0.8.0;
pragma solidity >=0.6.0 <0.8.0;
// This is the same code as before, just without comments
+3 -3
View File
@@ -68,7 +68,7 @@ In the following example, ``D``, can call ``c.getData()`` to retrieve the value
::
pragma solidity >=0.4.0 <0.8.0;
pragma solidity >=0.4.16 <0.8.0;
contract C {
uint private data;
@@ -112,7 +112,7 @@ when they are declared.
::
pragma solidity >=0.4.0 <0.8.0;
pragma solidity >=0.4.16 <0.8.0;
contract C {
uint public data = 42;
@@ -151,7 +151,7 @@ to write a function, for example:
::
pragma solidity >=0.4.0 <0.8.0;
pragma solidity >=0.4.16 <0.8.0;
contract arrayExample {
// public state variable