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
chriseth
3c377f77bb
Merge pull request #577 from chriseth/sol_constCleanup
...
Solidity const cleanup
2014-12-10 17:19:01 +01:00
Christian
130ff85e85
String types.
2014-12-10 16:30:20 +01:00
Christian
13640d7db8
Clear separation between ASTVisitor and ASTConstVisitor and more const specifiers.
2014-12-08 12:53:56 +01:00
Christian
57e6827cb5
Calling functions of other contracts.
2014-12-08 12:39:29 +01:00
Christian
24f3a4a2ea
Fix: Storage offset of first struct member should be zero.
2014-12-02 17:58:44 +01:00
Christian
3e32ce5d4f
Minor changes to magic variables.
...
gas moves to "msg", ripemd160 returns hash160.
2014-11-27 18:24:59 +01:00
Christian
f30dc68cdd
Sending ether.
2014-11-26 15:35:25 +01:00
Christian
a2715c5f34
More general function types and references.
2014-11-26 15:35:25 +01:00
Christian
6e6b85b58a
Access to blockchain data.
2014-11-24 13:24:03 +01:00
Christian
583a315d3d
Magic variables.
2014-11-23 21:28:45 +01:00
Christian
c50cd646ce
Contracts as types and framework for special global variables.
2014-11-23 21:28:44 +01:00
Christian
fa987e0a20
Convenience class for type members.
2014-11-23 21:04:39 +01:00
Christian
735dbe6986
We only care about member types.
2014-11-23 21:04:39 +01:00
Gav Wood
3e57086efe
Fix warnings, release errors.
2014-11-18 17:49:31 +01:00
Christian
c560a62352
Struct types.
2014-11-14 14:08:14 +01:00