Commit Graph
100 Commits
Author SHA1 Message Date
Alex Beregszaszi c5031799fa Merge pull request #11434 from ethereum/isoltest_remove_storage_leftover
[isoltest] Remove storage command left overs.
2021-05-24 21:39:10 +01:00
Alex Beregszaszi f6bb3df747 Merge pull request #11423 from ethereum/account_builtin
[isoltest] Add account builtin.
2021-05-21 13:41:07 +01:00
Alex Beregszaszi 75c72cd54d Properly support inliner in settings.optimizer.details 2021-05-20 20:22:34 +01:00
Alex Beregszaszi 13388e283e Merge pull request #11385 from ethereum/temporary-working-directory-helper
TemporaryWorkingDirectory helper
2021-05-20 20:06:03 +01:00
Alex Beregszaszi d61f21276d Merge pull request #11399 from ethereum/hex-conversion
Turn toCompactHexWithPrefix into a template and support unsigned types
2021-05-18 11:36:43 +01:00
Alex Beregszaszi 3e8e5f3bf9 Fix v1/v2 tests to behave like they did pre-0.8.0 2021-05-17 12:37:10 +01:00
Alex Beregszaszi 299873182b Cleanup ABICoder V1 tests
Include the pragma explicitly, rename the file to have a _v1 suffix, and also add V2 counterparts where missing.
2021-05-17 12:37:10 +01:00
Alex Beregszaszi 44e35e0652 Fix compilation errors with GCC 11 2021-05-17 11:35:07 +01:00
Alex Beregszaszi 6dae6583af Turn toCompactHexWithPrefix into a template and support unsigned types
This should help with boost::multiprecision versions where explicit unsigned/enum conversion to bigint do not exists (such as boost 1.76)
2021-05-15 23:33:29 +01:00
Alex Beregszaszi f58d58738e Merge pull request #11396 from ethereum/v1-yul
Add sanity check into SemanticTest for not allowing ABIEncoderV1Only and compileViaYul together
2021-05-14 20:38:27 +01:00
Alex Beregszaszi e73ee468a8 Update tests 2021-05-14 19:56:26 +01:00
Alex Beregszaszi bb7f500bb1 Add sanity check into SemanticTest for not allowing ABIEncoderV1Only and compileViaYul together 2021-05-14 19:56:26 +01:00
Alex Beregszaszi 7dc514847a Fix prbmath.exp tests 2021-05-14 15:29:12 +01:00
Alex Beregszaszi a54699f452 EVMHost: Fix selfdestruct with non-zero value at beneficiary and value-transfers with insufficient funds
Create a helper for transfering balance between two accounts. Check sufficient funds are available during a call-with-value.
2021-05-14 00:10:49 +01:00
Alex Beregszaszi 90072a7c0d update docker hashes 2021-05-13 16:25:55 +01:00
Alex Beregszaszi 3172d28c56 Upgrade hera to v0.3.2-evmc8 2021-05-13 13:15:13 +01:00
Alex Beregszaszi d898342178 Update hera in docker images 2021-05-13 13:11:32 +01:00
Alex Beregszaszi 99354a3b59 Upgrade evmone to 0.7.0 2021-05-12 16:56:23 +02:00
Alex Beregszaszi c66c5c9f1d EVMHost: properly populate implicit access list for Berlin 2021-05-12 16:49:04 +02:00
Alex Beregszaszi 5bfd26287c Upgrade to EVMC 8.0.0 2021-05-12 16:49:04 +02:00
Alex Beregszaszi 977fc4b5e1 Merge pull request #11383 from ethereum/buglist
Add missing blogpost to the buglist
2021-05-12 14:57:07 +01:00
Alex Beregszaszi 6bdb69e56a Merge pull request #11307 from ethereum/security-advisory
Introduce unique numbering for bugs
2021-05-12 14:39:44 +01:00
Alex Beregszaszi 7da62f0a1c Add missing blogpost to the buglist
And also change the old blog.ethereum.org links to blog.soliditylang.org
2021-05-12 13:57:53 +01:00
Alex Beregszaszi 94f7d281d0 Introduce unique numbering for bugs 2021-05-12 13:49:14 +01:00
Alex Beregszaszi 1ddcd66a66 Merge pull request #11355 from ethereum/rangesImport
Remove import of ranges namespace.
2021-05-07 13:27:08 +01:00
Alex Beregszaszi 0b3f3dff60 Add ramanujan's pi approximation as a semantic test 2021-04-27 20:47:42 +01:00
Alex Beregszaszi 484a4398a7 Add semantic tests using prb-math 2021-04-27 20:23:13 +01:00
Alex Beregszaszi ada046ba9a Import prb-math for testing
From https://github.com/hifi-finance/prb-math/commit/62021c1abc3413f20d0bdc8f941cf9f21d5a7d2d
2021-04-27 20:08:33 +01:00
Alex Beregszaszi 5852972ec1 Merge pull request #11309 from ethereum/test-stringutils
Add some semantic tests using stringutils
2021-04-27 18:12:37 +01:00
Alex Beregszaszi 5331bc679a Fix some issues regarding checked arithmethics in stringutils 2021-04-27 17:05:40 +01:00
Alex Beregszaszi 6b3357be50 Add semantic tests using stringutils 2021-04-27 17:02:54 +01:00
Alex Beregszaszi 176ce4edf7 Split EthAssemblyAdapter from AsmCodeGen 2021-04-27 11:31:15 +01:00
Alex Beregszaszi 1a556aaa7f Move compilationTests/stringutils to semanticTests/externalContracts 2021-04-27 11:21:14 +01:00
Alex Beregszaszi 9d5b4150d4 Throw StackTooDeep earlier (with sourcelocatiom) for inline assembly issues 2021-04-26 20:11:50 +01:00
Alex Beregszaszi eed0bf580b Merge pull request #11308 from ethereum/error-cleanup
Remove obsolete Error constructor
2021-04-24 01:57:21 +01:00
Alex Beregszaszi 60189b4f61 Remove obsolete Error constructor 2021-04-23 23:55:22 +01:00
Alex BeregszasziandHarikrishnan Mulackal d508544340 Add toEVMInstruction helper
Co-authored-by: Harikrishnan Mulackal <webmail.hari@gmail.com>
2021-04-23 22:56:50 +01:00
Alex Beregszaszi 1db3278f6a Merge pull request #11305 from ethereum/ewasm-semantic-tests
Enable more semantic tests for Ewasm
2021-04-23 20:25:57 +01:00
Alex Beregszaszi f952f851b7 Enable more semantic tests for Ewasm 2021-04-23 17:00:01 +01:00
Alex Beregszaszi 55577cbfc3 Merge pull request #10406 from ethereum/ewasm-polyfill-callvalue-gasprice-difficulty
[ewasm] Polyfill: callvalue, gasprice & difficulty.
2021-04-23 16:36:19 +01:00
Alex Beregszaszi 73b804aff4 Update tests 2021-04-23 15:54:10 +01:00
Alex Beregszaszi e39433198d Remove the usage of boost::noncopyable
Prior to this half of the codebase used explicit deleted copy constructors, the others used boost::noncopyable.
2021-04-23 14:57:01 +01:00
Alex Beregszaszi ac192ff4c1 Drop the util::u160 type 2021-04-23 14:35:06 +01:00
Alex Beregszaszi 37be1b3ed9 Remove dependency on util::160 in yulInterpreter
Instead apply explicit truncation or masking for readability.
2021-04-23 14:35:05 +01:00
Alex Beregszaszi 4855fca802 Remove dead code in NatSpec 2021-04-22 13:26:11 +01:00
Alex Beregszaszi 8fb7a18800 Small refactorings for isoltest 2021-04-22 01:04:34 +01:00
Alex Beregszaszi 8527430421 Merge pull request #11149 from ethereum/evmc
Upgrade to EVMC 7.5.0
2021-04-21 22:26:05 +01:00
Alex Beregszaszi f1aaae36ee Upgrade to EVMC 7.5.0
One important change: MockedAccount.storage is a map and not unordered_map
2021-04-21 21:05:40 +01:00
Alex Beregszaszi bb19c9e460 Set version to 0.8.5 2021-04-21 20:42:20 +01:00
Alex Beregszaszi 4177270562 Trivial isoltest updates: comments always on the same line 2021-04-20 17:38:29 +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
Alex Beregszaszi 45c6bbe02b Trivial isoltest updates: directives sorted alphabetically 2021-04-20 17:21:56 +02:00
Alex Beregszaszi a99e0eb5cb Move improvements to the NatSpec documentation 2021-03-30 22:09:21 +01:00
Alex Beregszaszi f24b2254ed Merge pull request #11177 from ethereum/doc-pygment
Update pygments-lexer-solidity to 0.7.0
2021-03-26 15:34:02 +00:00
Alex Beregszaszi 522fdc158d Update pygments-lexer-solidity to 0.7.0 2021-03-25 20:29:05 +00:00
Alex Beregszaszi d6d5642467 Add link to the portal in the README 2021-03-25 13:32:49 +00:00
Alex Beregszaszi 18e6d1c3b1 Merge pull request #11159 from ethereum/custom-natspec-example
Adds @custom:.... natspec example to the natspec-format documentation.
2021-03-25 12:53:17 +00:00
Alex Beregszaszi e071884bbf Show proper error for misusing the custom natspec tag 2021-03-25 12:45:37 +00:00
Alex Beregszaszi 7a7ff7af2f Add one more test for invalid custom tag 2021-03-25 12:24:18 +00:00
Alex Beregszaszi 78a66787d4 Improve documentation about NatSpec
Clarify the connection to Doxygen.
2021-03-24 16:14:48 +00:00
Alex Beregszaszi 7ac891600d Properly capitalise UTF-8/ASCII in the documentation 2021-03-24 16:09:00 +00:00
Alex Beregszaszi b477a7d163 Document the version/kind fields in the natspec documentation 2021-03-17 16:04:59 +00:00
Alex Beregszaszi 830bc8f88a Clarify the syntax of Solidity is not Python inspired 2021-03-16 17:11:01 +01:00
Alex Beregszaszi 7fd1a3132d Merge pull request #11098 from ethereum/isoltest-yes
isoltest: add --accept-updates option
2021-03-15 19:10:02 +00:00
Alex Beregszaszi 1c176cc1ee isoltest: add --accept-updates option 2021-03-15 14:31:01 +00:00
Alex Beregszaszi d48671a2b7 Merge pull request #10978 from ethereum/use-std-bind
test/libsolidity/util/ContractABIUtils.cpp: use std::bind.
2021-02-19 12:00:54 +00:00
Alex Beregszaszi f766700000 Remove unreachable warning for shift/exp operator 2021-02-16 13:17:58 +00:00
Alex Beregszaszi efe3199981 Remove unreachable assertion for import resolution 2021-02-16 12:55:01 +00:00
Alex Beregszaszi 346344dc7b Add missing test case for try/Catch 2021-02-16 12:33:55 +00:00
Alex Beregszaszi ded5d721d2 Turn unreachable error into assertion 2021-02-16 10:59:22 +00:00
Alex Beregszaszi fd9050614a Remove untriggerable errors on variadic calls (which have been removed) 2021-02-15 22:45:57 +00:00
Alex Beregszaszi 0a3084abc0 Add metadata tests for SPDX-License-Identifier 2021-01-18 16:17:06 +01:00
Alex Beregszaszi 6f1f0c5bbc Do not insert SPDX identifier if already present in SyntaxTest 2021-01-18 16:15:17 +01:00
Alex Beregszaszi 5bbb017915 Add more tests for the SPDX-License-Identifier 2021-01-18 16:15:17 +01:00
Alex Beregszaszi 055c4b4d44 Merge pull request #10795 from ethereum/improve-experimental-pragma-tests
Replace "pragma experimental ABIEncoderV2" in tests where appropriate
2021-01-15 21:48:05 +00:00
Alex Beregszaszi e117c9516e Replace "pragma experimental ABIEncoderV2" in tests where appropriate
And add a few tests for "pragma abicoder".
2021-01-15 19:57:09 +00:00
Alex Beregszaszi d4eb2bd0b4 Merge pull request #10794 from ethereum/pragma-tests
Move all experimental pragma tests to syntaxTests/pragma
2021-01-15 19:13:16 +00:00
Alex Beregszaszi 2c92f7641b Move all experimental pragma tests to syntaxTests/pragma 2021-01-15 19:12:32 +00:00
Alex Beregszaszi 3e678acd7d Merge pull request #10781 from ethereum/new-ir-tests
Enable some semantic tests for the IR
2021-01-15 14:48:22 +00:00
Alex Beregszaszi 293bb01c56 Enable some semantic tests for the IR 2021-01-15 14:10:54 +00:00
Alex Beregszaszi eaf7d7daa7 Merge pull request #10546 from ethereum/isoltestHardError
[isoltest] Error out in case of different result when enforcing via yul.
2021-01-14 22:53:36 +00:00
Alex Beregszaszi 31ee06d945 Merge pull request #10775 from ethereum/useRoundUpInArrayAlloc
Use round up function.
2021-01-14 21:46:32 +00:00
Alex Beregszaszi 6ad0ea9f23 Merge pull request #10773 from ethereum/useArrayAllocationFunction
Fix array allocation.
2021-01-14 20:25:31 +00:00
Alex Beregszaszi 4491a290e2 Display unimplemented errors in Yul codegen testing
i.e. do not hide exceptions
2021-01-14 18:08:01 +00:00
Alex Beregszaszi 7c7fd22062 Include revert strings in IR 2021-01-14 18:45:12 +01:00
Alex Beregszaszi d4627d53eb Merge pull request #10235 from ethereum/onlyFailOnUnimplemented
Fail on assertion failures in yul code generation.
2021-01-14 16:55:07 +00:00
Alex Beregszaszi 4db0e3049e Move snark.sol in tests to externalContracts 2021-01-14 13:55:36 +00:00
Alex Beregszaszi c15c6d26b7 Fix YulUtilFunctions::negateNumberWrappingFunction 2021-01-13 21:29:37 +00:00
Alex Beregszaszi fce6d99900 Merge pull request #10655 from ethereum/semver-empty
Mark the empty version pragma as invalid
2021-01-04 20:09:33 +00:00
Alex Beregszaszi 8edfa26f0a Mark the empty version pragma as invalid 2021-01-04 19:28:36 +00:00
Alex Beregszaszi 67712d50ba Merge pull request #10665 from smarteasy/develop
Update introduction-to-smart-contracts.rst
2020-12-20 13:39:41 +00:00
Alex Beregszaszi 7e20a095a8 Merge pull request #10652 from ethereum/smt_constants_inplce
[SMTChecker] Replace constants by their value in-place
2020-12-18 14:22:32 +00:00
Alex Beregszaszi d5014ea081 Merge pull request #10642 from ethereum/semver-parser
Report meaningful error if parsing a version pragma failed
2020-12-18 13:09:06 +00:00
Alex Beregszaszi 0425936c8a Rename AsmScope* to Scope* 2020-12-18 11:55:17 +00:00
Alex Beregszaszi b14a6a10cc Report meaningful error if parsing a version pragma failed 2020-12-18 11:50:37 +00:00
Alex Beregszaszi 97173247c0 Improve the Error class with a constructor for secondaryLocation
Remove occurances of Error construction using the boost helpers.
2020-12-17 13:50:04 +00:00
Alex Beregszaszi 2fa0e3c88a Merge pull request #10641 from ethereum/yul-error
Simplify StackTooDeepError in Yul
2020-12-17 12:46:26 +00:00
Alex Beregszaszi 9230faf9a3 Simplify StackTooDeepError in Yul 2020-12-16 20:35:11 +00:00
Alex Beregszaszi 2be078b4d0 Merge pull request #10637 from ethereum/remove99
Remove version pragmas using `.99`.
2020-12-16 20:14:44 +00:00