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
Alex Beregszaszi
965dc72016
Mention in changelog that invalid as an opcode is valid inline assembly
2017-01-27 13:24:05 +00:00
chriseth
b2c35fb41a
Merge pull request #1598 from wuestholz/develop
...
Change translation of implicit throws
2017-01-27 14:10:22 +01:00
chriseth
636e480156
Merge pull request #1451 from LefterisJP/fix_build
...
Accept any kind of whitespace after natspec tags
2017-01-27 14:09:39 +01:00
chriseth
c08f659634
Changelog entry.
2017-01-27 14:09:19 +01:00
chriseth
bff8fc23e6
Changelog and review suggestions.
2017-01-27 10:18:53 +01:00
Alex Beregszaszi
102fd7ee5d
Merge pull request #1604 from ethereum/checksums
...
Warn about invalid checksums of addresses.
2017-01-26 14:42:34 +00:00
Alex Beregszaszi
4b321c653c
Add literal metadata sources to changelog
2017-01-26 13:26:04 +00:00
chriseth
8e318181e9
Rewording in changelog.
2017-01-25 17:24:25 +01:00
Alex Beregszaszi
900c56d996
Do not allow shadowing inline assembly instructions with variables
2017-01-25 11:28:09 +00:00
chriseth
1316bb7565
Warn about invalid checksums of addresses.
2017-01-24 23:37:48 +01:00
chriseth
1b87e08e04
Changelog entry.
2017-01-24 12:07:08 +01:00
chriseth
b52a60402d
Merge pull request #1245 from ethereum/1215
...
Allow multiple events of the same name
2017-01-24 11:52:21 +01:00
Yoichi Hirai
1f2bf7e004
Changelog: move an item upwards
2017-01-23 15:25:13 +01:00
Yoichi Hirai
4fd3641ce5
Changelog: add a point about allowing multiple events that share the same name
...
See #1215
2017-01-23 15:25:13 +01:00
chriseth
2536bdd6d0
Report source location on "stack too deep" errors.
2017-01-20 19:01:19 +01:00
chriseth
3fed790a56
Type identifiers.
2017-01-19 13:23:57 +01:00
chriseth
d3a391c136
Provide fallback for linking.
2017-01-18 17:41:36 +01:00
chriseth
005e190885
Merge pull request #1397 from roadriverrail/contract_collision
...
Error out when contracts collide on name
2017-01-18 14:28:00 +01:00
Alex Beregszaszi
350c7e7e2c
Store strict version number in metadata (exclude the platform)
2017-01-17 12:54:58 +00:00
chriseth
99eaadd2cd
Deterministic AST node identifiers.
2017-01-17 10:45:45 +01:00
Rhett Aultman
43dbf01e73
Update changelog
2017-01-16 12:32:58 -05:00
chriseth
10c2df8b33
Update version to 0.4.9.
2017-01-13 13:56:55 +01:00
chriseth
e22672b7c7
Update Changelog.md
2017-01-13 12:18:22 +01:00
chriseth
bde0b40634
Merge pull request #1479 from ethereum/function_variable_mixin
...
Disallow mixin of functions and attributes under the same name
2017-01-13 09:36:00 +01:00
chriseth
3cfa851f6f
Minor changes from review.
2017-01-12 17:53:06 +01:00
chriseth
a32def5c42
Changelog entry.
2017-01-12 17:52:50 +01:00
chriseth
74d74fb00b
Merge pull request #1548 from VoR0220/remappingBugFix
...
Remapping bug fix
2017-01-12 12:02:30 +01:00
Yoichi Hirai
e254a59bd2
Changelog: add a line about #1479
2017-01-11 18:28:11 +01:00
VoR0220
4585bfdce7
cleanup
...
Signed-off-by: VoR0220 <rj@erisindustries.com>
fixup
Signed-off-by: VoR0220 <rj@erisindustries.com>
2017-01-11 11:03:02 -06:00
VoR0220
e96c32a072
changelog entry
...
Signed-off-by: VoR0220 <rj@erisindustries.com>
2017-01-11 09:32:07 -06:00
chriseth
643182865b
Changelog entry about assembly output
2017-01-11 16:20:13 +01:00
Yoichi Hirai
779a01faa9
Changelog: document #1537
2017-01-06 16:21:16 +01:00
Yoichi Hirai
6a312233fc
ast, codegen: enable accessing events through contract names.
...
Fixes #1286
2017-01-02 17:59:20 +01:00
chriseth
7ce7d3e74c
Update develop version.
2016-12-15 14:03:31 +01:00
chriseth
11b9abfff3
Update changelog for release.
2016-12-15 12:15:09 +01:00
Yoichi Hirai
ff40338a34
Changelog: add entries for #1497 and #1503
2016-12-14 18:12:13 +01:00
Yoichi Hirai
18f8f29c0a
Merge pull request #1487 from ethereum/shift-ops
...
Shift operators
2016-12-14 16:31:27 +01:00
Alex Beregszaszi
b8b4f5e9f9
Support bitshifting in variables
2016-12-12 11:12:10 +01:00
chriseth
81d7e0233a
Changelog entry.
2016-12-11 17:58:22 +01:00
chriseth
d0542f0e36
Warn if msg.value is used in non-payable function.
2016-12-11 16:46:58 +01:00
chriseth
84443eb560
Merge pull request #1351 from ethereum/truncate_bit
...
Truncate a boolean from calldata into one bit
2016-12-08 16:15:35 +01:00
Alex Beregszaszi
86d54c02cd
Throw if calling the identity precompile (memoryCopy) failed
2016-12-02 13:18:39 +00:00
Alex Beregszaszi
35325ee7c3
Update metadata documentation
2016-12-01 16:03:59 +01:00
chriseth
36c6fe2b69
Changelog entry.
2016-12-01 16:03:59 +01:00
Yoichi Hirai
7959ee49be
docs: describe when and how overflown values are cleaned
2016-11-30 17:41:58 +01:00
Yoichi Hirai
03ccc6df70
codegen: truncate a boolean calldata down to one bit
2016-11-30 17:41:38 +01:00
chriseth
8a78b19516
Changelog.
2016-11-25 16:10:24 +01:00
Yoichi Hirai
df5d5edd1b
test: add a test about explicitly converting a string literal to string
2016-11-25 13:54:13 +01:00
Jonathan Brown
aa4340ca89
Mention when the bug was introduced.
2016-11-23 17:00:06 +07:00
chriseth
7fb7d5ae39
Optimizer: Clear state for JUMPDESTs.
2016-11-22 14:58:24 +01:00
chriseth
5bb050a739
Update changelog.
2016-11-21 11:18:04 +01:00
Alex Beregszaszi
819da2f0cd
Add changelog entry for payable constructor
2016-11-17 17:23:35 +00:00
chriseth
62492b67e7
Changelog entry and small fixes.
2016-11-16 14:37:18 +01:00
Alex Beregszaszi
ae8403ed08
Rename ErrorTag to invalidJumpLabel in inline assembly
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
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
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
Yoichi Hirai
20c2ca3992
ast, codegen: disallow conversion between different enum types
2016-11-11 17:48:03 +01:00
Yoichi Hirai
eee629652e
parsing: ban empty enum definition.
2016-11-11 17:48:03 +01:00
Yoichi Hirai
98dcd883e4
codegen: check the value range after converting something to an enum element
2016-11-11 17:48:03 +01:00
Yoichi Hirai
41170d5507
Changelog: add a point about #1293
2016-11-11 15:52:15 +01:00
Rhett Aultman
4524ad0870
Add support for do/while loops
...
This commit adds support for a standard do <statement> while <expr>;
form of statement. While loops were already being supported; supporting
a do/while loop mostly involves reusing code from while loops but putting
the conditional checking last.
2016-11-10 07:07:25 -08:00
chriseth
4f9741c0cf
Version update in develop.
2016-11-01 09:58:02 +01:00
chriseth
979d18f19c
Update Changelog.md
2016-10-31 18:37:08 +01:00
chriseth
1427c82c77
Updated changelog.
2016-10-31 17:10:51 +01:00
Yoichi Hirai
3ca5900b8c
ast: ban signed EXP, fixing #1246
2016-10-25 16:49:10 +02:00
chriseth
5ddb92b8cc
Version bump for develop.
2016-10-25 15:39:38 +02:00
chriseth
0cd2abb8c0
Update changelog for release.
2016-10-25 15:30:38 +02:00
chriseth
e00a4b47c0
Merge pull request #1264 from ethereum/988
...
State variable under contract's name
2016-10-25 12:50:24 +02:00
chriseth
d1708eded2
Re-added accidentally deleted changelog entry
2016-10-24 18:30:31 +02:00
chriseth
f25aa0c68b
More checks for missing mobile type.
2016-10-24 16:45:25 +02:00
Yoichi Hirai
44305aeaf8
Changelog: add a point about fixing #988
2016-10-24 16:34:52 +02:00
Yoichi Hirai
abf393126b
Changelog: add a comment about fixing #1116
2016-10-24 15:30:32 +02:00
chriseth
57ee387755
Changelog entry.
2016-10-24 14:33:44 +02:00
chriseth
cb1fcaf6f6
Merge pull request #1240 from ethereum/1151
...
ast: super contract type does not contain native members
2016-10-24 11:45:54 +02:00
chriseth
ba42c6e447
Optimizer: generate code starting with empty state
2016-10-21 18:03:57 +02:00
Yoichi Hirai
f30f421e1c
Changelog: add a point about #1243
2016-10-21 13:01:45 +02:00
Alex Beregszaszi
d50204d808
Add changelog entry
2016-10-20 23:45:13 +01:00
Yoichi Hirai
31ffe01463
Changelog: add an entry about super.x lookup
2016-10-20 16:12:21 +02:00
Alex Beregszaszi
e1ff8bebe1
Mention in changelog
2016-10-20 13:25:28 +01:00
Alex Beregszaszi
d5c94cb412
Add constant shift to the changelog
2016-10-20 00:04:11 +01:00
chriseth
06c69c9062
Update Changelog.md
2016-10-19 20:46:28 +01:00
Alex Beregszaszi
9616470f67
Disallow magic variables in inline assembly
2016-10-19 20:44:15 +01:00
Alex Beregszaszi
003359a0b6
Ensure that bound functions cannot be defined without self type
2016-10-19 10:41:04 +01:00
Yoichi Hirai
a743d7989b
Changelog: Add a point about fixing #1242
2016-10-18 15:56:37 +02:00
Alex Beregszaszi
d0791fb365
Fix assignment after tags in inline assembly
2016-10-11 12:28:49 +01:00
Alex Beregszaszi
ae0477744c
Support address in inline assembly
2016-10-06 22:05:01 +01:00
Yoichi Hirai
3f833c9ef4
Merge pull request #1164 from ethereum/keccak256-alias
...
Add alias keccak256() for sha3()
2016-10-06 18:32:59 +02:00
Alex Beregszaszi
34df80c502
Add alias keccak256() for sha3()
2016-10-06 16:34:41 +02:00
Alex Beregszaszi
bab96ee1e0
Disallow unknown options in solc
2016-10-06 16:32:56 +02:00
Alex Beregszaszi
6afdee5958
Support both suicide/selfdestruct in inline assembly
2016-10-06 12:44:33 +01:00
chriseth
0165814ec4
Bump version in develop.
2016-09-17 15:27:46 +02:00
chriseth
1910e9585d
Finished version 0.4.2
2016-09-17 15:04:16 +02:00
chriseth
212e016091
Merge pull request #1104 from ethereum/fixmemcosts
...
Fix memory resize costs during call
2016-09-17 12:30:41 +02:00
chriseth
a4f6e5b16c
Changelog entry.
2016-09-17 11:30:13 +02:00
chriseth
727c6fac85
Allow value transfer to library functions.
2016-09-17 11:29:27 +02:00
chriseth
031fd568cc
Fix crash for TypeName[k].
2016-09-15 18:16:34 +02:00
chriseth
955a38cbfe
Final changelog entries.
2016-09-08 13:55:53 +02:00
Alex Beregszaszi
4e5fbef145
Consistency changes in the Changelog
2016-09-06 18:43:34 +01:00
chriseth
347b6b4843
Update Changelog.md
2016-09-06 17:31:39 +02:00
chriseth
5ade1bc20f
Merge pull request #1008 from ethereum/stipendwithsend
...
Provide gas stipend manually for send(0).
2016-09-06 15:37:05 +02:00
chriseth
afca2acb77
Merge pull request #1012 from ethereum/reserved-keywords
...
Reserve view and pure as keywords
2016-09-06 13:35:52 +02:00
chriseth
5535f96e2c
Merge pull request #1022 from ethereum/changelogpay
...
Add "payable" to changelog.
2016-09-06 12:55:02 +02:00
chriseth
71a4074ad0
Merge pull request #997 from chriseth/linkingwithunderscores
...
Fix linking for libraries with underscores.
2016-09-06 12:52:31 +02:00
chriseth
9ca7472089
Provide gas stipend manually for send(0).
2016-09-06 12:37:01 +02:00
Alex Beregszaszi
834bb1a110
Update changelog with reserved keywords
2016-09-06 11:37:00 +01:00
chriseth
765a3d7529
Clarify payable fallback function
2016-09-06 12:34:53 +02:00
chriseth
63ac17044a
Add "payable" to changelog.
2016-09-06 12:27:22 +02:00
chriseth
114502f8ad
Merge pull request #1006 from ethereum/nenewaccountgas
...
Do not pay new account gas.
2016-09-06 11:13:31 +02:00
Yoichi Hirai
e2b787cdd0
Merge pull request #1005 from ethereum/modifierbody
...
Require ";" after "_"
2016-09-05 18:28:32 +02:00
chriseth
69c175fe22
Do not pay new account gas.
...
If we checked that the target contract exists, we do not have
to pay the "new account gas".
2016-09-05 15:52:44 +02:00
chriseth
02984b8de1
Require ";" after "_"
2016-09-05 14:54:50 +02:00
chriseth
a787e70594
Fix linking for libraries with underscores.
2016-09-02 01:17:02 +02:00
chriseth
4134834ff3
Guard encoding crashes with assertions.
2016-09-01 20:07:14 +02:00
chriseth
4abba77ddc
Changelog entry.
2016-09-01 00:04:35 +02:00
chriseth
408968b570
Changelog.
2016-08-30 16:26:23 +02:00
chriseth
ba4cfdac5e
Update release date.
2016-08-10 21:04:14 +02:00
chriseth
9fe5fe79cd
Add changelog to source tree.
2016-08-10 16:39:25 +02:00