Commit Graph
4022 Commits
Author SHA1 Message Date
Alexander Arlt aafa4583df [Sol - Yul] Add support for built-in gasleft(). 2020-04-23 17:14:03 -05:00
Kamil Śliwak e65a5a562e IRGenerationContext::internalDispatch(): Fix code generated when the function called via pointer does not return anything 2020-04-23 21:16:41 +02:00
hrkrshnn 051eec5c51 Converted warnings for .gas and .value into an error 2020-04-23 21:02:02 +05:30
hrkrshnn e2e32d372f virtual modifiers (in Abstract contracts) allow empty bodies 2020-04-23 17:26:59 +05:30
chriseth 16ed53ddd0 Merge pull request #8591 from mijovic/sol2YulConstructorParams
[Sol2Yul] Adding support for constructors with parameters (inheritance)
2020-04-23 12:56:54 +02:00
chriseth edef6a0edd Merge pull request #8757 from ethereum/removeMove
Remove unnecessary move.
2020-04-23 12:28:33 +02:00
chriseth a371910674 Merge pull request #8642 from ethereum/interfaceid
Add support for interfaceId.
2020-04-23 12:24:49 +02:00
chriseth 5a160be128 Merge pull request #8754 from ethereum/smt_improve_array_performance
Use Spacer option to improve performance of constant arrays
2020-04-23 12:19:04 +02:00
chriseth b864fe1c43 Remove unnecessary move. 2020-04-23 12:13:26 +02:00
chriseth 18ee96ac91 Merge pull request #8752 from a3d4/fix-8711-typechecker-compiler-error
Type Checker: Fix internal error when assigning to empty tuples
2020-04-23 12:01:00 +02:00
Leonardo Alt 92059fa848 Use Spacer option to improve performance of constant arrays 2020-04-23 10:45:02 +02:00
a3d4 c4bc77874b Disallow empty tuples on the left hand side 2020-04-23 07:02:04 +02:00
a3d4 9538024c81 Fix #8711, #8277 2020-04-23 05:57:35 +02:00
Leonardo Alt cfe3686116 Fix internal error when using array slices 2020-04-22 23:20:10 +02:00
Leonardo 6d98b907ef Merge pull request #8746 from ethereum/smt_fix_fixed_point
Fix ICE with fixed point
2020-04-22 23:18:41 +02:00
Leonardo Alt b191139f2a Fix undefined behavior with nullptr 2020-04-22 20:49:40 +02:00
Leonardo Alt 83c9e82099 Fix ICE with fixed point 2020-04-22 19:57:00 +02:00
chriseth 6728e3ef94 Merge remote-tracking branch 'origin/develop' into breaking 2020-04-22 17:21:32 +02:00
Djordje Mijovic 5329da93fb [Sol2Yul] Adding support for constructors with parameters in case of inheritance 2020-04-22 14:47:08 +02:00
chriseth 4908101ad7 Yul IR generation for member access to type types. 2020-04-22 11:25:27 +02:00
chriseth 1d8e742296 Merge pull request #8684 from ethereum/yulForSelector
Yul codegen for `.selector`.
2020-04-20 16:32:11 +02:00
chriseth 41ef13129b Merge pull request #8678 from ethereum/smt_remove_redundant_constraints
[SMTChecker] Remove redundant CHC constraints
2020-04-20 15:44:59 +02:00
chriseth 55483445e9 Merge pull request #8663 from ethereum/ir-function-generation-queue
[Sol->Yul] IR function generation queue (refactor)
2020-04-20 15:17:53 +02:00
chriseth 264c4264a1 Merge pull request #8644 from ethereum/refactor-lValueRequested
Replaced all instances of lValueRequested to willBeWrittenTo
2020-04-20 15:03:50 +02:00
chriseth c24c4f85e4 Merge pull request #8665 from ethereum/recursiveStructRefactoring
Recursive struct refactoring and a bunch of ICE fixes.
2020-04-20 13:24:19 +02:00
hrkrshnn 4760b8589d Replaced all instances of lValueRequested to willBeWrittenTo 2020-04-20 12:33:30 +05:30
Kamil Śliwak c7947c1af6 Implement lazy function generation using function generation queue 2020-04-17 13:28:07 +02:00
Kamil Śliwak 1f28f79ae6 IRGenerator::generate(): Remove duplicate call to setMostDerivedContract()
- The same call happens in resetContext(_contract) called immediately before
2020-04-17 13:28:07 +02:00
Leonardo Alt 45f22e3ff4 Add functional map and fold generic functions 2020-04-16 19:21:36 +02:00
Alexander Arlt 3754a86ab2 Add support for interfaceID. 2020-04-16 12:17:40 -05:00
Daniel Kirchner 150497c12a Stricter bounds for memory arrays. 2020-04-16 17:51:18 +02:00
Daniel Kirchner f6d1cee06b Ensure that public callable parameters are valid for calldata. 2020-04-16 17:23:20 +02:00
Daniel Kirchner 6093982606 Review suggestions. 2020-04-16 16:42:12 +02:00
Daniel Kirchner 6f06154eb5 Move direct struct recursion check to detect recursion in global structs. 2020-04-16 16:42:12 +02:00
Daniel Kirchner b744a56801 Refactoring of errors and fixes for various ICEs. 2020-04-16 16:42:12 +02:00
Daniel Kirchner df1809f8da Annotate struct definitions with a recursive flag. 2020-04-16 16:42:12 +02:00
chriseth f271dfa2e2 Yul codegen for .selector. 2020-04-16 13:42:58 +02:00
chriseth 06adbc2c59 Implement bit operations. 2020-04-16 00:33:45 +02:00
Leonardo Alt bca43586c6 [SMTChecker] Remove redundant CHC constraints 2020-04-15 18:11:39 +02:00
Daniel Kirchner b86c927505 Disallow virtual and override for constructors. 2020-04-15 13:58:37 +02:00
Daniel Kirchner 95349b3634 Merge pull request #8672 from ethereum/fixYulEmptyTupleAssign
Fix tuple assignments for empty tuples in Yul IR.
2020-04-15 12:36:46 +02:00
chriseth aff1e93caa Merge pull request #8571 from aarlt/clang-tidy-apply-modernize-pass-by-value
clang-tidy: Apply modernize-pass-by-value.
2020-04-15 12:06:25 +02:00
Daniel Kirchner 0c5c93f3c2 Fix tuple assignments for empty tuples in Yul IR. 2020-04-15 11:10:52 +02:00
Christian Parpart d00d3c45b1 [Sol2Yul] Implements codegen part for try/catch statements. 2020-04-14 18:42:37 +02:00
Christian Parpart 3b83365b42 [libsolidity] TryStatement: Adding AST accessors for success/structured/fail clauses. 2020-04-14 18:39:08 +02:00
Alexander Arlt aac7a1e434 Apply modernize-pass-by-value. 2020-04-14 10:32:13 -05:00
Daniel Kirchner 3af43fd350 Extract typing. 2020-04-14 10:59:28 +02:00
Leonardo accd8d7667 Merge pull request #8639 from ethereum/smt_tuple_sort
[SMTChecker] Add and use tuple sort
2020-04-14 10:01:55 +02:00
Leonardo Alt 4fc9920112 Use tuple sort name plus index for field name 2020-04-09 12:59:57 +02:00
a3d4 3ef510bc86 Removed a redundant else clause. 2020-04-08 23:40:29 +02:00