Christian
7112696993
Fixed arrays in ABI.
2015-03-03 12:58:48 +01:00
chriseth
32e210ecca
Merge pull request #1146 from LefterisJP/sol_fixBaseClassAccessors
...
Sol fix accessing public variable of base class
2015-03-02 12:59:12 +01:00
Lefteris Karapetsas
4f13859f8c
Using normal pointer in getInheritableMembers()
2015-03-02 12:08:32 +01:00
Lefteris Karapetsas
7db2b6fbdb
VisibleInDerivedContracts() is now virtual()
...
- Plus an extra test for internal visibility in a base class variable
2015-03-02 11:51:13 +01:00
Lefteris Karapetsas
47177542f5
Add structs to inheritable members
2015-03-02 11:51:13 +01:00
Lefteris Karapetsas
5e4665b84d
Adding inheritable members to a contract
2015-03-02 11:51:13 +01:00
Christian
2ea8f3a75a
Type checks for array assignment.
2015-02-27 22:52:19 +01:00
Christian
754c804d19
Implementation of index access.
2015-02-23 18:25:49 +01:00
Gav Wood
44db8c26db
Merge pull request #1100 from chriseth/sol_arrays
...
Parsing support for arrays.
2015-02-23 15:19:07 +01:00
Christian
e7528c6af8
Stack height checks and fix.
2015-02-22 19:16:40 +01:00
Christian
5e32083179
Parsing of array types and basic implementation.
2015-02-21 15:10:01 +01:00
Liana Husikyan
52050201e3
Inline member initialisation
...
renamed VariableDefinition class to VariableDeclarationStatement
added tests
2015-02-20 22:50:34 +01:00
Lefteris Karapetsas
de574487e4
getMemberTypes() respects source order
2015-02-17 22:33:44 +01:00
Gav Wood
1e2d4b5c00
Merge pull request #1072 from chriseth/sol_external
...
bytes ABI type and external visibility specifier
2015-02-17 19:38:35 +01:00
Lefteris Karapetsas
c7e9984574
Initialize FunctionType's m_isConstant attribute in the Event Constructor
2015-02-17 09:24:58 +01:00
Christian
a33fa270f6
Calldata byte arrays stored on the stack.
2015-02-16 19:35:53 +01:00
Christian
3e29ec2cb2
"external" visibility specifier.
2015-02-16 19:24:07 +01:00
Lefteris Karapetsas
68cf1bf37d
Small improvement in TypeType::getMembers()
2015-02-13 23:28:19 +01:00
Lefteris Karapetsas
9a879202e1
Explicit conversion from int to Enum
2015-02-13 23:16:15 +01:00
Lefteris Karapetsas
fbd39323af
Moving getMemberValue from EnumDefinition to EnumType
2015-02-13 23:16:14 +01:00
Lefteris Karapetsas
b20ce4451b
Typo in EnumValue
2015-02-13 23:16:14 +01:00
Lefteris Karapetsas
52808f67fa
EnumDeclaration -> EnumValue
2015-02-13 23:16:14 +01:00
Lefteris Karapetsas
b1b6b63d6b
Indentation fixes
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
Lefteris Karapetsas
e7f40863ef
Correcting and testing enum member access
2015-02-13 23:16:14 +01:00
Lefteris Karapetsas
a989f6f97a
Enums NameAndTypeResolution - WIP
...
- Also adding an EndToEnd enum test
2015-02-13 23:16:14 +01:00
Lefteris Karapetsas
c3a9ae0b06
Introducing EnumType and some Parser tests
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
5e40b79426
Bytes type cleanup.
2015-02-12 15:01:38 +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
Christian
20b4c69009
Tests and some code for msg.data.
2015-02-12 11:33:09 +01:00
Christian
1369337808
Introduced byte array type.
2015-02-12 11:33:09 +01:00
Lu Guanqun
11b4e7f7d8
small fixes per chris's comments
2015-02-10 23:39:13 +08: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
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
106cda74f8
Small cleanup.
2015-02-09 00:49:35 +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
2c9ff4747d
getRealType() introduced
2015-02-06 13:42:51 +01:00
Christian
82edc1ca6d
Some fixes for the ether units parser.
2015-02-06 13:38:29 +01:00
Lefteris Karapetsas
c966ff246f
More style changes in enums
2015-02-05 23:03:24 +01:00
Lefteris Karapetsas
305f54b23f
Minor Style fixes
2015-02-05 22:38:07 +01:00
Lefteris Karapetsas
eaadc71b4c
Tests and fixes for ether subdenominations
2015-02-05 15:41:13 +01:00
Lefteris Karapetsas
dca5f7b57b
Adding ether subdenominations after constan literals
2015-02-04 17:52:28 +01:00
Gav Wood
7050893bc1
Minor typo.
2015-02-03 08:48:11 -08:00
Lefteris Karapetsas
8cd3d4b4b7
Accessors for multiple mappings implemented
2015-02-02 17:52:50 +01:00
Lefteris Karapetsas
ec7a9bf919
Adding mapping treatment to FunctionType
...
Plus a TypeResolution test for it
2015-02-01 00:20:35 +01:00
Gav Wood
8e84dc27a7
Merge branch 'develop' of github.com:ethereum/cpp-ethereum into develop
...
Conflicts:
test/SolidityEndToEndTest.cpp
test/SolidityNameAndTypeResolution.cpp
test/SolidityParser.cpp
2015-01-29 16:05:17 -08:00
Christian
cfb55901cc
Fallback functions.
2015-01-29 22:50:20 +01:00
Christian
4a6ed84386
Parsing of events.
2015-01-29 21:26:11 +01:00
Lefteris Karapetsas
3701543ae8
FunctionType now returns const ref for Declaration
2015-01-29 19:18:50 +01:00
Lefteris Karapetsas
04190798eb
Minor fixes plus a rebase merge fix
2015-01-29 18:21:51 +01:00
Lefteris Karapetsas
005100c486
Contract Interface Functions now return FunctionType
...
- Enchanced Function Type by declaration so that it can provide all the
required information at each place interface functions are consumed
- Changed all places where interface functions was used.
- Simplified Mix's FunctionDefinition code
2015-01-29 17:11:13 +01:00
Christian
ae5a6a235c
Super keyword.
2015-01-29 00:29:43 +01:00
Lefteris Karapetsas
c6fcb8555f
Simplify FunctionType's Vardecl constructor
2015-01-28 21:46:16 +01:00
Lefteris Karapetsas
3f5eb96584
Various small fixes for Sol Automatic Accessors
2015-01-28 21:46:16 +01:00
Lefteris Karapetsas
5c7359aa09
State variable accessors code is now more organized
...
- FunctionDescription is the abstraction of what should describe a
function. It can either be a VariableDeclaration of a
FunctionDefinition.
- ParamDescription is what FunctionDescription uses to describe its
parameters for outside use purposes with a pair of (name, type)
strings
- Modified code around Solidity and especially interface handler to
adapt to this change
2015-01-28 21:46:16 +01:00
Lefteris Karapetsas
3cc0492301
Work in progress for state variable accessors
...
- Changed the code so that a generic declaration with the combination of
a function type can be used wherer a function definition was used
before
- Since using an std::pair everywhere is really tiring with this commit
I am in the process of abstracting it into a function
2015-01-28 21:46:16 +01:00
chriseth
18fc2ed2d6
Merge pull request #857 from LianaHus/StringToHash
...
conversion for string to/from hash
2015-01-27 13:53:13 +01:00
Christian
941c77c8fa
Type resolution for function modifiers.
2015-01-26 10:23:39 +01:00
liana
5de93e6acb
- added conversion for string/hash of equal sizes
...
- added tests
2015-01-23 17:45:37 +01:00
Christian
d854e56789
Include virtual function overrides in constructor context.
2015-01-20 15:58:04 +01:00
Christian
417f9c03d0
Implicit conversion from derived to base.
2015-01-19 23:35:04 +01:00
Christian
6e111d5d1d
Explicit calls to base class function.
2015-01-19 23:35:04 +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
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
liana
00b0b0933d
- added functionality to set values to 0 when deleting structure(not for mapping)
...
- added unit test
Made some changes after Christian`s review on pull request
- remove/edit comments
- BoolType and ContractType return VoidType after delete
- fixed constructor_arguments test
- fixed set to 0 when deleting variable from stack
- changed test case to test that
2015-01-15 11:59:58 +01:00
Christian
d1e05ac416
Remove redundancy in FunctionType::getSizeOnStack.
2015-01-14 11:01:42 +01:00
Christian
b440d7e321
Specify value for contract creation.
2015-01-13 18:12:30 +01:00
Christian
ec022783c4
Modify gas and value for external function call.
2015-01-13 18:12:30 +01:00
Christian
a5d32e4894
Define strings = vector<string>
2015-01-12 13:29:16 +01:00
Christian
307a83e1de
More convenient function type construction.
2015-01-12 12:46:52 +01:00
Christian
c5c8933192
Contracts are Addresses.
2015-01-09 18:31:36 +01:00
Christian
a60d82d12c
Remove const from make_shared to allow enable_shared_from_this to work on MacOS.
2015-01-09 15:16:09 +01:00
Christian
be623273f3
Arbitrary precision integer constants.
2015-01-09 15:16:09 +01:00
Christian
be1e89da42
Possibility for unary operators to change type.
2015-01-09 15:09:10 +01:00
Christian
dcda38cf38
Use shared_from_this instead of manually supplying a shared_ptr to this.
2015-01-09 15:09:10 +01:00
Lefteris Karapetsas
9cf1c066fc
Adjustments to Solidity compiler code for Function Hash
2015-01-09 00:27:26 +01:00
Lefteris Karapetsas
a7b661d3be
merging develop
2015-01-08 17:43:38 +01:00
Lefteris Karapetsas
184ddca5a1
Compiler EVM generation now takes into account for the new function hash
...
identifier
- Changed tests to comply with the new function hash identifier
- Changed the function index offset to 4, and made it a constant for
easy adjustment in the future
2015-01-08 17:18:31 +01:00
Lefteris Karapetsas
c55608f94b
Solidity getInterfaceFunctions is now a map of hash to Function
...
- Also introduced dependency between libsolidity and libdevcrypto
- Compler's appendFunctionSelector now has a first version of using
function signature hash instead of index
2015-01-07 16:39:21 +01:00
Gav Wood
53e38b3ac9
Merge pull request #738 from LefterisJP/sol_abiFunctionHash
...
Canonical Function signature creation in solidity
2015-01-07 16:32:13 +01:00
Lefteris Karapetsas
df0dce584d
Small issues with Canonical Function Signature
...
- Also added an extra test
2015-01-07 10:45:59 +01:00
Lefteris Karapetsas
24d7bdd3a9
FunctionType also gets CanonicalSignature
...
- also using iterators in the signature creation function
2015-01-07 02:27:05 +01:00
Christian
8442974617
Clarified binary operator checking for integer types.
2014-12-28 13:35:58 +01:00
Christian
7dc7827907
Possibility for binary operators to yield types different from their operands'.
2014-12-19 00:12:04 +01:00
Christian
5a1a83ff42
Assertions that throw InternalCompilerErrors.
2014-12-17 16:24:56 +01:00
Christian
5b802b685e
Stylistic changes.
2014-12-16 16:15:34 +01:00
Christian
2f64c56ef3
Create contracts.
2014-12-15 13:05:18 +01:00
Christian
739192ae65
Correctly check for string prefix plus indentation change.
2014-12-15 01:02:33 +01:00
Christian
c0bba438b1
Calls to bare contracts.
2014-12-12 17:26:19 +01:00
Christian
a735228079
Support empty strings.
2014-12-11 14:19:11 +01:00
Christian
8b54d1afb2
Merge remote-tracking branch 'ethereum/develop' into sol_strings
...
Conflicts:
libsolidity/Types.cpp
2014-12-10 17:24:23 +01:00