Commit Graph

135 Commits

Author SHA1 Message Date
chriseth
109b4eafb9 Some fixes for calldata arrays. 2015-06-26 20:27:56 +02:00
chriseth
37e7f1f10d Do not copy reference types to memory in-place. 2015-06-26 19:15:00 +02:00
chriseth
2e5c52bfab Merge pull request #2276 from chriseth/sol_memoryArrays7
Copy routines for non-byte arrays.
2015-06-25 18:52:19 +02:00
Gav Wood
0bcfad54f0 Merge branch 'develop' of github.com:ethereum/cpp-ethereum into develop 2015-06-24 20:15:29 +02:00
chriseth
e5ae5955b9 Initialisation of memory types. 2015-06-24 19:34:43 +02:00
chriseth
fd1a01bbce Decoding for constructor. 2015-06-22 20:55:46 +02:00
chriseth
1ff8dbebab Accessors for strings. 2015-06-17 14:25:00 +02:00
chriseth
8b402b5879 Copying between memory and memory.
Also fixed some encoding and padding issues with older copying code.
2015-06-15 19:47:44 +02:00
chriseth
258b1a74e2 Distinction between storage pointer and storage ref and type checking for conversion between storage and memory. 2015-06-15 14:40:41 +02:00
chriseth
d60ef3f2d7 Optimize RETURN x 0 to STOP. 2015-06-12 11:31:03 +02:00
chriseth
c3caa2ce25 Added missing source locations for new memory management code. 2015-06-10 17:51:24 +02:00
chriseth
35ec81971a Dynamic memory. 2015-06-09 00:27:56 +02:00
chriseth
c2a9419e49 Improved "Stack too deep" error message.
Closes #2080.
2015-06-07 12:51:15 +02:00
chriseth
b51ef4a357 Merge pull request #2096 from chriseth/sol_constantFallback
Fallback takes constant amount of gas, and send no gas with send.
2015-06-06 00:45:47 +02:00
chriseth
6667c67364 Fallback takes constant amount of gas, and send to gas with send. 2015-06-05 17:37:16 +02:00
chriseth
9efd5374ed Compute constants 2015-06-05 17:34:26 +02:00
Liana Husikyan
3d0807a9fa fixed assertion 2015-06-04 11:47:19 +02:00
Liana Husikyan
d639c225f2 corrected the calculation of gas for send 2015-06-04 11:47:19 +02:00
chriseth
b7e5c1d9d2 Do not put duplicate labels for accessor functions. 2015-06-01 18:30:05 +02:00
Liana Husikyan
ccb194fd39 removed exception when function is not found 2015-06-01 13:06:12 +02:00
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