aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDenton Liu <liu.denton+github@gmail.com>2016-07-08 04:34:05 +0800
committerDenton Liu <liu.denton+github@gmail.com>2016-07-08 04:34:05 +0800
commit06fa66b2e61388b0804014149d8559dad6208e00 (patch)
tree865c36d2f9c4c91861b93ca87df7da3efba2e76b
parentab3531ffc36bf2bc9819c42f620415e062f13b5f (diff)
downloaddexon-solidity-06fa66b2e61388b0804014149d8559dad6208e00.tar.gz
dexon-solidity-06fa66b2e61388b0804014149d8559dad6208e00.tar.zst
dexon-solidity-06fa66b2e61388b0804014149d8559dad6208e00.zip
Mention dangers of polymorphism
-rw-r--r--docs/control-structures.rst5
1 files changed, 4 insertions, 1 deletions
diff --git a/docs/control-structures.rst b/docs/control-structures.rst
index d3144c86..ab6f59fb 100644
--- a/docs/control-structures.rst
+++ b/docs/control-structures.rst
@@ -73,7 +73,10 @@ parentheses at the end perform the actual call.
Any interaction with another contract imposes a potential danger, especially
if the source code of the contract is not known in advance. The current
contract hands over control to the called contract and that may potentially
- do just about anything. Be prepared in case it calls into other contracts of
+ do just about anything. Even if the called contract inherits from a known parent contract,
+ the inheriting contract is only required to have a correct interface. The
+ implementation of the contract, however, can be completely arbitrary and thus,
+ pose a danger. In addition, be prepared in case it calls into other contracts of
your system or even back into the calling contract before the first
call returns. This means
that the called contract can change state variables of the calling contract