Commit Graph

2995 Commits

Author SHA1 Message Date
chriseth
d744c0d617
Merge pull request #12637 from Hakeemmidan/patch-1
Update docs/cheatsheet.rst
2022-02-07 13:04:43 +01:00
chriseth
a9b9170a1b
Merge pull request #12636 from fulldecent/patch-25
Fix signature of pop member
2022-02-07 13:03:51 +01:00
Naveen Sahu
2e2094ad82 plain address can be sent Ether too
The docs state that a plain `address` cannot be sent Ether. But even though `send` and `transfer` members are not available for plain `address`, the `call` is. And `call` can be invoked upon a plain `address` type to send Ether to the address.

For instance, the `someone` (`address` type) can be sent Ether by invoking `sendSomeone()` method in the following `Dummy` contract:

```
contract Dummy {
    address someone = 0xAb8...cb2;

    function balanceOf(address addr) public view returns (uint) {
        return addr.balance;
    }

    function sendToSomeone() public payable returns (bool) {
        (bool sent, ) = someone.call{value: msg.value}("");
        return sent;
    }
}
```
2022-02-07 12:44:21 +01:00
Hakeem Almidan
c3145979fc
Update cheatsheet.rst
Add more description to the bullet point of 'block.timestamp' (under 'Global Variables')
2022-02-06 20:16:04 +03:00
William Entriken
6bd38aa4ef
Fix signature of pop member 2022-02-05 23:59:09 -05:00
Ayush Shukla
653c1e6842
Fix slot calculation for bytes/string mapping 2022-02-05 01:00:27 +05:30
Kamil Śliwak
93d5b79e5c
Merge pull request #12599 from ethereum/docs-resources
[DOCS] Adding a few resources to resources section
2022-02-04 15:06:34 +01:00
William Entriken
dcaa094f1f Add NatSpec note for libraries 2022-02-02 18:11:14 -05:00
franzihei
8bcc4ee7d1 Adding a few resources 2022-01-31 20:21:42 +01:00
chriseth
8728971354
Correct type of address.code 2022-01-31 19:07:01 +01:00
Nikita Stupin
0f7b69432e Separate visibility for state variables and functions 2022-01-29 00:36:06 +01:00
Kamil Śliwak
f386ed28a0
Merge pull request #12592 from Younghoon-Lee/Fix/style-guide
Add blank line to make it consistency
2022-01-29 00:07:19 +01:00
Younghoon-Lee
95f9289f2c Add blank line to make it consistency 2022-01-28 01:11:35 +09:00
William Entriken
8c6f80aa03 Document our version policy w/r/t SemVer 2022-01-27 09:45:31 -05:00
Markus Waas
8bfc9ad829 Add msg.sig to cheatsheet 2022-01-24 10:21:01 +01:00
Bruno Barbieri
9a13917049
Add modifiers to the order of layout 2022-01-20 20:20:30 -05:00
Daniel Kirchner
79e9d619a3
Merge pull request #12545 from ethereum/yulGrammarFluke
Allow builtins in yul identifier paths in antlr grammar.
2022-01-17 20:42:14 +01:00
Daniel Kirchner
2d0f6278bb Allow builtins as yul identifier paths in antlr grammar. 2022-01-17 18:42:54 +01:00
Daniel Kirchner
776c984cb0 Adjust documentation for linux packages not maintained by us. 2022-01-17 16:10:39 +01:00
William Entriken
78f0be56c3 Document address members code and codehash 2022-01-13 01:20:45 -05:00
Harikrishnan Mulackal
eee30b6ead
Merge pull request #12504 from brien-tech/patch-1
Fixing typo in "smart contracts"
2022-01-10 13:43:23 +05:30
Brien
790e7f42a1
Fixing typo in "smart contracts" 2022-01-10 02:29:51 -05:00
Mohamed Safouen Bouabid
4c20821e6d Explaining payable(msg.sender)
At this point of the documentation a new Solidity learner will not understand this line without further explanation:
if (!payable(msg.sender).send(amount)) {
It should explain how msg.sender is of type "address" and not "address payable" so it cannot send or receive Ether. Therefore it must be explicitly converted to payable.
2022-01-10 12:49:30 +05:30
Esquith Allen
b1ef5de496 fix typo 2022-01-05 21:58:41 -05:00
chriseth
c16867cb83
Merge pull request #12272 from ethereum/equalStoreEliminator
Equal store eliminator.
2022-01-05 11:24:59 +01:00
William Entriken
c798ac472e Typo: SemVer 2022-01-04 18:59:40 -05:00
Daniel Kirchner
cac0f203a2
Merge pull request #12467 from ethereum/fixMappingExample
Fix mapping example.
2022-01-04 18:23:57 +01:00
Braden Watling
bb16c1943c Fix gas retaining statement.
According to https://docs.soliditylang.org/en/v0.8.11/introduction-to-smart-contracts.html?highlight=63%2F64#message-calls, the caller forwards 63/64th of its gas, but here we seem to contradict that by saying the caller retains 63/64th of its gas.
2022-01-04 11:10:31 +01:00
Braden Watling
6fe1ee6a8a
Fix typo in control-structures.rst
I'm learning Solidity by reading these docs and found this statement confusing. I'm fairly certain that the correct description here is that the *callee* changes get reverted, but the caller is able to react to the failures.

I tested this with the following snippet in Remix, which resulted in a successful transaction when deployed:

```
// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.7;

contract A {
    uint public value;

    function a(uint newValue, bool shouldRevert) external {
        value = newValue;
        if (shouldRevert) {
            revert();
        }
    }
}

contract B {
    function b() external {
        A a = new A();
        try a.a(50, false) {
            assert(a.value() == 50);
        } catch {
            assert(false);
        }
        a = new A();
        try a.a(50, true) {
            assert(false);
        } catch {
            assert(a.value() == 0);
        }
    }
}
```
2022-01-03 17:22:23 -05:00
chriseth
b354c81a63 Documentation 2022-01-03 15:52:05 +01:00
chriseth
57474917a0 Clarify which functions are added. 2022-01-03 15:38:39 +01:00
Pranay Reddy
f30130888e Added specificity to data location.
Added the specificity that bytes1[] and bytes differ because of padding only in memory data location. Added extra sentence that they are similar when used in storage data location.
2022-01-03 12:47:51 +05:30
chriseth
0010027e17 Fix mapping example. 2021-12-30 15:28:09 +01:00
Franziska Heintel
4456eeb6bb
[DOCS] update contributing section meeting link 2021-12-29 16:06:05 +01:00
Kamil Śliwak
dece5f4de2 pylint: Enable and fix redefined-builtin warnings 2021-12-21 15:30:11 +01:00
Kamil Śliwak
5b10ff1216 pylint: Enable and fix singleton-comparison warnings 2021-12-21 15:30:11 +01:00
chriseth
25a3bf2df0 Set release date. 2021-12-20 13:15:58 +01:00
GitHubPang
1b0cef4624
Fix a few typos 2021-12-20 10:56:39 +08:00
Marenz
7a96953e78 Implement typechecked abi.encodeCall() 2021-12-16 17:35:58 +01:00
chriseth
c15ef45d29 Explanation about operators. 2021-12-15 18:37:18 +01:00
Alessandro Coglio
d17f7206ad Improve description of break/continue restrictions.
This is as discussed on Element, with enhancements discussed with @cameel.
2021-12-13 21:59:25 -08:00
dinah
f0aadcf577 Remove stale link. 2021-12-13 12:04:23 +01:00
Omkar Nikhal
01d45a1952 Remove redundant typo 2021-12-13 11:36:07 +01:00
chriseth
d414153258 Some clarifications on literals. 2021-12-06 17:36:34 +01:00
minami
6bafeca8a2 Fix yul 2021-12-05 16:58:03 +09:00
minami
907405e2e0 Fix units-and-global-variables 2021-12-05 16:57:59 +09:00
minami
25a26d2f8b Fix cheatsheet 2021-12-05 16:57:48 +09:00
Saska Karsi
105de2561a
rm trailing comma in style-guide.rst example 2021-12-03 01:11:04 +02:00
chriseth
829fe6615b Fix Yul example. 2021-12-01 16:23:26 +01:00
chriseth
d2585fd91d
Merge pull request #12322 from tzann/patch-1
Fix ExpressionSplitter example
2021-12-01 15:44:57 +01:00