chriseth
|
cc62d7ce6a
|
Merge pull request #4229 from ethereum/smt_storage_vars_refactor
Refactoring how storage and local variables are managed.
|
2018-06-12 16:11:05 +02:00 |
|
Daniel Kirchner
|
e4b7b2160e
|
Add new reserved keywords.
|
2018-06-12 16:02:53 +02:00 |
|
Daniel Kirchner
|
510f227bd7
|
Additional test and more explanation.
|
2018-06-12 15:53:15 +02:00 |
|
Leonardo Alt
|
207d5859d1
|
Refactoring Declaration -> VariableDeclaration (more precise)
|
2018-06-12 10:58:50 +02:00 |
|
Leonardo Alt
|
48652c88af
|
Review comments
|
2018-06-12 10:58:50 +02:00 |
|
Leonardo Alt
|
678a769cd7
|
Refactoring how storage and local variables are managed.
|
2018-06-12 10:58:50 +02:00 |
|
Daniel Kirchner
|
e84b55bd6f
|
Extend explanatory remark and argue using bitwise operations instead of rounding.
|
2018-06-12 09:32:19 +01:00 |
|
Daniel Kirchner
|
f33dc92cbd
|
Use proper SAR for signed right shifts and emulate on pre-constantinople.
|
2018-06-12 09:32:19 +01:00 |
|
Alex Beregszaszi
|
1d57d74e82
|
Fail if break/continue statements are used outside for/while loops in ContractCompiler
|
2018-06-12 00:46:23 +01:00 |
|
Erik Kundt
|
2e9f5d1c98
|
Introduces emit token and removes identifier workaround.
|
2018-06-11 21:21:22 +01:00 |
|
Alex Beregszaszi
|
8d38d4d296
|
Use boost::multiprecision::pow explicitly
|
2018-06-11 19:31:26 +01:00 |
|
Alex Beregszaszi
|
0f572159ec
|
Show named argument name in error
|
2018-06-06 15:59:27 +01:00 |
|
chriseth
|
4073c02cf3
|
Merge pull request #4208 from ethereum/extract-name-and-type-tests
Extract name and type tests
|
2018-06-04 19:54:14 +02:00 |
|
chriseth
|
283cdef98c
|
Fix view/pure error ordering problem.
|
2018-06-04 17:00:37 +02:00 |
|
chriseth
|
c59a06bb97
|
Merge pull request #4213 from ethereum/fixpop
Fix bug related to byte array pop.
|
2018-06-04 16:10:56 +02:00 |
|
Jason Cobb
|
6e29775d39
|
Remove suicide and sha3 assembly instructions
|
2018-06-04 01:04:48 +01:00 |
|
chriseth
|
7cf36331a6
|
Fix bug related to byte array pop.
|
2018-05-31 14:53:33 +02:00 |
|
chriseth
|
0a1a8bfb09
|
Merge pull request #4172 from ethereum/trailing_dot
[BREAKING] Disallow trailing dot not followed by number
|
2018-05-30 18:51:52 +02:00 |
|
chriseth
|
5a73044fa7
|
Merge pull request #3743 from ethereum/popStorageArray
pop() for storage arrays
|
2018-05-30 18:32:08 +02:00 |
|
Erik Kundt
|
fea0d116f7
|
Fixes assembly bug and adds tests to cover it.
|
2018-05-30 17:46:43 +02:00 |
|
Erik Kundt
|
98d52beba3
|
Adds syntax tests, documentation and changelog entry.
Refines comment for array utility function.
|
2018-05-30 17:43:20 +02:00 |
|
Erik Kundt
|
34b5eca1f8
|
Improves assembly and adds more tests.
|
2018-05-30 17:40:33 +02:00 |
|
Leonardo Alt
|
ac68710789
|
Disallow trailing dots that are not followed by a number
|
2018-05-30 15:14:53 +01:00 |
|
mingchuan
|
b7cafcbdf9
|
Allow using calldata keyword to specify data location
|
2018-05-30 18:05:55 +08:00 |
|
Erik Kundt
|
7156a01acc
|
Implements pop() for byte arrays.
|
2018-05-29 12:53:02 +02:00 |
|
bitshift
|
e9dcfb0b62
|
Implements pop() for value type arrays.
|
2018-05-29 12:53:02 +02:00 |
|
chriseth
|
9d5064d04d
|
Merge pull request #4173 from sifmelcara/add/allow-storage-calldata-suffix
Allow data location suffix for internal elementary type parsing
|
2018-05-28 22:52:45 +02:00 |
|
chriseth
|
5ee2ce353e
|
Merge pull request #4067 from ethereum/050
[BREAKING] Version 0.5.0
|
2018-05-23 18:11:20 +02:00 |
|
mingchuan
|
9865012f7b
|
Allow data location suffix for internal elementary type parsing
|
2018-05-22 23:28:12 +08:00 |
|
mingchuan
|
3cd57866a9
|
Fix assert message about function visibility
|
2018-05-20 22:29:11 +08:00 |
|
Julius Huelsmann
|
1d3a37faff
|
Avoid "unneccesary parentheses in declaration of" warning with keeping a temporary variable.
|
2018-05-17 14:48:15 +02:00 |
|
Julius Huelsmann
|
9e26f5fa0a
|
Do not catch exceptions by value in StandardCompiler
|
2018-05-17 14:44:01 +02:00 |
|
Daniel Kirchner
|
1cbc037a45
|
Update control flow graph.
|
2018-05-16 18:32:48 +02:00 |
|
Daniel Kirchner
|
f627dc77d0
|
Fix continue inside do-while.
|
2018-05-16 18:32:48 +02:00 |
|
Daniel Kirchner
|
5c59d56335
|
Disallow conversions between bytesX and uintY of different size.
|
2018-05-16 18:32:47 +02:00 |
|
Leonardo Alt
|
0b6eea0c55
|
Bool variables should not allow arithmetic comparison
|
2018-05-16 18:32:47 +02:00 |
|
Alex Beregszaszi
|
221a4d1f1f
|
Split warning for multi arguments for hash functions
|
2018-05-16 11:12:25 +02:00 |
|
chriseth
|
894122c508
|
Warn/enforce single bytes argument for certain builtins (hashing functions).
In 0.5.0 mode, only accept a single bytes argument for ``.call``,
``keccak256`` and others and do not pad when encoding.
|
2018-05-16 09:48:03 +02:00 |
|
chriseth
|
3ca6738114
|
Add assert about source location.
|
2018-05-16 03:52:24 +02:00 |
|
chriseth
|
67d208d144
|
Parse multi variable declaration statement.
|
2018-05-16 03:22:45 +02:00 |
|
chriseth
|
2ba0002998
|
Merge pull request #4139 from ethereum/abiEncodeIsPure
ABI encoding functions are pure and should be usable in constants.
|
2018-05-15 16:59:48 +02:00 |
|
chriseth
|
63861aac4a
|
Merge pull request #3947 from ethereum/smt_storage
[SMTChecker] Support to integer and Bool storage vars
|
2018-05-15 14:54:41 +02:00 |
|
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 |
|
Leonardo Alt
|
4117e859eb
|
[SMTChecker] Declaring all state vars before any function is visited
|
2018-05-15 14:28:08 +02:00 |
|
Leonardo Alt
|
2dbb35d4a8
|
[SMTChecker] Support to integer and Bool storage vars
|
2018-05-15 14:22:50 +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 |
|
Erik Kundt
|
896018c8a3
|
Treats inline array as an error.
|
2018-04-23 17:11:41 +02:00 |
|
Erik Kundt
|
b2ff9bc88d
|
Turns it into warning (error for 0.5.0) and adds Changelog entry.
|
2018-04-23 17:09:42 +02:00 |
|
Erik Kundt
|
f2b58de92c
|
Prevents null type from being used in tuple.
|
2018-04-22 16:54:33 +02:00 |
|
Alex Beregszaszi
|
5423974e87
|
Remove category check in FixedPointType:binaryOperatorResult as commonType handles the same
|
2018-04-20 17:54:34 +01:00 |
|
Jason Cobb
|
57003c534a
|
Types changes for fixed points
|
2018-04-20 17:53:42 +01:00 |
|
Alex Beregszaszi
|
0493e3b053
|
Turn deprecated warnings for sha3/suicide into errors (experimental 0.5.0)
|
2018-04-20 17:40:48 +01:00 |
|