Merge pull request #10017 from ethereum/develop

Merge develop into breaking.
This commit is contained in:
chriseth
2020-10-13 12:58:23 +02:00
committed by GitHub
33 changed files with 804 additions and 42 deletions
+1 -1
View File
@@ -85,7 +85,7 @@ else:
# List of patterns, relative to source directory, that match files and
# directories to ignore when looking for source files.
exclude_patterns = ['_build', 'contracts', 'types', 'examples', 'grammar']
exclude_patterns = ['_build', 'contracts', 'types', 'examples', 'grammar', 'ir']
# The reST default role (used for this markup: `text`) to use for all
# documents.
+6
View File
@@ -0,0 +1,6 @@
********************************
Solidity IR-based Codegen Changes
********************************
This section highlights the main differences between the old and the IR-based codegen,
along with the reasoning behind the changes and how to update affected code.
+7
View File
@@ -119,6 +119,13 @@ decoding types only supported by the new encoder. The compiler can detect this
and will issue an error. Simply enabling ``ABIEncoderV2`` for your contract is
enough to make the error go away.
.. note::
This pragma applies to all the code defined in the file where it is activated,
regardless of where that code ends up eventually. This means that a contract
without the ``ABIEncoderV2`` pragma can still contain code that uses the new encoder
by inheriting it from another contract. This is allowed if the new types are only
used internally and not in external function signatures.
.. _smt_checker:
SMTChecker