Commit Graph
100 Commits
Author SHA1 Message Date
Daniel Kirchner e7daed68c1 Merge pull request #4911 from ethereum/addressPayable
Payable and non-payable address type.
2018-09-13 17:30:54 +02:00
Daniel Kirchner ae35a58124 Add `stateMutability field to JSON AST for address` types. 2018-09-13 15:15:49 +02:00
Daniel Kirchner 12aaca1645 Add payable and non-payable state mutability to AddressType. 2018-09-13 15:15:49 +02:00
Daniel Kirchner 879251a78b Update test suite to use address payable. 2018-09-12 16:21:43 +02:00
Daniel Kirchner 1ce3581a52 Accept `address payable` during parsing. 2018-09-11 14:52:23 +02:00
Daniel Kirchner f19cddd59e Merge pull request #4917 from ethereum/parserCleanup
Parser cleanup.
2018-09-06 16:01:44 +02:00
Daniel Kirchner f020f96b6c More consistently use parse*() functions without argument in the parser. 2018-09-06 14:55:07 +02:00
Daniel Kirchner 87804b6419 Split IntegerType into IntegerType and AddressType. 2018-09-05 12:19:14 +02:00
Daniel Kirchner 1ae6ec9038 Remove trailing whitespace. 2018-09-04 17:43:04 +02:00
Daniel Kirchner 1cd96b2dc4 Trailing whitespace detection script and circleci job. 2018-09-04 17:36:47 +02:00
Daniel Kirchner 9695d7b38d Use wildcards for MSVC version in scripts/release.bat. 2018-09-04 16:35:25 +02:00
Daniel Kirchner e3097b30da Add another end-to-end test. 2018-09-04 15:34:21 +02:00
Daniel Kirchner cf69433f23 Update documentation. 2018-09-04 13:31:10 +02:00
Daniel Kirchner 0011f8aef9 Update compilation tests. 2018-09-04 13:31:10 +02:00
Daniel Kirchner 82f512a7d4 Add return data to bare calls. 2018-09-04 13:31:10 +02:00
Daniel Kirchner b4a02522a4 Update generation of bugs_by_version.json. 2018-09-04 11:30:30 +02:00
Daniel Kirchner a102f3b783 Remove trailing whitespace for all files in the repository. 2018-09-04 11:30:30 +02:00
Daniel Kirchner db48925907 Add some more documentation. 2018-08-15 17:06:42 +02:00
Daniel Kirchner a34735016c Add syntax test for `address.staticcall.value`. 2018-08-15 16:06:48 +02:00
Daniel Kirchner ed5265598b Add view pure checker tests for `address.staticcall(...)`. 2018-08-15 16:06:48 +02:00
Daniel Kirchner 7ca0aaaf6f Add `staticcall to address`. 2018-08-15 16:06:48 +02:00
Daniel Kirchner 4f3f4a916b Extend documentation about explicit and implicit conversions between (u)intXX, bytesYY and literals. 2018-08-14 21:42:01 +02:00
Daniel Kirchner b325a70d59 Fix tests for constantinople (expect zero for the time being). 2018-08-14 11:42:34 +02:00
Daniel Kirchner 06b7edfdcf Add missing tests for `gasleft(), blockhash() tx.gasprice and block.gaslimit`. 2018-08-14 11:42:34 +02:00
Daniel Kirchner dfcfc4c35b Add tests for mappings in function types. 2018-08-13 16:33:37 +02:00
Daniel Kirchner 341128962f Allow mappings of arrays as arguments and return values of internal functions. 2018-08-13 16:33:37 +02:00
Daniel Kirchner 4ae59acc09 Consider mappings return values in control flow analysis. 2018-08-13 16:33:37 +02:00
Daniel Kirchner a9f31da411 Allow mapping arguments and return values in all internal functions. 2018-08-13 15:50:22 +02:00
Daniel Kirchner 57ada1d69e Allow mapping arguments and return values in internal library functions. 2018-08-13 14:31:10 +02:00
Daniel Kirchner 7d7abeb149 Disallow ambiguous conversions between number literals and bytesXX types. 2018-08-13 14:27:01 +02:00
Daniel Kirchner a7885e0b0a Update documentation. 2018-08-10 19:26:48 +02:00
Daniel Kirchner 954d7433bd Disallow remappings with empty prefix. 2018-08-10 19:26:48 +02:00
Daniel Kirchner b6e352f694 Merge pull request #4767 from ethereum/cvc4Build
Add workarounds for building against CVC4 on ArchLinux.
2018-08-09 15:45:52 +02:00
Daniel Kirchner 46b0feb602 Add Changelog entry. 2018-08-08 19:29:25 +02:00
Daniel Kirchner c7a0f44159 Do not force GMP to be present as dependency of CVC4, but also allow CLN instead. 2018-08-08 19:02:59 +02:00
Daniel Kirchner 9b4546c487 Add workarounds for building against CVC4 on ArchLinux. 2018-08-08 19:02:59 +02:00
Daniel Kirchner fb0e3b25d0 Rename JSONCPP_EXTRA_FLAGS to JSONCPP_CXX_FLAGS, add EMSCRIPTEN workaround and remove obsolete MSVC workaround. 2018-08-08 13:17:13 +02:00
Daniel Kirchner 99d3e8e45a Add back lost test case to a more reasonable location. 2018-08-08 12:48:59 +02:00
Daniel Kirchner 576ba91970 Adjust return expressions in compilation tests. 2018-08-08 12:48:59 +02:00
Daniel Kirchner 967bb6d999 Initialize `TestTool::m_formatted`. 2018-08-07 21:23:01 +02:00
Daniel Kirchner bb518b59aa Update and extend tests for return expressions. 2018-08-07 20:49:52 +02:00
Daniel Kirchner cc83e69469 Disallow empty return expressions in functions with non-empty return parameters. 2018-08-07 20:48:07 +02:00
Daniel Kirchner a6df7b1fb8 Always count all test cases in isoltest and exit early on user request. 2018-08-07 19:28:21 +02:00
Daniel Kirchner b11e39e25e Remove remaining instances of `fillRight` left over from tuple wildcards assignments. 2018-08-07 18:51:53 +02:00
Daniel Kirchner bdd86cb39c Update tests. 2018-08-06 11:17:21 +02:00
Daniel Kirchner 44374a5846 Remove "constant" from JSON AST. 2018-08-06 11:15:25 +02:00
Daniel Kirchner 55386ba130 Extract AST JSON tests. 2018-08-03 20:35:50 +02:00
Daniel Kirchner d923926ff7 Infrastructure for extracting JSON AST tests. 2018-08-03 20:35:50 +02:00
Daniel Kirchner cbae02b514 Additional semantics test cases. 2018-08-03 17:38:30 +02:00
Daniel Kirchner f9b90feea0 Review suggestions; to be squashed. 2018-08-03 17:38:06 +02:00
Daniel Kirchner 1e4b5886d6 Allow assignments to local variables of mapping types. 2018-08-03 16:22:03 +02:00
Daniel Kirchner c0a169ca90 Disallow assignments to mappings within tuple assignments. 2018-08-03 15:46:26 +02:00
Daniel Kirchner 35c5b7de25 Turn warning about uninitialized storage returns into an error. 2018-08-02 19:34:38 +02:00
Daniel Kirchner 9d11557dc9 Define BOOST_TEST_DYN_LINK for building soltest if Boost_USE_STATIC_LIBS is not set. 2018-08-02 14:41:32 +02:00
Daniel Kirchner 8781990ff3 Remove trailing whitespace in all contract files. 2018-08-01 21:57:12 +02:00
Daniel Kirchner ce7c7aca79 Extend code comment about signatures. 2018-08-01 17:18:17 +02:00
Daniel Kirchner 4bcc4d2fcf Add additional test cases. 2018-08-01 17:18:17 +02:00
Daniel Kirchner cea46acef7 Update documentation. 2018-08-01 17:18:17 +02:00
Daniel Kirchner 30d9961efb Do not exclude public state variables when looking for conflicting declarations. 2018-08-01 14:31:04 +02:00
Daniel Kirchner 62645d5302 Update tests. 2018-07-12 20:33:52 +02:00
Daniel Kirchner 6f383e1626 Update documentation. 2018-07-12 20:33:51 +02:00
Daniel Kirchner d936eebe50 Update Changelog. 2018-07-12 20:33:51 +02:00
Daniel Kirchner fc370591f0 Disallow multi variable declarations with mismatching number of values. 2018-07-12 20:33:51 +02:00
Daniel Kirchner faa55f6544 Add test cases. 2018-07-12 20:14:31 +02:00
Daniel Kirchner f6f8fe6450 Add Changelog entry. 2018-07-12 20:14:30 +02:00
Daniel Kirchner d71a023c0b Use CycleDetector and account for multi-dimensional arrays. 2018-07-12 20:14:02 +02:00
Daniel Kirchner d4dfd28694 Consider fixed size array members when checking for recursive structs. 2018-07-12 20:14:02 +02:00
Daniel Kirchner df8bbffd8e Update docs. 2018-07-12 12:54:42 +02:00
Daniel Kirchner aa81ac4456 Update Changelog. 2018-07-12 12:54:42 +02:00
Daniel Kirchner 899efd5e64 Update compilation tests wrt requiring storage locations. 2018-07-12 12:54:42 +02:00
Daniel Kirchner 8b4b8bdbae Update test wrt requiring storage locations. 2018-07-12 12:54:42 +02:00
Daniel Kirchner a1f54f4e40 Require storage location. 2018-07-12 12:48:18 +02:00
Daniel Kirchner 08d0c9b7d7 Add Changelog entry. 2018-07-11 18:53:16 +02:00
Daniel Kirchner dedf13633c Split test case into failing and succeeding case. 2018-07-11 15:37:37 +02:00
Daniel Kirchner e8e5e12ad2 Fix literals with exponents with mantissa of zero. 2018-07-11 15:34:17 +02:00
Daniel Kirchner 6d28278b3f Update end-to-end tests. 2018-07-10 15:53:48 +02:00
Daniel Kirchner 833fc8955f Update changelog. 2018-07-10 15:28:06 +02:00
Daniel Kirchner ad47fe23c1 Update tests. 2018-07-10 15:28:05 +02:00
Daniel Kirchner a6e5a51d61 Disallow empty tuple components. 2018-07-10 15:27:46 +02:00
Daniel Kirchner 951b745bd9 Update docs. 2018-07-10 13:27:48 +02:00
Daniel Kirchner afa5f528f5 Update tests. 2018-07-10 12:17:01 +02:00
Daniel Kirchner 36022493df Add Changelog entry. 2018-07-10 12:17:01 +02:00
Daniel Kirchner ece9afef8f Check for matching number of components in TupleType::isImplicitlyConvertibleTo instead of the TypeChecker. 2018-07-10 12:17:01 +02:00
Daniel Kirchner 65631cffc2 Update documentation and Changelog. 2018-07-10 11:38:33 +02:00
Daniel Kirchner 46d6454b1f Update tests. 2018-07-10 11:38:32 +02:00
Daniel Kirchner fe1d5da2a6 Turn uninitialized storage variables into an error. 2018-07-10 11:37:45 +02:00
Daniel Kirchner f5be38bff1 Extend view pure test suite. 2018-07-04 11:25:45 +02:00
Daniel Kirchner d9a8f2aace Update documentation and Changelog. 2018-07-04 10:14:58 +02:00
Daniel Kirchner 0a738b4ac4 Adjust tests wrt strict view pure checker. 2018-07-04 10:14:58 +02:00
Daniel Kirchner 7ea8365ab0 Remove v050 check for enforcing "view" in ViewPureChecker. 2018-07-04 10:14:58 +02:00
Daniel Kirchner a7fc8a996b Update Changelog. 2018-07-03 15:31:34 +02:00
Daniel Kirchner 717c70a88f Update test suite. 2018-07-03 15:31:34 +02:00
Daniel Kirchner f7153ee58a Update documentation. 2018-07-03 15:31:34 +02:00
Daniel Kirchner 3984beef7d Remove constant keyword from parser. 2018-07-03 15:31:34 +02:00
Daniel Kirchner 9d23fd8013 Update compilation tests. 2018-07-02 18:58:44 +02:00
Daniel Kirchner 469dc7bbe7 Update test contracts. 2018-07-02 18:58:43 +02:00
Daniel Kirchner 9aefe2f118 Remove trailing whitespace in missing visibility warning. 2018-07-02 13:14:58 +02:00
Daniel Kirchner 334c023c72 Determine transaction status in RPC sessions. 2018-07-02 12:56:33 +02:00
Daniel Kirchner dbfee87860 Return parameters in function types may not be named. 2018-06-18 00:05:06 +02:00
Daniel Kirchner 09c3317bd8 Correctly choose python version for scripts requiring python2. 2018-06-15 16:29:42 +02:00