Commit Graph

215 Commits

Author SHA1 Message Date
chriseth
a16677dcfb Fix gas for builtin.
Fixes #1300
2015-03-13 17:31:56 +01:00
Lefteris Karapetsas
cd3e8c1756 Fixing byte array index access code generation 2015-03-12 12:53:00 +01:00
Lefteris Karapetsas
b2fadf6b93 Conversion changes after renaming Hash/String to Bytes.
- Almost all end to end tests pass. Still needs a little bit of work
2015-03-12 12:53:00 +01:00
Lefteris Karapetsas
73ce24ae75 Most EndToEndTests are now compliant with the Bytes renaming 2015-03-12 12:53:00 +01:00
Lefteris Karapetsas
7d7f37bd5e Replacing StaticStringType with FixedBytesType 2015-03-12 12:53:00 +01:00
Lefteris Karapetsas
bede2f2ad7 More changes towards getting rid of HashXX 2015-03-12 12:53:00 +01:00
Liana Husikyan
74a01826ee added information about jump type for jump instructions
Conflicts:
	libevmcore/Assembly.cpp
	libsolidity/Compiler.cpp
2015-03-10 12:02:48 +01:00
chriseth
9c82cbeddf Global variable "now" (alias for block.timestamp). 2015-03-09 19:22:43 +01:00
chriseth
94c51caf89 Fixed: Some instructions did not have source locations. 2015-03-09 13:28:29 +01:00
Lu Guanqun
4033615464 make it work for var x = f; 2015-03-08 09:50:54 -05:00
Lu Guanqun
3b9b71e0ae implement overload resolution 2015-03-08 09:50:06 -05:00
chriseth
0e50ef1ee0 Fixed gas calculation for CALL. 2015-03-06 16:23:39 +01:00
chriseth
6fea41abd8 Merge pull request #1222 from chriseth/sol_copyFromCalldata
Copying between calldata and storage.
2015-03-06 15:42:49 +01:00
chriseth
d8b156ecbb Copying between calldata and storage. 2015-03-06 13:17:52 +01:00
Gav Wood
9aea119e54 Add date/time language to solidity. 2015-03-06 12:46:23 +01:00
Christian
b84cf62d6b Index access for calldata arrays. 2015-03-05 13:19:59 +01:00
Gav Wood
f7f2861f5f Merge branch 'develop' of github.com:ethereum/cpp-ethereum into develop 2015-03-03 11:20:12 +01:00
Gav Wood
226c4a89b2 Solidity STOPs in case of failed call. 2015-03-03 11:19:24 +01:00
Christian
87365f7612 Shortening of dynamic arrays. 2015-02-27 22:52:19 +01:00
Christian
66b6860eb8 Stylistic changes. 2015-02-25 16:22:30 +01:00
Christian
29c614ebaf Removed code duplication. 2015-02-25 15:55:42 +01:00
Christian
cc31a7ab32 LValue refactoring. 2015-02-25 15:41:19 +01:00
Lefteris Karapetsas
71b0d8107a LocationSetter in some extra places during Compiling
- Also adjusted the test, and fixed its error reporting
2015-02-25 10:40:14 +01:00
Lefteris Karapetsas
54121a0d78 Styling changes for SourceLocation and friends 2015-02-25 09:53:28 +01:00
Lefteris Karapetsas
1891020ffb Moving Source Location libdevcore
- Big plus is we now remove the useless header libsolibity/BaseTypes.h
2015-02-24 17:16:22 +01:00
Lefteris Karapetsas
38cb123a82 Adding location information to assembly items
- In order to facilitate this addition we also now have a ScopeGuard
  object used in the Compiler to set the currently visited node.
2015-02-24 17:16:22 +01:00
Christian
820ed2dfe1 Out-of-bounds checking. 2015-02-23 18:28:33 +01:00
Christian
5d2323c914 Index and length access for dynamic arrays. 2015-02-23 18:28:30 +01:00
Christian
754c804d19 Implementation of index access. 2015-02-23 18:25:49 +01:00
Christian
261786d909 Allow conversion to dynamic arrays and update grammar. 2015-02-21 18:25:08 +01:00
Christian
5e32083179 Parsing of array types and basic implementation. 2015-02-21 15:10:01 +01:00
Liana Husikyan
fa3cd1cdc2 renamed local vaiable in fromDeclaration
added missing endvisit
2015-02-20 23:04:32 +01:00
Liana Husikyan
d0c36795a0 renamed fromIdentifier to fromStateVariable 2015-02-20 22:51:23 +01:00
Liana Husikyan
858acaa193 corrected accept for variableDeclaration
changes after code review
2015-02-20 22:51:16 +01:00
Liana Husikyan
1ed86b33bc cosmetic changes 2015-02-20 22:51:16 +01:00
Liana Husikyan
52050201e3 Inline member initialisation
renamed VariableDefinition class to VariableDeclarationStatement
added tests
2015-02-20 22:50:34 +01:00
Christian
197b184d25 Fixes for assigning and deleting structs containing byte arrays. 2015-02-18 00:15:32 +01:00
Christian
a33fa270f6 Calldata byte arrays stored on the stack. 2015-02-16 19:35:53 +01:00
Christian
1f6e365136 Move code to loadFromMemory. 2015-02-16 19:25:27 +01:00
Christian
5c3ea8015c Forced cleanup for conversion to enum. 2015-02-14 13:35:57 +01:00
Christian
c944976d00 Some changes to enums. 2015-02-14 13:35:57 +01:00
Lefteris Karapetsas
fbd39323af Moving getMemberValue from EnumDefinition to EnumType 2015-02-13 23:16:14 +01:00
Lefteris Karapetsas
b2575b4bcb Addressing issues with Enums in Solidity 2015-02-13 23:16:14 +01:00
Lefteris Karapetsas
91943e7368 Enum Value member access should now work properly
- Also detection of duplicate enum values and tests for them have been
  added
2015-02-13 23:16:14 +01:00
Lefteris Karapetsas
012e32942d Enum type conversion and member value access.
- Added tests for the type conversion part.

- Enum member value access still needs some work
2015-02-13 23:16:14 +01:00
Christian
1c3c1f1e5d Copying structs. 2015-02-12 20:19:49 +01:00
Christian
b836d952b2 length member for byte arrays. 2015-02-12 15:44:35 +01:00
Christian
5673f994fc Added some comments. 2015-02-12 11:50:47 +01:00
Christian
9b8cf4af1d Moved copy code to CompilerUtils. 2015-02-12 11:33:10 +01:00
Christian
8a2879a603 Copy storage to storage. 2015-02-12 11:33:10 +01:00
Christian
adb434569c Dynamic copy to memory. 2015-02-12 11:33:10 +01:00
Christian
79aec95228 Simple copy of bytes to storage. 2015-02-12 11:33:09 +01:00
Lu Guanqun
d307b0914c add exponent operator
https://www.pivotaltracker.com/n/projects/1189488/stories/83746404
2015-02-10 23:39:13 +08:00
Christian
cf4144b702 Arbitrary parameters for call() and all hash functions. 2015-02-10 10:59:23 +01:00
chriseth
bb6f181d7d Merge pull request #986 from LefterisJP/sol_StyleFix
Solidity enum style fix
2015-02-10 10:54:28 +01:00
Lefteris Karapetsas
82c5fb3245 Addressing issues in Enum style fix 2015-02-10 09:52:19 +01:00
Lefteris Karapetsas
943407e0fe LValueType of Expression Compiler is now CamelCase 2015-02-09 14:41:01 +01:00
Lefteris Karapetsas
148a7cb3e1 ExpressionCompiler's enums to CamelCase 2015-02-09 14:35:31 +01:00
Lefteris Karapetsas
3ef75bae6b Camelcasing enums in Types.h 2015-02-09 14:08:48 +01:00
Lefteris Karapetsas
6f621f8486 Changing Solidity Code to use CamelCase enum values 2015-02-09 14:00:12 +01:00
Christian
140f003a2e Some cleanup in "move to memory" functions. 2015-02-09 13:40:37 +01:00
chriseth
a66db516fb Merge pull request #937 from LefterisJP/sol_MultiArgSHA3
Solidity multiple arg sha3
2015-02-09 00:14:13 +01:00
Lefteris Karapetsas
afe1d9a592 Small fixes in Types and ExpressionCompiler 2015-02-06 20:57:04 +01:00
Christian
724ee76900 Accessors for structs. 2015-02-06 20:04:02 +01:00
Lefteris Karapetsas
f6586b8139 Small fixes for proper multitype/multiarg SHA3 2015-02-06 17:25:29 +01:00
Lefteris Karapetsas
293344b473 SHA3 of string literals now should work 2015-02-06 16:27:41 +01:00
Lefteris Karapetsas
2c9ff4747d getRealType() introduced 2015-02-06 13:42:51 +01:00
Lefteris Karapetsas
76c9f13626 appendArgumentsCopyToMemory() has more complicated logic now
- Plus other fixes.
2015-02-06 10:42:24 +01:00
Lefteris Karapetsas
337b952f53 Fixes after rebase 2015-02-06 09:38:04 +01:00
Lefteris Karapetsas
f09c6fffc9 Renaming a function for clarity 2015-02-06 09:38:04 +01:00
Lefteris Karapetsas
8c1d928c94 Solidity SHA3 can now take multiple arguments 2015-02-06 09:38:04 +01:00
Gav Wood
2ff4a80b62 Fixes for named-args. 2015-02-03 12:25:08 -08:00
Gav Wood
04164b612c Merge branch 'named-args' of https://github.com/guanqun/cpp-ethereum into guanqun-named-args 2015-02-03 11:57:36 -08:00
Lefteris Karapetsas
8cd3d4b4b7 Accessors for multiple mappings implemented 2015-02-02 17:52:50 +01:00
Lefteris Karapetsas
5a374afe62 Simple mapping accessors working 2015-02-02 15:03:44 +01:00
Lefteris Karapetsas
82bcb7e33a Code generation for mapping state variable accessor
- Work in progress
2015-02-01 02:41:14 +01:00
Christian
8d5ee59ee5 Padding fixes. 2015-01-29 21:33:46 +01:00
Christian
9f8c2620da Whitespace and error messages. 2015-01-29 21:33:46 +01:00
Christian
4e72a77546 Code generation for events. 2015-01-29 21:33:46 +01:00
Lu Guanqun
5c828dc8b2 implement named arguments 2015-01-30 01:32:55 +08:00
Lefteris Karapetsas
71d8bde6d7 No longer exposing retrieveValueFromStorage() as a public function
- plus small fix in EndToEndTests
2015-01-29 13:34:07 +01:00
Christian
6ec9586de3 Style changes. 2015-01-29 00:32:21 +01:00
Christian
ae5a6a235c Super keyword. 2015-01-29 00:29:43 +01:00
Lefteris Karapetsas
b5a786dda1 Various fixes pertaining to State Variable accessors 2015-01-28 21:46:17 +01:00
Lefteris Karapetsas
2947e038d2 EVM Code for simple accessor function is properly generated 2015-01-28 21:46:16 +01:00
Lefteris Karapetsas
6e793b2499 Work on ExpressionCompiler preparing for Accessors from storage 2015-01-28 21:46:16 +01:00
liana
cad3d87482 - cosmetic changes 2015-01-27 13:21:20 +01:00
liana
6ba82b1427 -redesigned appendTypeConversion function 2015-01-27 12:55:40 +01:00
liana
ef885d0212 - modifications according to PR review 2015-01-26 13:24:16 +01:00
liana
3075fc598d - corrected assert 2015-01-23 18:09:46 +01:00
liana
5de93e6acb - added conversion for string/hash of equal sizes
- added tests
2015-01-23 17:45:37 +01:00
Christian
6e111d5d1d Explicit calls to base class function. 2015-01-19 23:35:04 +01:00
Christian
4d833bc86b Inheritance in compiler. 2015-01-19 23:35:04 +01:00
Lefteris Karapetsas
6612e4bd17 Some addition to Solidity Execution Framework 2015-01-19 15:34:15 +01:00
chriseth
325b052b16 Merge pull request #805 from LianaHus/deleteStruct
delete for structs

-added functionality to set values to 0 when deleting structure(not for ...
2015-01-19 11:32:11 +01:00
liana
c3d36d1fe1 - corrected delete in case we have more than one locals
- added a test
2015-01-16 16:26:57 +01:00
liana
a0ec9c6680 removed spaces 2015-01-16 13:07:16 +01:00
liana
1142b99a64 Corrected "delete" for local variables i.e. set them to 0
Added test case
2015-01-16 12:55:49 +01:00
Gav Wood
a9ed77c22a Merge branch 'develop' of github.com:ethereum/cpp-ethereum into develop
Conflicts:
	libsolidity/Types.h
2015-01-15 14:03:35 -05:00
Gav Wood
911916beb7 Add blockhash to Solidity.
Autopadding fix.
2015-01-15 13:59:35 -05:00