mirror of
https://github.com/ethereum/solidity
synced 2023-10-03 13:03:40 +00:00
Merge pull request #7404 from ethereum/develop
Merge develop into 0.6.0
This commit is contained in:
commit
e528c65c04
@ -132,7 +132,7 @@ Low-Level Interface to Logs
|
|||||||
|
|
||||||
It is also possible to access the low-level interface to the logging
|
It is also possible to access the low-level interface to the logging
|
||||||
mechanism via the functions ``log0``, ``log1``, ``log2``, ``log3`` and ``log4``.
|
mechanism via the functions ``log0``, ``log1``, ``log2``, ``log3`` and ``log4``.
|
||||||
``logi`` takes ``i + 1`` parameter of type ``bytes32``, where the first
|
Each function ``logi`` takes ``i + 1`` parameter of type ``bytes32``, where the first
|
||||||
argument will be used for the data part of the log and the others
|
argument will be used for the data part of the log and the others
|
||||||
as topics. The event call above can be performed in the same way as
|
as topics. The event call above can be performed in the same way as
|
||||||
|
|
||||||
|
@ -93,7 +93,7 @@ Some tests require the ``libevmone.so`` library, others require ``libz3``.
|
|||||||
The test system will automatically try to discover the location of ``libevmone.so``
|
The test system will automatically try to discover the location of ``libevmone.so``
|
||||||
starting from the current directory. If it does not find it, the relevant tests
|
starting from the current directory. If it does not find it, the relevant tests
|
||||||
are skipped. To run all tests, download the library from
|
are skipped. To run all tests, download the library from
|
||||||
`Github <https://github.com/ethereum/evmone/releases/download/v0.1.0/evmone-0.1.0-linux-x86_64.tar.gz>`_
|
`Github <https://github.com/ethereum/evmone/releases/tag/v0.1.0>`_
|
||||||
and either place it in the project root path or inside the ``deps`` folder.
|
and either place it in the project root path or inside the ``deps`` folder.
|
||||||
|
|
||||||
If you do not have libz3 installed on your system, you should disable the SMT tests:
|
If you do not have libz3 installed on your system, you should disable the SMT tests:
|
||||||
|
@ -953,7 +953,7 @@ naming styles.
|
|||||||
* ``mixedCase`` (differs from CapitalizedWords by initial lowercase character!)
|
* ``mixedCase`` (differs from CapitalizedWords by initial lowercase character!)
|
||||||
* ``Capitalized_Words_With_Underscores``
|
* ``Capitalized_Words_With_Underscores``
|
||||||
|
|
||||||
.. note:: When using initialisms in CapWords, capitalize all the letters of the initialisms. Thus HTTPServerError is better than HttpServerError. When using initialisms is mixedCase, capitalize all the letters of the initialisms, except keep the first one lower case if it is the beginning of the name. Thus xmlHTTPRequest is better than XMLHTTPRequest.
|
.. note:: When using initialisms in CapWords, capitalize all the letters of the initialisms. Thus HTTPServerError is better than HttpServerError. When using initialisms in mixedCase, capitalize all the letters of the initialisms, except keep the first one lower case if it is the beginning of the name. Thus xmlHTTPRequest is better than XMLHTTPRequest.
|
||||||
|
|
||||||
|
|
||||||
Names to Avoid
|
Names to Avoid
|
||||||
@ -1139,6 +1139,6 @@ added looks like the one below::
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
It is recommended that Solidity contracts are fully annontated using `NatSpec <natspec>`_ for all public interfaces (everything in the ABI).
|
It is recommended that Solidity contracts are fully annotated using `NatSpec <natspec>`_ for all public interfaces (everything in the ABI).
|
||||||
|
|
||||||
Please see the section about `NatSpec <natspec>`_ for a detailed explanation.
|
Please see the section about `NatSpec <natspec>`_ for a detailed explanation.
|
||||||
|
27
test/libyul/yulOptimizerTests/loadResolver/staticcall.yul
Normal file
27
test/libyul/yulOptimizerTests/loadResolver/staticcall.yul
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
{
|
||||||
|
let a := 0
|
||||||
|
let b := 1
|
||||||
|
let c := 2
|
||||||
|
sstore(a, b)
|
||||||
|
mstore(900, 7)
|
||||||
|
let d := staticcall(10000, 10, 0, 200, 0, 200)
|
||||||
|
sstore(add(a, 1), mload(900))
|
||||||
|
// Main test objective: replace this sload.
|
||||||
|
mstore(0, sload(a))
|
||||||
|
}
|
||||||
|
// ====
|
||||||
|
// step: loadResolver
|
||||||
|
// EVMVersion: >=byzantium
|
||||||
|
// ----
|
||||||
|
// {
|
||||||
|
// let a := 0
|
||||||
|
// let b := 1
|
||||||
|
// sstore(a, b)
|
||||||
|
// let _1 := 7
|
||||||
|
// let _2 := 900
|
||||||
|
// mstore(_2, _1)
|
||||||
|
// let _3 := 200
|
||||||
|
// pop(staticcall(10000, 10, a, _3, a, _3))
|
||||||
|
// sstore(1, mload(_2))
|
||||||
|
// mstore(a, b)
|
||||||
|
// }
|
@ -287,7 +287,7 @@ TestStats TestTool::processPath(
|
|||||||
_testCaseCreator,
|
_testCaseCreator,
|
||||||
_options,
|
_options,
|
||||||
fullpath,
|
fullpath,
|
||||||
currentPath.string()
|
currentPath.generic_path().string()
|
||||||
);
|
);
|
||||||
auto result = testTool.process();
|
auto result = testTool.process();
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user