chriseth
faa7b61d76
Use map join algorithm for performance.
2018-11-12 23:00:37 +01:00
chriseth
4eaed37b96
Merge pull request #5070 from ethereum/2661-clarify-contract-example
...
Docs: Clarify creating a contract example code
2018-11-12 15:08:56 +01:00
Chris Ward
144909dfb8
Clarify creating a contract example as reported in #2661
2018-11-12 15:07:57 +01:00
chriseth
288582e38e
Merge pull request #4497 from ethereum/faq-reorg-control-structures
...
Move control structure related FAQ points
2018-11-12 14:37:34 +01:00
Chris Ward
6319a3fd06
Move control structure related FAQ points
...
Updates from reviews
clarify returning structs, and move returning arrays and strings from separate section
Further clarifications
Updates from review
Final updates
2018-11-12 14:34:09 +01:00
chriseth
d68dfd2c20
Merge pull request #4860 from ethereum/docs-2175-index-missing
...
Add mention of common subexpression elimination
2018-11-12 14:18:28 +01:00
Chris Ward
4370425823
Clarify term and tidy text
...
Use UK spelling in heading
Remove colon
2018-11-12 14:17:09 +01:00
chriseth
60b44b1101
Merge pull request #5364 from ethereum/chriseth-patch-5
...
Add note about changing the storage layout.
2018-11-12 13:00:16 +01:00
chriseth
0b94ac5b04
Add note about changing the storage layout.
2018-11-12 12:59:26 +01:00
chriseth
09f8ff27fc
Merge pull request #5395 from ethereum/fixStyle
...
Fix style
2018-11-12 09:55:32 +01:00
chriseth
2cc304fd3f
Fix for style.
2018-11-12 09:15:22 +01:00
chriseth
af65bac737
Remove trailing whitespace.
2018-11-12 09:15:22 +01:00
chriseth
405565db62
Merge pull request #5275 from svenski123/20181018-4894-refactoring-split-bool-typechecker-visit-functioncall-into-multiple-functions
...
Refactored bool TypeChecker::visit(FunctionCall const& _functionCall).
2018-11-11 18:15:17 +01:00
Kristofer Peterson
f927da9182
Refactor of bool TypeChecker::visit(FunctionCall const& _functionCall).
...
Visit method now cleanly determines if node represents a function call,
struct construction or type conversion. Type checking, validation and
error message logic is moved to separate methods.
2018-11-09 16:35:54 +00:00
chriseth
9709dfe046
Merge pull request #5128 from ethereum/breakUnbreak
...
[Yul] Test case that shows that break / unbreak are more or less inverse
2018-11-09 16:07:20 +01:00
chriseth
dffbeebf60
Merge pull request #5377 from ethereum/resetYulString
...
Reset yul string repository.
2018-11-09 16:06:51 +01:00
chriseth
0f2ba3522f
Reset yul string repository.
2018-11-09 15:40:36 +01:00
chriseth
6bbedab383
Merge pull request #5265 from ethereum/cleanupsha3
...
Simplify sha3.
2018-11-09 15:39:57 +01:00
chriseth
5ea514213a
Test case that shows that break/unbreak are more or less inverse.
2018-11-09 15:36:52 +01:00
chriseth
cbd0116e98
Merge pull request #5326 from ethereum/removeSideEffectFreeStatements
...
[Yul] Remove side-effect-free statements.
2018-11-08 19:09:07 +01:00
chriseth
fa44d20721
Remove side-effect-free statements.
2018-11-08 18:14:36 +01:00
chriseth
20481055e3
Merge pull request #5371 from nud3l/develop
...
Fix cmake Z3 import issue for Fedora like distributions
2018-11-08 12:53:31 +01:00
chriseth
cd11f7cfac
Merge pull request #5325 from ethereum/fixDataFlow
...
[Yul] Fix data flow analyzer for function definitions.
2018-11-08 12:52:51 +01:00
chriseth
b801e61611
Merge pull request #5365 from ethereum/improveNameDispenser
...
[Yul] Use single counter for name dispenser for performance reasons.
2018-11-08 12:24:21 +01:00
chriseth
bf5b36a1ed
Merge pull request #5366 from ethereum/addVarDecl
...
[Yul] Add VarDeclPropagator to full suite and interactive optimizer.
2018-11-08 12:21:45 +01:00
Dominik Harz
2b053ceeff
Fix cmake Z3 import issue for Fedora
2018-11-08 11:12:47 +00:00
Daniel Kirchner
fce1c3a9e7
Merge pull request #5370 from ethereum/fixWindows
...
Fix windows build.
2018-11-08 12:06:32 +01:00
chriseth
e906b36604
Merge pull request #5352 from ethereum/docContractConversions
...
[DOCS] Document disallowed explicit conversions between unrelated contract types.
2018-11-08 11:38:07 +01:00
chriseth
d3e111d493
Merge pull request #5353 from ethereum/docInteroperability
...
[DOCS] Document interoperability between 0.5.0 and pre-0.5.0 contracts.
2018-11-08 11:36:44 +01:00
chriseth
1f4ecff446
Fix windows build.
2018-11-08 11:30:58 +01:00
chriseth
84e8a782d6
Merge pull request #5351 from ethereum/functionTypeConversion
...
Relax type equality requirement of function types during conversion in code generation.
2018-11-08 11:29:55 +01:00
chriseth
cc2de07bc6
Merge pull request #5348 from ethereum/boostRationalNegativeDenominatorFix
...
Fix negative denominator in ``boost::rational`` during exponentiation.
2018-11-08 11:25:30 +01:00
Daniel Kirchner
b16a3644fe
Function type conversion test cases.
2018-11-08 10:51:51 +01:00
chriseth
37766ee8e4
Add VarDeclPropagator to full suite and interactive optimizer.
2018-11-07 23:19:42 +01:00
chriseth
845899e305
Use single counter for name dispenser for performance reasons.
2018-11-07 23:09:33 +01:00
chriseth
b2b11eaa00
Fix data flow analyzer for function definitions.
2018-11-07 20:32:55 +01:00
chriseth
bed0368ffa
Merge pull request #5327 from ethereum/rematerializerSmall
...
Add rematerializer to interactive optimizer.
2018-11-07 20:30:31 +01:00
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