Commit Graph

1877 Commits

Author SHA1 Message Date
chriseth
dac0029d16 ABI encoding functions are pure and should be usable in constants. 2018-05-15 14:45:54 +02:00
chriseth
dce6224052
Merge pull request #4062 from ethereum/revert-variable
Fix revert with reason coming from a string variable
2018-05-15 14:44:39 +02:00
Daniel Kirchner
16e966dea0 Add control flow analyzer and test for uninitialized storage returns. 2018-05-14 20:23:40 +02:00
Daniel Kirchner
995623f0fa Add control flow graph. 2018-05-14 20:23:40 +02:00
mingchuan
dbd0a7ed60
Fix link error when using boost shared library 2018-05-11 11:20:19 +08:00
Alex Beregszaszi
e96bbe70d4 Assert that mandatory fields in the AST are present in AsmAnalysis 2018-05-10 10:48:48 +02:00
Alex Beregszaszi
c03a29dea8 Fix revert with reason coming from a string variable 2018-05-09 17:53:17 +02:00
Alex Beregszaszi
868d449c38
Merge pull request #4047 from ethereum/refactorToMulti
Refactor to allow implementing multi variable declarations.
2018-05-09 15:37:19 +01:00
chriseth
fe8f38a7a4 Assert integrity of empty IndexAccessPath structure. 2018-05-09 14:55:36 +02:00
Daniel Kirchner
02380113d4 Use the entire token as source location for parser errors. 2018-05-09 14:08:22 +02:00
chriseth
be54f48197 Further refactor. 2018-05-09 11:48:21 +02:00
chriseth
86b7adc18f Refactor expression parser. 2018-05-09 11:48:21 +02:00
chriseth
54aa10ce36
Merge pull request #4054 from ethereum/token-names
Improve parser error messages
2018-05-09 11:06:23 +02:00
chriseth
fe12f05c08 Deprecate wildcard assignments. 2018-05-08 15:13:32 +01:00
njwest
51b4dc3752 fixed grammar in error in CompilerUtils.cpp line 399, 'less variables.' should be 'fewer variables.' 2018-05-06 18:52:12 -04:00
chriseth
150d226603
Merge pull request #4063 from ethereum/emit-non-event
Show proper error when trying to emit a non-event
2018-05-04 15:02:04 +02:00
Alex Beregszaszi
cc10839073 Have more uniform parser errors 2018-05-04 13:27:05 +01:00
Alex Beregszaszi
c7ee649d80 More user friendly output in case of Identifier and Token keywords 2018-05-04 13:27:05 +01:00
Alex Beregszaszi
882248ce75 Remove code duplication in expectToken 2018-05-04 13:27:05 +01:00
Alex Beregszaszi
252bde8542 Introduce Token::friendlyName() helper 2018-05-04 13:11:23 +01:00
Alex Beregszaszi
e3279d8af8 Display nicer error messages in the parser (display tokens and not internal names) 2018-05-04 12:39:37 +01:00
chriseth
81d61ca086
Merge pull request #4059 from ethereum/parser-simplify
Simplify the parser expectations
2018-05-04 12:50:12 +02:00
Alex Beregszaszi
ffe7f224a6 Show proper error when trying to emit a non-event 2018-05-04 12:47:01 +02:00
daniel
aa1542a9e1 Change bytes to unsigned in FixedBytesType 2018-05-03 23:11:34 +01:00
Alex Beregszaszi
ed9f80690b Simplify expectIdentifierToken by using expectToken 2018-05-03 22:10:51 +01:00
Alex Beregszaszi
73c99d15cd Remove useless helper expectAssignmentOperator in parser 2018-05-03 21:35:38 +01:00
Alex Beregszaszi
b34428249a Change numBits to unsigned IntegerType 2018-05-02 23:22:25 -07:00
Alex Beregszaszi
2c00ebbee1 Change totalBits and fractionalDigits to unsigned in FixedPointType 2018-05-02 23:22:25 -07:00
chriseth
a856135bbf
Merge pull request #3797 from ethereum/shift-constantinople
Use native shift instructions on Constantinople
2018-05-02 16:50:15 +02:00
chriseth
8debded743
Revert "BREAKING: Bool variables should not allow arithmetic comparison" 2018-05-02 15:56:59 +02:00
chriseth
42289b642f
Merge pull request #4003 from ethereum/bool_vars_comparison
BREAKING: Bool variables should not allow arithmetic comparison
2018-05-02 15:56:06 +02:00
Alexander Arlt
f94b793472 Add virtual destructors on base classes. 2018-05-02 13:29:16 +02:00
Alex Beregszaszi
059e232e69 Support shifts in gas estimator 2018-04-30 21:22:59 +01:00
chriseth
2968639406 Removed signed shift right from the utilities. 2018-04-30 20:34:43 +01:00
Alex Beregszaszi
52c9441879 Do not use SAR instead of SDIV in shifts because it rounds differently 2018-04-30 20:34:43 +01:00
Alex Beregszaszi
c3608eaf90 Use native shift instructions in ABIFunctions on Constantinople 2018-04-30 20:34:43 +01:00
Alex Beregszaszi
22bfd3da41 Use native shift instructions on Constantinople 2018-04-30 20:34:43 +01:00
chriseth
d26b6b64c0
Merge pull request #3996 from ethereum/refactorParser
Refactor parser.
2018-04-30 19:15:11 +02:00
chriseth
15024154ab
Merge pull request #4018 from ethereum/disable-bytes0
Disable FixedBytesType(0) aka bytes0
2018-04-30 18:19:07 +02:00
chriseth
9e61b25dc4
Merge pull request #3958 from meowingtwurtle/fixedPointTypes
Types class changes for fixed points
2018-04-30 15:56:55 +02:00
Alex Beregszaszi
548bf2ff28 Remove unused function smallestTypeForLiteral 2018-04-30 14:35:26 +01:00
Alex Beregszaszi
e0b178e1c5 Disable FixedBytesType(0) aka bytes0 2018-04-30 12:23:30 +01:00
Leonardo Alt
ab251c7e7d Bool variables should not allow arithmetic comparison 2018-04-27 11:35:58 +02:00
chriseth
d44fb03322 Refactor parser. 2018-04-26 10:59:02 +02:00
Alexander Arlt
3ec667f59b Add virtual destructor in LValue class. 2018-04-24 23:39:25 +02:00
chriseth
d1e1293fbd
Merge pull request #3981 from ethereum/years-suffix
The "year" denomination is deprecated
2018-04-24 12:12:03 +02:00
Alex Beregszaszi
258ae8927e
Merge pull request #3970 from elopio/test/docstring-tag-end
docstring: add missing space
2018-04-24 02:16:27 +01:00
Leo Arias
b74566e4ea docstring: add missing space 2018-04-23 21:47:53 +00:00
chriseth
e685f9f59e
Merge pull request #3976 from ethereum/emptyTupleComponent
Empty tuple components should not be possible
2018-04-23 17:35:00 +02:00
Alex Beregszaszi
1ac0090f31 The "year" denomination is deprecated 2018-04-23 16:19:51 +01:00