Bhargava Shastry
94086e734b
Do not use std::iterator that is deprecated in c++17.
2021-09-14 14:00:37 +02:00
chriseth
cb218fe018
Merge pull request #11947 from ethereum/abicodec-test-userdefined
...
Added an abi function test for UserDefinedValueType
2021-09-14 13:49:45 +02:00
Kamil Śliwak
405a9e9971
Generate separate metadata for the old and the new codegen
2021-09-14 13:44:04 +02:00
Kamil Śliwak
83b3bd0227
Add a version of isValidMetadata() that accepts already parsed metadata
2021-09-14 13:44:04 +02:00
Daniel Kirchner
854b8b65b5
Better source locations in Yul ControlFlowGraph and OptimizedEVMCodeTransform.
2021-09-14 13:43:16 +02:00
Daniel Kirchner
75c3286311
Optimized EVM Code Transform.
2021-09-14 13:37:04 +02:00
chriseth
4a02e9a340
Merge pull request #11867 from ethereum/solidity-snippets-next-to-source-locations-in-ir
...
Solidity snippets next to source locations in IR
2021-09-14 13:30:30 +02:00
Kamil Śliwak
14639efc5d
Print code snippets next to source locations in IR output
2021-09-14 12:09:59 +02:00
Kamil Śliwak
d78522b08b
AsmParser: Accept optional code snippets after the @src tags
2021-09-14 12:09:59 +02:00
Kamil Śliwak
37f681c430
Deduplicate code for printing source locations
2021-09-14 11:46:57 +02:00
Daniel Kirchner
7abc55d89a
Use locationOf helper instead of accessing debugData directly.
2021-09-14 10:04:09 +02:00
Leo Alt
e72fa7fc10
Add new info severity
2021-09-13 22:48:22 +02:00
chriseth
49cde9d47b
Merge pull request #11948 from ethereum/remove-assemblyitemtype-pushstring
...
Remove unused AssemblyItemType::PushString.
2021-09-13 19:39:59 +02:00
chriseth
f957820351
Merge pull request #11913 from ethereum/source-location-parsing-extra-tests-and-regex-refactor
...
More generic source location parsing + more errors
2021-09-13 19:06:29 +02:00
Alexander Arlt
7fcf888fbf
Remove unused AssemblyItemType::PushString.
2021-09-13 18:59:18 +02:00
Harikrishnan Mulackal
c8c6d30808
Merge pull request #11946 from ethereum/tests-userdefinedvaluetypes
...
UserDefinedValueType: test to validate zero-cost-abstraction claim.
2021-09-13 18:54:36 +02:00
hrkrshnn
4871017aae
Added an abi function test for UserDefinedValueType
...
A test to see if `abi.encode*(..., (CustomType))` and `abi.decode(..., (CustomType))` works as
intended.
2021-09-13 18:12:42 +02:00
hrkrshnn
00bfed4d8b
UserDefinedValueType: test to validate zero-cost-abstraction claim.
...
Seems that the optimizer can indeed make it a zero-cost-abstraction!
2021-09-13 16:49:52 +02:00
Kamil Śliwak
0727e5c756
Merge pull request #11933 from soroosh-sdi/scripts-no-smt
...
Add switch for command line & test.sh to skip smt
2021-09-13 16:24:00 +02:00
Kamil Śliwak
12f50ec981
Merge pull request #11730 from ethereum/deduplicate-cli-optimizer-initialization
...
[CLI] Deduplicate optimizer initialization
2021-09-13 16:21:37 +02:00
Kamil Śliwak
1e4cef8405
Switch from full() to standard() optimizer settings in assembly mode on the CLI
2021-09-13 15:35:11 +02:00
Kamil Śliwak
6b46d4fdbe
Extract duplicated code for initializing OptimiserSettings from CommandLineOptions into a common function
2021-09-13 15:35:11 +02:00
Kamil Śliwak
2f663c5f36
Common processing of optimization options in compiler and assembly modes
2021-09-13 15:35:11 +02:00
Kamil Śliwak
7a36a1d1db
Reject optimizer options as invalid in linker and Standard JSON modes
2021-09-13 15:35:11 +02:00
Kamil Śliwak
b7c124911a
CommandLineParser: Process linker mode before assembly mode
2021-09-13 15:25:59 +02:00
Daniel Kirchner
9ff0cc0b8b
Update docs.
2021-09-13 15:22:46 +02:00
Daniel Kirchner
ab7b1625ac
Tests for unassigned calldata returns.
2021-09-13 15:22:46 +02:00
Daniel Kirchner
fc37b18e88
Fix inline assembly assignments to calldata structs and statically-sized arrays.
2021-09-13 15:22:46 +02:00
Harikrishnan Mulackal
8fafdeacac
Merge pull request #11939 from ethereum/userdefined-types-mapping-key
...
Allow Mapping keys to have type UserDefinedValueType.
2021-09-13 15:06:14 +02:00
hrkrshnn
2ead3f469e
Added a user defined type mapping into the ASTJSON test.
2021-09-13 14:06:31 +02:00
Harikrishnan Mulackal
623b4ba366
Merge pull request #11942 from ethereum/constant-userdefinedvaluetype
...
Allow UserDefinedValueType.uwrap (and wrap) as RHS of constant decl
2021-09-13 12:32:58 +02:00
Bhargava Shastry
b5f5e85a12
cmake: Remove stdlib compile option for Solidity build.
2021-09-13 11:55:58 +02:00
hrkrshnn
a1d4d0125d
Allow UserDefinedValueType.uwrap (and wrap) as RHS of constant decl
...
Needed to make `MyType.unwrap` and `MyType.unwrap` as pure in the process. This change affected some
existing tests ("statement has no effect").
2021-09-13 11:53:05 +02:00
hrkrshnn
1fa6c71bd0
Allow Mapping keys to have type UserDefinedValueType.
...
Also added syntax and semantic test.
2021-09-13 10:03:49 +02:00
soroosh-sdi
f5e8f5246c
Add switch for command line & test.sh to skip smt
...
- add --no-smt in scripts/tests.sh and test/cmdlineTests.sh
Signed-off-by: soroosh-sdi <soroosh.sardari@gmail.com>
2021-09-10 23:35:17 +04:30
Daniel Kirchner
b934ef6c6e
Only run evm bytecode generation if required.
2021-09-10 12:32:48 +02:00
Nikita Stupin
aedf29b9dd
Add sections for state mutability and special functions
2021-09-10 11:27:55 +03:00
Kamil Śliwak
fbdfc6bb7a
AsmParser: Require whitespace before tags in location comments
2021-09-09 18:27:29 +02:00
Daniel Kirchner
dea1b9ec79
Merge pull request #11920 from ethereum/update-comment-fixedpoint-example
...
User defined value type: changes in documentation and test case
2021-09-09 17:38:37 +02:00
Leonardo
df2ed912f0
Merge pull request #11887 from ethereum/smt_fix_seen
...
[SMTChecker] Fix ICE on unique error reporting
2021-09-09 17:25:51 +02:00
Kamil Śliwak
14396c207c
AsmParser: Generalize location comment parsing to make it easier to add support for more tags
2021-09-09 17:12:59 +02:00
Kamil Śliwak
aa156ab6c7
Parser::fetchSourceLocationFromComment(): Some general cleanup (renaming, wrapping, etc.)
2021-09-09 17:12:59 +02:00
Kamil Śliwak
e3a5f923eb
AsmParser: Refactor the @src regex
2021-09-09 17:12:58 +02:00
Kamil Śliwak
33ac5478de
More tests for @src in AsmParser
2021-09-09 17:12:58 +02:00
Kamil Śliwak
066c2a4699
Check expected errors in existing AsmParser tests
2021-09-09 17:12:58 +02:00
hrkrshnn
952540c3b5
User defined value type: changes in documentation and test case
...
Changed the name of a function from `truncate` to `floor`, since that is more appropriate; updated
the inaccurate description on the rounding behaviour. Also modified the respective semantic test.
2021-09-09 16:57:03 +02:00
Leo Alt
d91f75deb8
Fix ICE on unique errors
2021-09-09 16:37:43 +02:00
chriseth
3e2e3d1baa
Merge pull request #11915 from ethereum/fix-out-of-sync-gas-costs
...
Fix breakage on `develop` caused by gas costs that went out of sync
2021-09-09 15:42:08 +02:00
chriseth
5de276cb75
Merge pull request #11914 from ethereum/userdefined-move-test
...
User defined value types: moved a syntax test to semantic test.
2021-09-09 14:19:32 +02:00
Kamil Śliwak
f6eecb8c6f
Fix gas costs that went out of sync in some tests due to a recent merge
2021-09-09 13:26:45 +02:00