Commit Graph

6447 Commits

Author SHA1 Message Date
Yoichi Hirai
c9f9b2ab4d codegen: add a compilation mode and a runtime context to CompilerContext 2016-11-16 14:37:18 +01:00
chriseth
5011d6339a Added function types to the grammar. 2016-11-16 14:37:18 +01:00
chriseth
0e5507c78c Updates to the documentation. 2016-11-16 14:37:18 +01:00
chriseth
47794c1da4 Implement uninitialized storage functions. 2016-11-16 14:37:18 +01:00
chriseth
b6992d740a Tests for uninitialized storage functions. 2016-11-16 14:37:18 +01:00
Yoichi Hirai
3158a8ea7b test: add a test for storing an internal function in the constructor and then using the stored function in runtime 2016-11-16 14:37:18 +01:00
chriseth
cc847df3c2 Bugfix in code generator. 2016-11-16 14:37:18 +01:00
chriseth
502cc319d7 Documentation examples. 2016-11-16 14:37:18 +01:00
chriseth
87b148494b Tests. 2016-11-16 14:37:18 +01:00
chriseth
ff3553a348 Change alignment. 2016-11-16 14:37:18 +01:00
chriseth
679ea2820f Part of the documentation. 2016-11-16 14:37:18 +01:00
chriseth
62492b67e7 Changelog entry and small fixes. 2016-11-16 14:37:18 +01:00
Yoichi Hirai
6172590b87 Add a test around storing functions in an array 2016-11-16 14:37:17 +01:00
Yoichi Hirai
708b7b35ad Add a parser test for arrays containing functions 2016-11-16 14:37:17 +01:00
Yoichi Hirai
ab3d1b024d Add tests around calling functions returning functions returning functions 2016-11-16 14:37:17 +01:00
chriseth
95d7555e3c External functions in storage. 2016-11-16 14:37:17 +01:00
chriseth
6f19559de0 Fix some type checks and tests for internal / external function parameters. 2016-11-16 14:37:17 +01:00
chriseth
97a3588701 Function type state variables. 2016-11-16 14:37:17 +01:00
chriseth
dd173f83e3 Code generator for function types. 2016-11-16 14:37:17 +01:00
chriseth
cc8583ec7d Function types. 2016-11-16 14:37:17 +01:00
chriseth
c811691861 Merge pull request #1379 from ethereum/swarmHashCorrection
Correct implementation of swarm hash.
2016-11-16 12:25:20 +01:00
chriseth
192a81892d Merge pull request #1377 from ethereum/keep-json-values
Keep internal results in JSON
2016-11-15 19:16:07 +01:00
Alex Beregszaszi
227f6aab4f Change natspec/abi JSON expected message to be the same 2016-11-15 17:58:55 +00:00
Alex Beregszaszi
81c50143f2 Move JSON helpers to libdevcore/json 2016-11-15 17:38:18 +00:00
Alex Beregszaszi
9205662de9 Update tests to use JSON 2016-11-15 17:20:30 +00:00
Alex Beregszaszi
9719cf38e6 Move InterfaceHandler from string to JSON 2016-11-15 15:55:25 +00:00
chriseth
518fe2aab7 Correct implementation of swarm hash. 2016-11-15 14:55:51 +01:00
Alex Beregszaszi
0072160d77 Merge pull request #1327 from ethereum/inline-assembly-errortag
ErrorTag in inline assembly
2016-11-15 11:17:33 +00:00
chriseth
634b0998ba Merge pull request #1369 from ethereum/callcosts
Report infinite gas for calls.
2016-11-15 11:32:42 +01:00
Alex Beregszaszi
ae8403ed08 Rename ErrorTag to invalidJumpLabel in inline assembly 2016-11-15 10:30:33 +00:00
Alex Beregszaszi
702ab4cb4f Document inline assembly ErrorTag 2016-11-15 10:30:33 +00:00
Alex Beregszaszi
bee926bf3f Add tests for the ErrorTag 2016-11-15 10:30:33 +00:00
Alex Beregszaszi
91367234d9 Support ErrorTag as a jump label in inline assembly 2016-11-15 10:30:12 +00:00
chriseth
1208279914 Merge pull request #1366 from ethereum/swarmhash
Swarm hash.
2016-11-15 11:28:23 +01:00
chriseth
028ab1fbfb Merge pull request #1375 from ethereum/inline-assembly-stack-height
Fix inline assembly stack warnings when using variables
2016-11-15 11:25:12 +01:00
chriseth
dce80911e1 Add tests 2016-11-15 09:16:33 +01:00
chriseth
c1b1efafdb Merge pull request #760 from axic/fix/omit-newline-in-interface
Do not include a trailing new line in the ABI JSON output
2016-11-15 09:08:32 +01:00
Alex Beregszaszi
dad33f80dd Fix inline assembly stack warnings when using variables 2016-11-15 02:53:19 +00:00
Alex Beregszaszi
ac46834d7d Do not include a trailing new line in the ABI JSON output 2016-11-15 02:20:38 +00:00
Alex Beregszaszi
42617cb8dd Merge pull request #1317 from ethereum/timelock
Compile all contracts in the std directory
2016-11-14 23:39:42 +00:00
chriseth
bf5b0dc2d2 Keep old code. 2016-11-14 23:28:26 +01:00
chriseth
2ecf348a9d Move swarmHash to its own file. 2016-11-14 23:25:12 +01:00
chriseth
bdbc4fc82d Merge pull request #1373 from ethereum/debug-compiler-flag
Compile with -Og in debug mode (by @chfast)
2016-11-14 23:19:59 +01:00
chriseth
8944b092f8 Multi-level swarm hash. 2016-11-14 23:14:10 +01:00
chriseth
2f83a45577 Swarm hash. 2016-11-14 23:14:10 +01:00
chriseth
3dbf2830ca Update tests.sh 2016-11-14 23:04:43 +01:00
Alex Beregszaszi
35def4735e Compile with -Og in debug mode (by @chfast) 2016-11-14 21:43:28 +00:00
Rhett Aultman
58e75c7a48 Unimplemented features moved to their own exception (#1361)
Unimplemented features moved to their own exception

InternalCompilerError is an exception that really should be reserved for
actual internal errors of the compiler.  Unimplemented features can now
use either solUnimplemented( ) or, if it should be conditional, then
solUnimplementedAssert( ).

* Revert some unimplemented exceptions, add handlers

The jsonCompiler and CommandLineInterface needed handlers for the
new UnimplementedFeatureException, and some cases I had moved on to
the new exception were better treated as real internal compiler
errors.

* Standardize on "Unimplemented feature" message
2016-11-14 20:41:58 +00:00
chriseth
3f74c3c236 Merge pull request #1371 from ethereum/invalid_enum_as_external_arg
Throw exception on invalid enum value as external call argument
2016-11-14 21:38:02 +01:00
Yoichi Hirai
e6247195dd
test: add a testcase about using an invalid enum value as an external call argument 2016-11-14 20:46:30 +01:00