mirror of
https://github.com/ethereum/solidity
synced 2023-10-03 13:03:40 +00:00
Merge pull request #10017 from ethereum/develop
Merge develop into breaking.
This commit is contained in:
+1
-1
@@ -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.
|
||||
|
||||
@@ -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.
|
||||
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user