Liana Husikyan
2f50eb0028
added error jump instead of STOP instraction in case of exception
2015-06-01 13:06:12 +02:00
chriseth
6332bff81d
Gas estimation for internal functions.
2015-05-26 11:27:59 +02:00
chriseth
da121c9a26
Reverse if and else body.
2015-05-12 17:50:51 +02:00
chriseth
69693f17f6
New ABI encoding for dynamic types.
2015-05-08 16:54:39 +02:00
Gav Wood
22eaf8ecd8
Merge pull request #1743 from chriseth/evmasm
...
Move assembly related files to libevmasm and split parameters.
2015-05-05 16:06:17 +02:00
chriseth
ef26d96111
Fix for broken continue in for loop.
...
Fixes #1789 .
2015-05-04 10:54:50 +02:00
chriseth
99ea9a62fc
Move assembly related files to libevmasm and Params.h/.cpp to libevmcore.
2015-04-30 11:42:02 +02:00
chriseth
7a467bbf07
Merge remote-tracking branch 'ethereum/develop' into sol_overloadingFunctions
...
Conflicts:
libsolidity/AST.cpp
libsolidity/AST.h
2015-04-20 14:55:58 +02:00
chriseth
2d69b269e9
Merge remote-tracking branch 'ethereum/develop' into sol_overloadingFunctions
2015-04-17 16:24:23 +02:00
Lefteris Karapetsas
d997dc55d1
Allowing abstract contracts constructor to have no args
...
- If a constructor is part of an abstract contract we can omit its
arguments
- IF a contract is abstract make sure to not create and/or request
Assembly code about it since it's not compiled
2015-04-17 15:27:31 +02:00
chriseth
5216a9bc67
Some cleanup concerning byte arrays.
2015-04-15 18:06:41 +02:00
chriseth
0c69d5fdcd
Fixed function overloads.
...
Added tests, disallowed non-calling usage of non-unique function
references.
2015-04-15 17:40:50 +02:00
chriseth
895c08342c
Provide access to storage offsets via contract type.
2015-03-17 18:13:27 +01:00
chriseth
02595abf6a
Fetch and store packed values.
2015-03-16 18:07:14 +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
Liana Husikyan
d5cbb2acd2
added brackets for printing in/out
...
cleaned up
2015-03-10 12:02:48 +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
94c51caf89
Fixed: Some instructions did not have source locations.
2015-03-09 13:28:29 +01:00
Gav Wood
67ffc3db71
Solidity fixes.
2015-03-08 11:43:17 +01:00
chriseth
d8b156ecbb
Copying between calldata and storage.
2015-03-06 13:17:52 +01:00
Christian
b84cf62d6b
Index access for calldata arrays.
2015-03-05 13:19:59 +01:00
Christian
7112696993
Fixed arrays in ABI.
2015-03-03 12:58:48 +01:00
Liana Husikyan
e9238e15b4
Implemented passing arguments to the base constructor.
2015-03-02 14:28:08 +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
fb328b778c
Changes after rebase on top of Array Parsing
2015-02-24 17:31:06 +01:00
Lefteris Karapetsas
3e5c9a74b2
Reset CompilerContext's visited nodes at compile start
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
e7528c6af8
Stack height checks and fix.
2015-02-22 19:16:40 +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
a33fa270f6
Calldata byte arrays stored on the stack.
2015-02-16 19:35:53 +01:00
Christian
971cc9b5b9
Unpacking of dynamically sized arguments.
2015-02-16 19:25:27 +01:00
Christian
1f6e365136
Move code to loadFromMemory.
2015-02-16 19:25:27 +01:00
Christian
f7ba85e0ec
No write access to parameters of external functions.
2015-02-16 19:25:24 +01:00
Christian
adb434569c
Dynamic copy to memory.
2015-02-12 11:33:10 +01:00
Lefteris Karapetsas
6f621f8486
Changing Solidity Code to use CamelCase enum values
2015-02-09 14:00:12 +01:00
Lefteris Karapetsas
82bcb7e33a
Code generation for mapping state variable accessor
...
- Work in progress
2015-02-01 02:41:14 +01:00
Christian
cfb55901cc
Fallback functions.
2015-01-29 22:50:20 +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
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
3ec6c0b1cb
All interface functions are external.
2015-01-28 21:46:16 +01:00
Lefteris Karapetsas
b95048768d
Solidity EntryLabel now uses a generic declaration
...
- Instead of a FunctionDefinition
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