Commit Graph
121 Commits
Author SHA1 Message Date
Kamil Śliwak 7f4f655cca Disallow RETURNDATASIZE and RETURNDATACOPY in inline assembly blocks in pure functions
(cherry picked from commit f567eb1fb2)

quick fix to pass failing test at ./test/externalTests/ens.sh (line 80) -- Should be removed when 0.9 is released.
2022-05-20 09:31:27 -03:00
chriseth 3c2cee5836 Merge pull request #13026 from ethereum/develop
Merge develop into breaking.
2022-05-16 15:29:39 +02:00
Matheus Aguiar 35661479b6 Revert "Disallow RETURNDATASIZE and RETURNDATACOPY in inline assembly blocks in pure functions"
This reverts commit f567eb1fb2.

Correcting Bugfixes section of Changelog.
2022-05-13 08:35:21 -03:00
chriseth a137d42094 Merge pull request #13007 from ethereum/develop
Merge develop into breaking.
2022-05-11 16:39:24 +02:00
Kamil Śliwak f567eb1fb2 Disallow RETURNDATASIZE and RETURNDATACOPY in inline assembly blocks in pure functions 2022-04-08 14:48:35 +02:00
chriseth 6b88e470ff Merge remote-tracking branch 'origin/develop' into breaking 2022-03-07 16:34:55 +01:00
Daniel Kirchner 93dd8ad553 Tests. 2022-03-02 17:07:11 +01:00
Daniel Kirchner 6b6e163be5 Tests. 2022-03-02 16:42:28 +01:00
Daniel Kirchner e6848caac1 Allow annotating inline assembly as memory-safe. 2022-03-02 16:42:28 +01:00
wechman 8e2f929648 Move basefee_berlin_function test to syntax tests. 2022-03-02 10:48:33 +01:00
Daniel Kirchner d6d286b39b Disallow codecopy and codesize in pure functions. 2022-01-31 19:36:25 +01:00
chriseth 814e233b67 Merge pull request #12604 from ethereum/develop
Merge develop into breaking
2022-01-31 17:59:03 +01:00
Daniel KirchnerandKamil Śliwak c91f995ec9 Update test/libsolidity/syntaxTests/inlineAssembly/assignment_to_function_pointer.sol
Co-authored-by: Kamil Śliwak <kamil.sliwak@codepoets.it>
2022-01-17 20:12:11 +01:00
Daniel Kirchner 2d0f6278bb Allow builtins as yul identifier paths in antlr grammar. 2022-01-17 18:42:54 +01:00
Kamil Śliwak 910ea59ace Update expectation in tests for inline assembly with name clashes 2021-10-27 20:16:32 +02:00
chriseth 8bcbe946c6 Merge remote-tracking branch 'origin/develop' into breaking 2021-10-06 12:00:17 +02:00
Marenz 98dd78362e Add `.address and .selector` in inside assembly for external function pointers 2021-10-04 18:05:57 +02:00
chriseth d9ad047c21 Merge pull request #12001 from ethereum/cmdline-test-for-asm-json
Command-line test for `--asm-json`
2021-09-22 11:09:02 +02:00
Marenz 7a51acc5fe Correct wrong error message referencing .slot and .offset when .length was used 2021-09-21 18:28:38 +02:00
Kamil Śliwak b1351f4807 Fix typo in test name: leave_items_on_tack.sol -> leave_items_on_stack.sol 2021-09-21 16:28:16 +02:00
chriseth aeb2438eab Fix shadowing error for inline assembly. 2021-08-17 12:12:56 +02:00
chriseth a4c94a1b5b Fixed inline assembly external identifier access. 2021-08-11 18:18:29 +02:00
hrkrshnn 892700d769 Tests for basefee as identifier in inline assembly
Also added basefee to `EVMVersion::hasOpcode(...)`
2021-08-11 10:46:40 +02:00
chriseth e2d8005737 Add verbatim builtin. 2021-04-26 19:56:44 +02:00
Alex Beregszaszi 1be07c2b36 Trivial isoltest updates: missing // ---- at the end 2021-04-20 17:38:29 +02:00
Alex Beregszaszi 84c05d35f3 Trivial isoltest updates: normalized whitespace 2021-04-20 17:38:29 +02:00
Daniel Kirchner 6fdfd8b62b Fix import path grammar and grammar testing details. 2021-04-12 14:54:36 +02:00
chriseth f04adde664 Allow hex string literals in Yul. 2021-04-08 15:03:33 +02:00
chriseth 9c7b1e9c3f Detect assignment to function in inline assembly. 2021-02-23 11:47:12 +01:00
chriseth 78a097a012 Only warn about variables being shadowed in inline assembly. 2021-02-19 14:29:22 +01:00
hrkrshnn 8167029dc1 Updating tests after improving Yul error reporting 2021-02-09 16:55:33 +01:00
hrkrshnn ec57c791ef Fix infinite loop when accessing circular constants from inline assembly. 2021-01-26 09:22:05 +01:00
chriseth 8f833f4e8f Merge pull request #10618 from ethereum/develop
Merge develop into breaking.
2020-12-16 12:34:41 +01:00
chriseth 5c40fb060c Report illegal tokens in the Yul parser. 2020-12-16 12:20:07 +01:00
Alex Beregszaszi c032ad3379 Update tests 2020-12-10 17:18:15 +01:00
Daniel Kirchner 588535566f Mark chainid as view. 2020-12-09 16:55:51 +01:00
chriseth d56a7bb89e Merge pull request #10489 from ethereum/develop
Merge develop into breaking.
2020-12-03 18:11:12 +01:00
Alex Beregszaszi a9be2e4bb8 update tests 2020-12-03 17:15:45 +01:00
Alex Beregszaszi 6c0a3bd043 Ensure that builtins must be executed 2020-12-03 17:15:44 +01:00
Alex Beregszaszi 43353bb6ca update tests 2020-12-03 17:15:43 +01:00
Alex Beregszaszi 3da2b67b67 simplify parser 2020-12-03 17:14:49 +01:00
hrkrshnn a834476de6 Tests/Docs after disallowing super, this and _ as declaration names 2020-11-25 11:14:13 +01:00
chriseth 2665eaa4fa Support .offset and .length for calldata bytes and string arrays. 2020-11-18 01:45:56 +01:00
Alex Beregszaszi 1536e49b3d Add more syntax tests for uncovered cases 2020-11-05 10:30:09 +00:00
Alex Beregszaszi 24d8c2ed90 Split error codes for EVM opcodes 2020-10-28 11:45:46 +00:00
Alex Beregszaszi 7ef9591e64 Expose hex literal to the Yul parser
This allows nicer error messages.
2020-08-28 19:34:52 +01:00
Alex Beregszaszi 26a76c18d4 Add Yul syntax test for every Solidity keyword 2020-08-28 19:34:52 +01:00
Alex Beregszaszi caa329066e Do not emit Solidity-only tokens in the Scanner for Yul
And simplfiy AsmParser greatly.
2020-08-28 19:34:52 +01:00
Alex Beregszaszi 4e5b403c37 Introduce RightArrow (->) token in the scanner 2020-08-27 12:28:27 +01:00
Alex Beregszaszi babb175d86 Add more syntax tests for Yul 2020-08-13 14:20:52 +01:00