Commit Graph

237 Commits

Author SHA1 Message Date
Liana Husikyan
fb1cf35f3b added implementation to append code for State variable accessor
fixed tests
2015-04-08 15:56:35 +02:00
Liana Husikyan
df3ce3ad8f some more tests 2015-04-08 15:56:35 +02:00
Liana Husikyan
7eec25b6eb added createing FunctionType from ArrayType VariableDeclaration
added test
2015-04-08 15:56:35 +02:00
chriseth
158795e48f Merge remote-tracking branch 'ethereum/develop' into sol_overloadingFunctions 2015-04-07 17:08:49 +02:00
chriseth
da47c88411 Retain more gas for the case that the called contract is not yet created. 2015-04-07 14:03:57 +02:00
chriseth
d0ede6fafd Refactor: Pull out array index access. 2015-03-30 19:32:14 +02:00
Liana Husikyan
a3d829d074 added externalTypes function to functionType
removed flag for externalSigniture
2015-03-27 13:28:32 +01:00
Liana Husikyan
8f747aab0f tests for external types 2015-03-25 14:20:13 +01:00
Liana Husikyan
9986b072ad renamed externalTypes to externalSignature 2015-03-25 13:59:46 +01:00
Liana Husikyan
701b34fbeb renamed getCanonicalSignature
added externalTypes instead of types for interface functions
added simple test

todo
testing
2015-03-25 13:59:46 +01:00
chriseth
dba9dd1169 Byte size checked for zero; coding style. 2015-03-19 18:15:16 +01:00
chriseth
2cde4f3404 Packing for arrays. 2015-03-17 18:13:28 +01:00
Liana Husikyan
46cbb5525c added anonymous to ABI 2015-03-17 14:25:23 +01:00
Liana Husikyan
5a5577f5a5 changed the position of 'anonymous' keyword: event <name>() anonymous.
- style changes
2015-03-17 14:25:13 +01:00
Liana Husikyan
2986ecbd75 Added anonymous flag to event.
added test
2015-03-17 10:51:03 +01:00
chriseth
02595abf6a Fetch and store packed values. 2015-03-16 18:07:14 +01:00
chriseth
fff3f98f58 Enlarge storage references to two stack slots. 2015-03-16 18:07:14 +01:00
chriseth
c34e1da6db Merge pull request #1325 from LefterisJP/sol_MsgSig
Adding msg.sig Solidity Magic type
2015-03-16 17:30:18 +01:00
Lefteris Karapetsas
bb5364dd66 Additional test for msg.sig 2015-03-16 16:42:56 +01:00
Lefteris Karapetsas
d7ffba1504 Adding msg.sig Solidity Magic type
msg.sig will return a bytes4 with the function signature located in CALLDATALOAD
2015-03-16 12:59:56 +01:00
Liana Husikyan
7d6357ae53 - added isPartOfExternalInterface to Declaration
- changed position for the constant specifier. now it goes after type: <type> <constant> <name> = <value>
- removed tests for constant functions, checkings for constant function doesn't belong to this story
2015-03-16 10:46:46 +01:00
Liana Husikyan
67cd3a7180 added parsing for constant variables 2015-03-16 10:46:46 +01:00
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