Commit Graph

11811 Commits

Author SHA1 Message Date
chriseth
deed8e21f6
Merge pull request #5334 from ethereum/stringPerformance
[Yul] String performance
2018-11-07 20:26:33 +01:00
chriseth
674e17c2a8 Performance: Replace string by special single-copy YulString class. 2018-11-07 19:30:27 +01:00
Daniel Kirchner
c38591858d Document interoperability between 0.5.0 and pre-0.5.0 contracts. 2018-11-07 16:55:06 +01:00
Daniel Kirchner
8b2f8b1ea2 Document disallowed explicit conversions between unrelated contract types. 2018-11-07 16:44:35 +01:00
chriseth
0a96f091ab
Merge pull request #5346 from ethereum/chriseth-patch-4
[DOCS] Integers cannot be implicitly converted to address
2018-11-07 14:59:54 +01:00
chriseth
a459b8c81e
Merge pull request #5359 from ethereum/cpp17-forward-compat
Eliminate `byte`-typedef and use `uint8_t` in all their places instead.
2018-11-07 12:42:02 +01:00
Christian Parpart
ab0de38f16
Eliminate byte-typedef and use uint8_t in all their places instead.
This change is made to (easily) be forward compatible with future C++
standards, in order to allow compiling the code with newer standards at
some point in the future.

* Removed the `using byte = uint8_t;` line from Common.h
* Mechanically change all uses of `byte` to `uint8_t`.

Tested with GCC 7.3 in C++11/14/17 modes :-)
2018-11-07 12:17:57 +01:00
Daniel Kirchner
a3e37a9d5a Relax identity requirement of function type conversions during code generation. 2018-11-06 13:22:33 +01:00
Daniel Kirchner
e036133d1b Fix negative denominator in `boost::rational` during exponentiation. 2018-11-06 10:52:10 +01:00
chriseth
5df83346f3 Integers cannot be implicitly converted to address 2018-11-06 09:11:02 +01:00
Daniel Kirchner
88aee34c22
Merge pull request #5347 from ethereum/boostRationalNegativeDenominator
Remove uses of boost::rational with negative denominator in tests.
2018-11-05 21:59:15 +01:00
Daniel Kirchner
36903d7e27 Remove uses of boost::rational with negative denominator, which breaks with boost 1.68. 2018-11-05 21:36:52 +01:00
chriseth
e4da724fb8
Merge pull request #5343 from lshapton/patch-1
Fixes small typo in documentation
2018-11-04 18:44:09 +01:00
Leanne
e5836fc276
Fixes typo 2018-11-03 16:02:41 -04:00
mordax
5effc0eeb9 Disable covereage cmake option 2018-11-03 15:31:15 -04:00
chriseth
2672d9a8a4
Merge pull request #5337 from ethereum/ubuntuVersion
Update ubuntu versions.
2018-10-30 16:07:48 +01:00
chriseth
199a994e28 Update ubuntu versions. 2018-10-30 15:57:14 +01:00
chriseth
cbbbc0d5d9
Merge pull request #5336 from Eitan-Lev/Update-newcomers-tag
up-for-grabs swapped for good first issue
2018-10-30 15:33:27 +01:00
chriseth
437467acfc
Merge pull request #5188 from ethereum/large-array-encoding
Do not crash when trying to encode too large arrays
2018-10-30 15:31:47 +01:00
Erik Kundt
1d8e9af407 Fixes crash while encoding too large arrays. 2018-10-30 15:14:57 +01:00
Eitan Levin
1b18891424
up-for-grabs swapped for good first issue 2018-10-30 16:04:15 +02:00
chriseth
0b4f6ab72d
Merge pull request #5331 from lazaridiscom/patch-2
move CHECKLIST to the end
2018-10-29 12:09:55 +01:00
Lazaridis
48ab12479c
move CHECKLIST to the end
## Rationale

The github/gitter UIs show the content of a PR-link on mouse-over.

Having the CHECKLIST on top results in those pop-ups showing the checklist instead of the (more relevant) description.
2018-10-29 00:11:03 +02:00
chriseth
4d82831b06
Merge pull request #5316 from lazaridiscom/4891-memory-store-asserts
refine memory-store assertions, closes #4891
2018-10-28 20:50:41 +01:00
chriseth
acf92930ba
Merge pull request #5247 from ethereum/yul-vardecl-propagation
Yul: Implements empty-var-decl-propagation
2018-10-28 20:46:34 +01:00
chriseth
0e9127a7c8 Add rematerializer to interactive optimizer. 2018-10-28 13:27:21 +01:00
chriseth
c338b422d4
Merge pull request #5315 from ethereum/yul-expr-joiner
Refactor Yul's ExpressionJoiner
2018-10-28 13:26:39 +01:00
chriseth
9a58e71b9e
Merge pull request #5320 from lazaridiscom/patch-1
add missing "p"
2018-10-28 12:28:44 +01:00
Lazaridis
ccda086f1c
add missing "p" 2018-10-28 06:56:15 +02:00
Lazaridis
cab8dea7fe refine memory-store assertions, closes #4891 2018-10-27 00:04:54 +03:00
Christian Parpart
1264290d57 [Yul] ExpressionJoiner: code cleanup
* ensure public API is only containing `run(Block&)`, all the rest is private API / implementation details
* adding some comments to class data members to quicker understand their meaning
* eliminate unnecessary `operator()(If&)` as it's not changing default behaviour of `ASTModifier`
* simplify readability of `visit(Expression&)`'s impl, also moving assert's into "isLatestStatementVarDeclOf", as this one is already ensuring exactly that.
* ctor impl's use of ReferenceCounter use shortened.
* renamed and improved `isLatestStatementVarDeclOf` to better match its meaning (especially since it's only used once)
2018-10-26 13:53:37 +02:00
Christian Parpart
f08ab77249
Yul: Implements empty-var-decl-propagation 2018-10-26 13:13:57 +02:00
chriseth
c84003533f
Merge pull request #5314 from berkerol/patch-1
DOCS: Add check for whether voter has right to vote
2018-10-26 11:42:34 +02:00
Berk Erol
19064e81bc
Add check for whether voter has right to vote 2018-10-26 09:53:57 +03:00
chriseth
41375b5d79
Merge pull request #5122 from ethereum/docs-contributing-pt3
Final contribution review in fuzzer section
2018-10-25 18:41:52 +02:00
chriseth
1b02bfdb4a
Merge pull request #5311 from ethereum/chriseth-patch-3
Clarify import.
2018-10-25 18:41:44 +02:00
Chris Ward
feff3fe3e9 Final contribution review in fuzzer section 2018-10-25 18:40:40 +02:00
chriseth
525fa5109d
Clarify import. 2018-10-25 18:28:24 +02:00
chriseth
6e3456d182
Merge pull request #5304 from ethereum/removeASTutils
Remove unused AST utils.
2018-10-25 17:27:03 +02:00
chriseth
39687cf110 Remove unused AST utils. 2018-10-25 14:02:09 +02:00
chriseth
3473326fc4
Merge pull request #5273 from ethereum/interactiveOpt
[Yul] Interactive optimizer tool
2018-10-25 13:55:08 +02:00
chriseth
c36a3bd683
Merge pull request #5283 from ethereum/smt_fixed_bytes
[SMTChecker] Support FixedBytes
2018-10-25 13:01:01 +02:00
chriseth
f714b0dd7c
Merge pull request #5242 from ethereum/someChecks
Some well-formedness checks for the Yul AST.
2018-10-25 12:44:28 +02:00
chriseth
4076875927
Merge pull request #5271 from ethereum/fullSuite
[Yul] Full suite tests.
2018-10-25 12:44:10 +02:00
chriseth
d335539891
Merge pull request #5296 from ethereum/setPragmaToArbitrary
Set pragma to arbitrary
2018-10-25 12:42:15 +02:00
Leonardo Alt
d8cbf321da Grouping of symbolic variables in the same file and support to FixedBytes 2018-10-25 09:30:48 +02:00
chriseth
60f1d52f59 Full suite tests. 2018-10-24 18:02:08 +02:00
chriseth
f92623063d Add redundant assign and ssa. 2018-10-24 17:54:35 +02:00
chriseth
57843f790c Interactive optimizer tool. 2018-10-24 17:52:28 +02:00
chriseth
1424beda79 Remove pragma changer. 2018-10-24 14:52:55 +02:00