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
chriseth
c328ab411b
Merge pull request #2442 from ethereum/remove-why3
...
Remove Why3 generator
2017-06-26 09:20:23 +02:00
Alex Beregszaszi
555dc4f46f
Remove Why3 generator
2017-06-25 12:26:16 +01:00
chriseth
5a75581f66
Disallow invoking the same modifier multiple times.
2017-06-23 20:12:22 +02:00
chriseth
831ed08387
Change invalid opcode to revert for input validation.
2017-06-23 19:29:11 +02:00
chriseth
633b6bd61a
Merge pull request #2213 from ethereum/jsoncompiler
...
Rewrite jsonCompiler using StandardCompiler
2017-06-23 17:41:14 +02:00
Federico Bond
0fb1621a98
Fix address literals not being treated as compile-time constants
...
The early return implemented for address literals in TypeChecker was
preventing the isPure annotation from getting applied. Closes #2441
2017-06-23 11:19:57 +02:00
Alex Beregszaszi
79ed529b3f
Merge pull request #2452 from ethereum/fixPassingEmptyString
...
Fix passing empty string
2017-06-22 22:33:06 +01:00
Alex Beregszaszi
08a5d144ac
Merge pull request #2426 from ethereum/miniMoustache
...
Whiskers template system
2017-06-22 22:17:26 +01:00
chriseth
83ea7793d9
Fix ABI encoding of empty string literal.
2017-06-22 17:55:06 +02:00
chriseth
e58cff3f37
Changelog entry for Whiskers.
2017-06-22 16:56:57 +02:00
chriseth
c33d818a68
Changelog entry.
2017-06-22 16:48:44 +02:00
Alex Beregszaszi
ea6cf619fd
Rewrite jsonCompiler using StandardCompiler
2017-06-22 13:01:46 +01:00
Federico Bond
0f8ad1d68f
Fix segmentation fault with constant function parameters
2017-06-21 22:46:27 -03:00
chriseth
0c75afb2c1
Merge pull request #2225 from ethereum/julia-for
...
Implement for statement in assembly parser / printer / code generator
2017-06-19 11:53:22 +02:00
chriseth
c1f5016e16
Changelog entry.
2017-06-16 16:41:41 +02:00
chriseth
7a09860ec1
Mention functions in changelog.
2017-06-16 11:29:41 +01:00
chriseth
71d39755fe
Changelog and documentation.
2017-06-16 10:56:21 +01:00
chriseth
66881bd675
Merge branch 'develop' into asm-aux
2017-06-15 08:39:02 +02:00
Alex Beregszaszi
42b61171d9
Merge pull request #2192 from winsvega/develop
...
add STATICCALL instruction
2017-06-14 21:03:32 +01:00
Alex Beregszaszi
585b3ea3e3
Print auxiliary data in the assembly
2017-06-14 20:14:15 +01:00
chriseth
f008ddf836
Merge pull request #2381 from ethereum/fixcrash
...
Fix a crash about a non-callable expression.
2017-06-14 18:35:38 +02:00
chriseth
fd5bf16101
Merge pull request #2384 from ethereum/parseFunctionalInstructions
...
Enforce function arguments when parsing functional instructions.
2017-06-14 18:35:16 +02:00
Dimitry
c20cdd0a05
add new opcode instructions to the parser
...
STATICCALL 0xfa 6 inputs (gas address mem1 mem2 mem3 mem4)
2017-06-14 18:18:12 +02:00
Alex Beregszaszi
bec30051c5
Introduce CREATE2 in the assembler
2017-06-14 16:00:39 +02:00
chriseth
1b1f35762e
Enforce function arguments when parsing functional instructions.
2017-06-14 14:51:47 +02:00
chriseth
07cc84fade
Fix a crash about a non-callable expression.
2017-06-14 14:26:20 +02:00
Yoichi Hirai
55737213d1
Add a changelog entry
2017-06-13 16:57:07 +02:00
Alex Beregszaszi
59d3a9d169
Add changelog entry for keccak256
2017-05-30 12:33:04 +01:00
Alex Beregszaszi
56fe3a6ab9
Better error messages during parsing functional instructions
2017-05-24 13:35:52 +01:00
chriseth
74d2e7311a
Merge pull request #2265 from roadriverrail/inline_asm_unused_warning
...
Analyze InlineAssembly for variable use
2017-05-22 16:34:29 +02:00
djudjuu
e82df073d1
minor fixes and changelog update
2017-05-22 12:25:50 +02:00
Rhett Aultman
621c3fa22f
Analyze InlineAssembly for variable use
...
The unused variable checker in StaticAnalyzer did not conssider
InlineAssembly objects. This commit introduces that missing feature.
2017-05-21 15:23:05 -07:00
chriseth
2d67f09bc5
Bump version.
2017-05-04 11:57:34 +02:00
chriseth
9df7a6fa29
Update permalink for optimizer bug and fix release date.
2017-05-03 12:39:54 +02:00
chriseth
dbbd8d60ef
Finalize changelog.
2017-05-03 12:24:22 +02:00
chriseth
00933b99cc
Merge pull request #2206 from ethereum/fixoptimizer
...
Constant optimizer fix
2017-05-03 11:54:11 +02:00
Rhett Aultman
a40c8cfb68
Warn on unused local variables
...
Analyze functions for all local variables, parameters, and named
return variables which are never used in the function, and issue
a warning.
2017-05-03 11:26:21 +02:00
chriseth
5c4f3f6d0b
Fix number representation bug.
2017-05-02 12:22:11 +02:00
Rhett Aultman
e544698ad3
Deprecate use of unary '+'
...
The unary '+' serves no meaningful purpose in Solidity and it makes it
possible to produce typos with dagerous implications (e.g. 'a =+5 '),
so we are deprecating it. The SyntaxChecker currently issues warnings
on the unary '+' but will still compile it for now.
2017-04-28 17:43:19 -07:00
chriseth
2c1fb46bc3
Merge pull request #1711 from ethereum/asmfunctions
...
Assembly: Analysis stage for functions.
2017-04-26 17:47:48 +02:00
Alex Beregszaszi
2002447b10
Mention requirement changes in changelog
2017-04-26 16:47:01 +01:00
chriseth
efa9c76267
Update Changelog.md
2017-04-26 12:48:19 +02:00
chriseth
e64a03d86b
Changelog entry.
2017-04-25 16:49:18 +02:00
Yoichi Hirai
a1da03328a
Changelog: add a point about fee schedule update
2017-04-25 16:47:43 +02:00
chriseth
9bc9fe6af7
Warn about side-effect free statements.
2017-04-21 11:36:38 +02:00
Alex Beregszaszi
5732ffdb74
Update changelog
2017-04-20 19:38:00 +01:00
Alex Beregszaszi
bf074f3f41
Fix source index allocation in CompilerStack. Depending on compiler(optimisations) this could be off-by-one.
2017-04-20 19:20:14 +01:00
Alex Beregszaszi
8bf842050e
Support --allow-paths in the CLI
2017-04-20 15:39:30 +01:00
chriseth
4d715e9055
Implement missing assembly output functions and do not use PushString for assembly.
2017-04-11 19:54:44 +02:00
chriseth
d8aacd5a40
Changelog entry.
2017-03-21 18:13:36 +01:00
Alex Beregszaszi
4540daaf47
Changelog
2017-03-17 16:27:04 +00:00
chriseth
a500581ab0
Bump version to 0.4.11.
2017-03-15 18:53:12 +01:00
chriseth
4d2f73c00d
Finalize changelog.
2017-03-15 17:04:16 +01:00
chriseth
0c8a766146
Merge pull request #1698 from ethereum/exp-notation
...
Fix scientific notation in number literals
2017-03-15 14:55:45 +01:00
Alex Beregszaszi
924a8fff6b
Fix exponentional notation in number literals
2017-03-15 13:06:24 +00:00
Yoichi Hirai
d134fda0c0
Merge pull request #1729 from ethereum/constantvariables
...
Only allow pure expressions for constant state variables.
2017-03-15 10:03:35 +01:00
chriseth
9f328ff749
Turn non-constant constants error into warning.
2017-03-14 19:25:16 +01:00
Yoichi Hirai
64e00e5371
Merge pull request #1767 from ethereum/longlibnames
...
Do not crash on long linker commandline argument.
2017-03-14 18:31:45 +01:00
chriseth
47cd8964b8
Require and Assert.
2017-03-14 14:21:33 +01:00
chriseth
14196f2621
Allow long library names.
2017-03-14 11:58:43 +01:00
Yoichi Hirai
9aab3b8639
Merge pull request #1768 from ethereum/abortiffileexists
...
Do not overwrite files unless forced.
2017-03-13 16:37:55 +01:00
chriseth
fdc41f3b07
Changelog entry.
2017-03-13 13:30:23 +01:00
Yoichi Hirai
ef8b56a058
Merge pull request #1751 from ethereum/warnLiteralExpBase
...
Warn if base of exponentiation operation is a literal.
2017-03-10 19:25:47 +01:00
chriseth
31a5e5bfef
Do not overwrite files unless forced.
2017-03-10 19:23:43 +01:00
Yoichi Hirai
e364909e06
Merge pull request #1747 from ethereum/fixICEInternalConstructor
...
Move privateness of constructor into AST itself.
2017-03-08 17:49:14 +01:00
chriseth
c7d61a2c6a
Changelog entry.
2017-03-08 12:42:24 +01:00
Yoichi Hirai
78f7dd2344
Merge pull request #1750 from ethereum/asmoctal
...
Disallow octal numbers in parser.
2017-03-08 12:24:22 +01:00
Yoichi Hirai
85411f4f67
Merge pull request #1736 from ethereum/boundoptimizer
...
Add upper bound for computing constants.
2017-03-08 12:11:16 +01:00
chriseth
1324ebc4bf
Warn about literal constant base in exponentiation.
2017-03-07 13:44:11 +01:00
chriseth
d3ab59dff6
Changelog entry.
2017-03-07 12:35:42 +01:00
chriseth
efdfacaaec
Changelog entry.
2017-03-06 15:05:09 +01:00
chriseth
a3cb69b14b
Changelog entry.
2017-03-06 14:16:06 +01:00
chriseth
244b45e1ff
Changelog entry.
2017-03-03 17:12:07 +01:00
chriseth
6a9df162fd
Changelog entry.
2017-03-02 14:34:06 +01:00
chriseth
b832b70e1b
Changelog entry.
2017-03-01 16:09:19 +01:00
chriseth
d2c79bf8e9
Merge pull request #1700 from ethereum/fixNoMobile
...
Some checks for the existence of mobile type.
2017-02-24 15:50:45 +01:00
chriseth
673268a6f8
Merge pull request #1651 from ethereum/transfer-method
...
Add address.transfer(value)
2017-02-24 15:42:52 +01:00
chriseth
92bf5154fd
Merge branch 'develop' into fixNoMobile
2017-02-24 10:39:55 +01:00
chriseth
de1317331f
Changelog entry.
2017-02-24 08:25:01 +01:00
Alex Beregszaszi
4264625c69
Implement address.transfer()
2017-02-24 00:17:45 +00:00
chriseth
c0961664f9
Deposit one stack item for non-value types in inline assembly type checking.
2017-02-20 12:33:22 +01:00
chriseth
c3c3cccbec
Fix early exist for fatal errors.
2017-02-16 14:57:00 +01:00
chriseth
dcc16c81e2
Some checks for the existence of mobile type.
2017-02-16 11:46:27 +01:00
Alex Beregszaszi
1fcad8b4ab
Document revert()
2017-02-10 22:41:09 +00:00
Alex Beregszaszi
fd7ffedead
Use different wording for assert
2017-02-10 21:41:40 +00:00
Alex Beregszaszi
f8461e9e31
Implement assert as a global function
2017-02-10 13:29:17 +00:00
Alex Beregszaszi
a5d0fd9c8a
Do not create directories . and ..
2017-02-06 14:27:54 +00:00
Alex Beregszaszi
46412473b6
Always escape filenames in solc
2017-02-05 19:19:29 +00:00
Alex Beregszaszi
697db80b48
Disallow arrays with negative length
2017-02-02 00:24:45 +00:00
Alex Beregszaszi
bab7f8f455
Add changelog for function types to address conversion
2017-02-01 12:25:02 +00:00
chriseth
ffe4ce0891
Version update
2017-01-31 19:37:55 +01:00
chriseth
7b18c9df1d
Release date for 0.4.9
2017-01-31 17:54:03 +01:00