Commit Graph

361 Commits

Author SHA1 Message Date
chriseth
80ce3ca66f Move ABI encoder into its own function. 2017-09-15 20:46:32 +01:00
Alex Beregszaszi
7dd372ce5c Merge pull request #2904 from ethereum/viewPure5
Enforce view with error for experimental 0.5.0.
2017-09-14 18:13:56 +01:00
chriseth
24fd67b7db Enforce view with error for experimental 0.5.0. 2017-09-14 17:53:43 +02:00
Alex Beregszaszi
5b5367dc12 Warn if no visibility is specified on contract functions. 2017-09-14 15:58:04 +01:00
Alex Beregszaszi
06c2ddfd50 Add experimental feature 'v0.5.0' 2017-09-13 19:22:03 +01:00
Alex Beregszaszi
5c9dbd5083 Merge pull request #2473 from ethereum/functiontype-sig
Add .selector member on function types
2017-09-13 17:35:48 +01:00
chriseth
3f3bcc4f8a Merge pull request #2848 from ethereum/checkViewPure
Enforce view and pure.
2017-09-13 18:29:13 +02:00
chriseth
172704a58f Changelog entry. 2017-09-13 18:28:36 +02:00
Alex Beregszaszi
fd1f8ab38b Rename .sig to .selector on function types 2017-09-13 11:40:57 +01:00
Alex Beregszaszi
58f7a27ee0 Add sig member on function type 2017-09-13 11:40:57 +01:00
Alex Beregszaszi
0259459b21 Limit each duplicate declaration error to 32 references 2017-09-12 21:37:06 +01:00
Suman
10d290cb9b Display helpful warning for unused function arguments/return parameters 2017-09-12 15:35:03 +01:00
Alex Beregszaszi
a52e0de67c Do not show the same error multiple times for events 2017-09-12 00:03:35 +01:00
Alex Beregszaszi
0e11e5af10 Include all overloaded events in ABI 2017-08-28 20:07:43 +01:00
chriseth
122e65f8f4 Crash fix, parseTypeName can return null. 2017-08-28 15:13:02 +02:00
Alex Beregszaszi
f6dba97fe1 Warn on using literals in tight packing 2017-08-25 14:16:50 +01:00
Alex Beregszaszi
70e89a5dac Introduce JumpdestRemover optimisation step 2017-08-25 10:42:36 +01:00
chriseth
8e37f56bad Set version to 0.4.17 2017-08-24 22:41:41 +02:00
chriseth
29ba351a73 Describe experimental features. 2017-08-24 18:37:52 +02:00
chriseth
0878eaad46 Prepare 0.4.16 release. 2017-08-24 18:31:37 +02:00
Alex Beregszaszi
deeac7e2e0 Rename statemutability to stateMutability in ABI/AST 2017-08-24 15:23:00 +01:00
Alex Beregszaszi
e9a9a07d94 Add ABI test for pure function 2017-08-24 13:46:18 +01:00
Alex Beregszaszi
5668377c72 Introduce pure specifier on functions 2017-08-24 13:46:18 +01:00
chriseth
8af6f193bc Merge pull request #2770 from ethereum/recursionInAsm
Also prevent too much recursion in the assembly parser.
2017-08-24 11:14:01 +02:00
chriseth
8853183d06 Changelog entry. 2017-08-23 17:37:35 +02:00
Alex Beregszaszi
efe4d68a7b Introduce view (and keep constant as an alias) 2017-08-22 18:24:22 +01:00
chriseth
692e4c57e8 Check recursion depth in assembly parser. 2017-08-22 12:44:22 +02:00
Alex Beregszaszi
b25f0c52ac Reject the creation of interface with the new statement 2017-08-21 23:02:18 +01:00
chriseth
ec82706396 Fix crash related to `using for` without a library. 2017-08-21 16:57:37 +02:00
chriseth
01b4bba0ed Merge branch 'develop' into library-constructor 2017-08-21 16:34:59 +02:00
chriseth
2c5985de06 Be more strict about number literals in assembly. 2017-08-21 13:31:28 +02:00
Alex Beregszaszi
fe25bcf350 Library cannot have constructors 2017-08-21 11:03:55 +01:00
chriseth
3d595d4b14 Warn about shift of literals. 2017-08-16 13:54:28 +02:00
Alex Beregszaszi
12f3257e7d Add statemutability field to the ABI 2017-08-15 11:35:50 +01:00
chriseth
32e43477c3 Prevent too deep recursion in parser. 2017-08-14 22:19:15 +02:00
chriseth
4d9790b6d5 Merge pull request #2703 from ethereum/warnAboutLargeStorageArrays
Warn about large storage structures.
2017-08-14 11:37:01 +02:00
Federico Bond
a5ceaac8df Improve override changes signature error message 2017-08-11 22:45:25 +01:00
chriseth
da3ac86403 Warn about large storage structures. 2017-08-11 20:57:57 +02:00
Federico Bond
a8c047f48d Enforce commas in tuple syntax 2017-08-11 17:28:48 +01:00
Alex Beregszaszi
4d82d4f57a Store experimental flag in metadata CBOR 2017-08-11 16:38:43 +01:00
Alex Beregszaszi
efd45f64a5 Show previous visibility specifier in parser error 2017-08-09 14:30:17 +01:00
chriseth
df41793466 Set version to 0.4.16. 2017-08-09 11:40:46 +02:00
chriseth
3aef36b1cf Update changelog. 2017-08-08 15:56:52 +02:00
Alex Beregszaszi
8df89c5d5b Disable unimplemented library functions instead 2017-08-08 12:42:10 +01:00
Alex Beregszaszi
1ada48f61e Raise error when using unimplemented internal library functions. 2017-08-08 11:58:00 +01:00
Alex Beregszaszi
bb0eb57c2f Constructors must be implemented if declared. 2017-08-04 20:38:45 +01:00
Alex Beregszaszi
a372941a44 Merge pull request #2687 from ethereum/show-unimplemented-funcs
Show unimplemented function if trying to instantiate an abstract class
2017-08-04 19:46:09 +01:00
Alex Beregszaszi
32acadf43d Do not mark overloaded functions as shadowing 2017-08-04 19:06:23 +02:00
Alex Beregszaszi
494dea262e Show unimplemented function if trying to instantiate an abstract class 2017-08-04 14:03:37 +01:00
chriseth
38e9505a83 Merge pull request #2673 from ethereum/builtin-gas
Disallow gas modifier on sha256/ripemd160/ecrecover
2017-08-04 14:43:15 +02:00
Alex Beregszaszi
b7642dc8a7 Disallow gas modifier on sha255/ripemd160/ecrecover 2017-08-01 20:55:01 +01:00
Alex Beregszaszi
b3061225bc .delegatecall() should always return a boolean of execution status 2017-08-01 20:50:03 +01:00
Alex Beregszaszi
39dba0efe8 Provide new account gas for low-level callcode/delegatecall 2017-08-01 14:00:17 +01:00
chriseth
3d7fdba546 Increment version to 0.4.15 2017-07-31 17:57:21 +02:00
chriseth
91e7fcaa59 Release date for version 0.4.14. 2017-07-31 12:05:59 +02:00
chriseth
2cdb5c9e83 Changelog and bug list entry. 2017-07-28 15:33:00 +02:00
Alex Beregszaszi
7d37eba4ba Remove the need of jumping out of the fallback 2017-07-27 21:52:58 +01:00
Alex Beregszaszi
53f747b7de Merge pull request #2635 from ethereum/fixCrashOnAssignmentToNonLValue
Fix crash on assignment to non-LValue
2017-07-27 13:59:22 +01:00
chriseth
d78f94f0dd Changelog entry. 2017-07-27 14:00:59 +02:00
chriseth
7c7c2baa82 Re-allow multiple modifiers per function. 2017-07-27 13:45:39 +02:00
chriseth
1298a8df14 Merge pull request #2566 from ethereum/metadata-only-relevant
Metadata: only include relevant files in the source list
2017-07-27 11:07:15 +02:00
Alex Beregszaszi
e0dc74b895 Warn about shadowing variables. 2017-07-25 16:32:37 +02:00
Alex Beregszaszi
e506129aee Add test and changelog 2017-07-19 07:19:01 -07:00
Alex Beregszaszi
c617336587 Only include files usde in metadata 2017-07-19 14:56:40 +01:00
Alex Beregszaszi
644de755dc Mark modifiers as internal 2017-07-18 23:00:17 +01:00
Alex Beregszaszi
e9226225d7 Properly export the license() method in Emscripten 2017-07-18 15:31:49 +01:00
Alex Beregszaszi
033fc0cb1a Include types in explicit conversion error message 2017-07-13 23:09:01 +02:00
Alex Beregszaszi
cb4875a28b Issue error properly for oversized arrays for calldata 2017-07-13 22:33:46 +02:00
Alex Beregszaszi
b65601bb3d Add changelog and documentation 2017-07-13 15:18:40 +02:00
Federico Bond
f20b150f38 Add type error when attempting value transfer to a non-payable contract 2017-07-12 23:57:53 -03:00
Alex Beregszaszi
db7ad508f8 Issue proper warning trying to access calldata variables in inline assembly 2017-07-12 10:48:44 +02:00
chriseth
883666d2c0 Fix invalid "explicit storage keyword" warning for reference members of structs. 2017-07-10 18:30:41 +02:00
chriseth
a0f59532b2 Update changelog. 2017-07-06 14:13:00 +02:00
chriseth
f09c55f89c Release date for 0.4.13 2017-07-06 11:06:13 +02:00
chriseth
0400e61e28 Deprecate throw. 2017-07-05 21:15:00 +02:00
chriseth
4bde6fa961 Merge pull request #2528 from ethereum/warnNoStorage
Warn if local storage reference variable does not use "storage" explicitly.
2017-07-05 21:14:06 +02:00
chriseth
2dd9070a4f Merge pull request #2527 from ethereum/onlyASTIfAnalysisSuccessful
Only output AST if the analysis was successful.
2017-07-05 20:40:25 +02:00
chriseth
dd34277ca6 Warn if local storage reference variable does not use "storage" explicitly. 2017-07-05 19:38:00 +02:00
chriseth
75f7f7e1e6 Do not omit error type. 2017-07-05 18:28:14 +02:00
chriseth
da48bcc51e Only output AST if the analysis was successful. 2017-07-05 18:27:32 +02:00
chriseth
2432808793 Changelog entry. 2017-07-04 19:33:55 +02:00
chriseth
bb503666ea Bump version. 2017-07-03 14:28:21 +02:00
chriseth
3b80d4e3c0 Set release date. 2017-07-03 13:45:30 +02:00
Alex Beregszaszi
540ff30f2c Add component to the changelog entries 2017-07-03 12:34:13 +01:00
Alex Beregszaszi
bfb9d09a65 Remove extra UTF-8 entry 2017-07-03 12:31:56 +01:00
Alex Beregszaszi
c6e85b7839 Add instruction shadows solidity variables 2017-07-03 12:31:19 +01:00
Alex Beregszaszi
0c457835ba Reorder changelog for alphabetical order 2017-07-03 12:31:14 +01:00
chriseth
0fa2feb341 Changelog entry. 2017-06-30 21:29:00 +01:00
Alex Beregszaszi
32d6c1c316 MLOAD has side-effects, treat it like that in the optimiser 2017-06-30 21:27:39 +01:00
Alex Beregszaszi
d4fecc7b11 Warn on JUMP/JUMPI in inline assembly 2017-06-30 20:47:14 +01:00
chriseth
044058276e Warn about callcode. 2017-06-30 16:37:32 +02:00
chriseth
168f64f4cb Fix negative stack size checks. 2017-06-28 16:55:49 +01:00
chriseth
a895f2dccb Changelog entry. 2017-06-28 11:41:03 +02:00
chriseth
e715dd0b7e Merge branch 'develop' into utf8-strict-parser 2017-06-27 14:37:45 +02:00
Alex Beregszaszi
bc31d4969c Merge pull request #2437 from ethereum/warnDoubleCopyStorage
Warn about copies in storage that might overwrite unexpectedly.
2017-06-27 10:24:03 +01:00
chriseth
d0b6de0b34 Warn about copies in storage that might overwrite unexpectedly. 2017-06-26 16:31:36 +02:00
chriseth
f47e6e90fb Disallow comparisons between some types. 2017-06-26 16:30:36 +02:00
Alex Beregszaszi
569e0c53f2 Implement strict UTF-8 validation 2017-06-26 12:58:21 +01:00
Alex Beregszaszi
751ba701bc Merge pull request #2450 from ethereum/addressstring
Fix for strings treated as addresses.
2017-06-26 12:18:33 +01:00
Alex Beregszaszi
a0b0df2d98 Merge pull request #2460 from ethereum/disallowMultiModifier
Disallow invoking the same modifier multiple times.
2017-06-26 11:51:12 +01:00