Commit Graph
2585 Commits
Author SHA1 Message Date
Mathias Baumann e4a52aa2f6 Allow dynamic types in public mappings 2019-02-26 15:48:54 +01:00
Alex Beregszaszi d2f493268b Provide access to the name of contracts. 2019-02-26 14:07:03 +00:00
chriseth 80417e3d8c Merge pull request #6100 from ethereum/smt_dynamic_cast_types
[SMTChecker] Replace dynamic_cast by category check
2019-02-26 13:28:48 +01:00
chriseth 38fc740690 Merge pull request #6080 from ethereum/library-index-access
Disallow index access on contracts and libraries
2019-02-26 13:26:05 +01:00
Leonardo Alt bbd2c91e19 [SMTChecker] Replace dynamic_cast by category check 2019-02-26 00:47:59 +01:00
Erik Kundt 2d0daae796 Disallows index access on contracts and libraries. 2019-02-25 23:05:33 +00:00
Alex Beregszaszi 358ccbe372 Properly issue unimplemented assertion on FixedPointType in type conversion 2019-02-25 21:21:33 +00:00
Leonardo Alt 2405b2151a EVMVersion in langutil namespace instead of solidity 2019-02-25 15:29:57 +01:00
chriseth 7f5b335b47 Make EVM version part of EVM dialect. 2019-02-21 21:59:46 +01:00
Alex Beregszaszi fcf884f201 Do not ignore fatal error in AsmParser for inline assembly 2019-02-21 16:18:53 +00:00
Mathias Baumann c65a96d189 Small documentation fixes in the code 2019-02-21 12:54:39 +01:00
chriseth fb07462d82 Fix: Do use actual ABI signatures for events also in libraries instead of internal signature. 2019-02-20 14:35:24 +01:00
Alex Beregszaszi 52496ea719 Proper error message for missing variables in inline assembly 2019-02-20 10:36:55 +00:00
Mathias Baumann a63f7ca9df Fix crash due to missing type info 2019-02-19 17:28:44 +01:00
chriseth d9e4a10d5a Merge pull request #6000 from ethereum/fixECRecoverABIV2
Fixed internal error related to ecrecover and ABIEncoderV2.
2019-02-19 14:36:08 +01:00
chriseth 874648b924 Merge pull request #5999 from ethereum/smt_lazy_overflow
[SMTChecker] Check for under/overflow in the end of the function
2019-02-19 14:28:55 +01:00
chriseth 05541e5adb Fixed internal error related to ecrecover and ABIEncoderV2. 2019-02-19 14:17:03 +01:00
chriseth d5791fef41 Fix combination of delegatecall and ABIEncoderV2.
We can set the flag to false for bare delegatecall, because we always
send a memory string and never a storage reference.
2019-02-19 13:57:03 +01:00
chriseth 55c4131a03 Merge pull request #6030 from ethereum/fixABIEncoderV2Mapping
Allow cleanup for mappings (do nothing).
2019-02-19 13:56:21 +01:00
Leonardo Alt 34470f3549 [SMTChecker] Only check for overflow/underflow in the end of the function 2019-02-18 23:55:58 +01:00
Alex Beregszaszi 2949bd14dd Merge pull request #6028 from ethereum/warn-about-unused-struct-array-expr
Detect custom type expressions that have no effect
2019-02-18 21:12:04 +00:00
Mathias Baumann e3d4155fa8 Detect custom type expressions that have no effect 2019-02-18 18:59:31 +01:00
chriseth c690f679cb Allow cleanup for mappings (do nothing). 2019-02-18 18:50:22 +01:00
Mathias Baumann 093b9ced97 Make sure "value" error hint is only displayed in the right context
Before, the hint would be shown for any "value" member, even a user-specified one.
2019-02-18 16:29:57 +01:00
Daniel Kirchner d74198b3cc Remove misleading note in Type::calldataEncodedSize. 2019-02-18 16:18:40 +01:00
chriseth cb0ad2266c Merge pull request #6008 from ethereum/smt_fix_abstract_assignment
[SMTChecker] Assert type is not function when assigning
2019-02-18 14:54:20 +01:00
chriseth db7b38e3c4 Merge pull request #5978 from ethereum/fix-broken-hint
Fix error msg hint for non-payable contracts
2019-02-18 11:49:07 +01:00
Daniel Kirchner 0408130338 Merge pull request #6003 from ethereum/moreStyleChecks
Even more style checks.
2019-02-15 11:52:32 +01:00
Leonardo Alt 22cdfb18d4 [SMTChecker] Assert type is not function when assigning 2019-02-14 13:32:56 +01:00
Daniel Kirchner 809b9a95f9 Even more style checks. 2019-02-14 11:53:00 +01:00
Daniel Kirchner 8ca6715e18 More style checks. 2019-02-14 11:41:20 +01:00
Mathias Baumann 223dac3eca TypeChecker: Use cast instead of category() check 2019-02-14 11:39:51 +01:00
Mathias Baumann 10a9960eb3 Fix error msg hint for non-payable contracts 2019-02-14 11:39:19 +01:00
Daniel Kirchner 32190dac48 Add stride helpers to ArrayType. 2019-02-14 10:51:39 +01:00
chriseth f003696d7e Merge pull request #5994 from ethereum/error-to-assert
Turn unreachable error into assert
2019-02-13 17:54:01 +01:00
chriseth 1a823f0bf8 Fix tabs/spaces. 2019-02-13 17:05:48 +01:00
Mathias Baumann a70fee7316 Turn unreachable error into assert
The exact conditions are already checked when iterating over the
possibleMembers where the function `canTakeArguments()` is called
for each member. The function does the identical check.
2019-02-13 16:51:05 +01:00
chriseth 17ea467e5b Fix style of "const". 2019-02-13 16:34:53 +01:00
chriseth d073eb1544 Move AssemblyStack to libyul. 2019-02-13 12:23:07 +01:00
chriseth 02373c2225 Adjust uses of AsmCodeGen. 2019-02-13 11:35:49 +01:00
chriseth 1ff6f2c71c Move AsmCodeGen. 2019-02-13 11:20:15 +01:00
Bhargava Shastry 7751fa740f Ensure we fail gracefully when user tries to optimize Yul code 2019-02-12 11:21:02 +01:00
Daniel Kirchner 9e32aa7510 Disallow calldata arrays with dynamically encoded base types in TypeChecker. 2019-02-11 17:13:12 +01:00
chriseth 92cb6cb793 Merge pull request #5936 from ethereum/calldataStructsV2
ABIEncoderV2: Implement calldata structs without dynamically encoded members.
2019-02-11 16:18:27 +01:00
chriseth 18c7ad08a0 Merge pull request #5925 from ethereum/stackCompressor
Stack compressor
2019-02-11 16:17:47 +01:00
chriseth b34e104173 Make dialect a shared pointer. 2019-02-11 15:48:29 +01:00
Mathias Baumann 259d803387 Conditional Expression: Delay invalid type fatal error
Check the whole conditional first and then output errors for
both, the true and false expressions.
2019-02-11 15:47:19 +01:00
Daniel Kirchner 0e4912a203 ABIEncoderV2: Implement calldata structs without dynamically encoded members. 2019-02-11 15:46:58 +01:00
chriseth b5a2c66771 Merge pull request #5957 from ethereum/function-param-fix
Ensure function parameter names always matches parameter types length
2019-02-11 15:45:28 +01:00
Mathias Baumann 66b24225fb Remove duplicate if-check 2019-02-11 14:56:57 +01:00