Commit Graph

1726 Commits

Author SHA1 Message Date
chriseth
cc2f71e4ac Move dynamic type removal out of the type system. 2018-03-21 14:53:29 +00:00
chriseth
32c94f5059 Simple size check for old ABI decoder. 2018-03-21 14:53:25 +00:00
chriseth
2cdf44f65c Move the old ABI decoder code. 2018-03-20 15:20:43 +00:00
chriseth
78abe81f08
Merge branch 'develop' into externalFunctionsInLibraries 2018-03-14 18:07:55 +01:00
chriseth
abc7a45230
Merge pull request #3725 from ethereum/blockhashNoCall
Allow ``block.blockhash`` without it being called.
2018-03-14 18:04:40 +01:00
Alex Beregszaszi
59658afa30
Merge pull request #3722 from ethereum/fixMods
Fix modifier lookup in libraries.
2018-03-14 17:20:51 +01:00
Daniel Kirchner
0d0c9b8688 DocStringParser: Fix error message for empty parameter description. 2018-03-14 10:14:35 +01:00
chriseth
834d63de2c Allow `block.blockhash` without being called. 2018-03-13 17:34:21 +01:00
chriseth
eecc26deec Make external library functions accessible. 2018-03-13 17:18:46 +01:00
chriseth
069b150e42 Bugfix in virtual lookup for modifiers in libraries. 2018-03-13 16:55:41 +01:00
Leonardo Alt
9b64dc501d [SMTChecker_Bool] Fix PR review comments: method renaming and solAssert 2018-03-12 20:16:47 +01:00
Leonardo Alt
c2d26eb6a2 [SMTChecker_Bool] Fix PR comments; Add support to gt, ge, lt, le. and tests. 2018-03-12 20:16:47 +01:00
Leonardo Alt
6a940f0a99 [SMTChecker] Support to Bool variables 2018-03-12 20:16:47 +01:00
Alex Beregszaszi
a59d6d2e53 Support constantinople in evm-version 2018-03-12 18:13:19 +01:00
chriseth
0649f900ca Properly skip cleanup if only enlarging storage array. 2018-03-09 14:06:54 +01:00
Alex Beregszaszi
ba8819542f
Merge pull request #3611 from ethereum/warn-using-address-overload
Warn if using address overloads on contracts
2018-03-06 19:13:55 +01:00
chriseth
baa1526539
Merge pull request #3664 from ethereum/literalsHexUnitSmallFix
Use double quotes for suggestion about hex literals and denominations.
2018-03-06 19:01:25 +01:00
Alex Beregszaszi
250a6bad8c
Merge pull request #3527 from ethereum/warnLooseAsm
Warn about using loose assembly.
2018-03-06 18:59:23 +01:00
Daniel Kirchner
b4d38c5491 Use double quotes for suggestion about hex literals and denominations. 2018-03-06 18:09:54 +01:00
chriseth
95ca829750
Merge pull request #3663 from ethereum/gasleftEmscripten
Add gasleft to FunctionType::richIdentifier().
2018-03-06 18:06:30 +01:00
chriseth
fd1662d1c4 Warn about using loose inline assembly features as experimental 0.5.0 feature. 2018-03-06 17:45:34 +01:00
Daniel Kirchner
fb4d01e2cd Add gasleft to FunctionType::richIdentifier(). 2018-03-06 17:29:04 +01:00
Alex Beregszaszi
14b12ae745
Merge pull request #2966 from ethereum/useStaticCall
Use STATICCALL for pure function calls.
2018-03-06 17:07:03 +01:00
Alex Beregszaszi
83dacbf669
Merge pull request #3549 from ethereum/fixmultidim
Properly detect which array and struct types are unsupported by the old ABI encoder.
2018-03-06 15:51:17 +01:00
chriseth
b467116ea8 Use STATICCALL for pure function calls if EVM version supports it and 0.5.0 is activated. 2018-03-06 15:30:18 +01:00
chriseth
f6c0daec14
Merge pull request #3652 from ethereum/gasleft_v2
Use StaticAnalyzer to deprecate msg.gas instead of conditionally remo…
2018-03-06 09:26:14 +01:00
Daniel Kirchner
91b13b734d Use StaticAnalyzer to deprecate msg.gas instead of conditionally removing it in MagicType. 2018-03-05 23:16:26 +01:00
chriseth
9d67e9b4fc
Merge pull request #3640 from AnthonyBroadCrawford/spanning-multiline-message-fix
moved spanning multi lines message to appear on some lane vs new line…
2018-03-05 22:51:53 +01:00
Anthony Broad-Crawford
174c46d5af Improved messaging when an error spans multiple lines and updated change log file. 2018-03-05 14:14:14 -06:00
chriseth
be797cb796
Merge pull request #3599 from ethereum/sendAllGasOnByzantium
Send all gas on byzantium
2018-03-05 20:13:52 +01:00
chriseth
3793aa405b
Merge pull request #3643 from ethereum/gasleft
Move msg.gas to global function gasleft(). Closes #2971.
2018-03-05 20:11:37 +01:00
chriseth
83fcf007bf Do not retain any gas in external calls (except if EVM version is set to homestead). 2018-03-05 19:32:12 +01:00
chriseth
f190b27431
Merge pull request #3600 from ethereum/version050IsAnalysisOnly
Do not warn about 0.5.0 experimental pragma.
2018-03-05 19:28:41 +01:00
Daniel Kirchner
3340053fd9 Style improvements. 2018-03-05 17:00:37 +01:00
chriseth
1ceb0b04c1 Assert that address members are not present on contract types in 0.5.0. 2018-03-05 15:55:02 +01:00
Alex Beregszaszi
fd60c1cf86 Warn if using address overloads on contracts 2018-03-05 15:50:27 +01:00
chriseth
477571e190 Do not warn about 0.5.0 experimental pragma. 2018-03-05 12:14:44 +01:00
chriseth
cd6ffbdf79
Merge pull request #3642 from leonardoalt/fix_z3-46
Add z3 performance option
2018-03-05 12:13:39 +01:00
chriseth
6dc137317f
Merge pull request #3569 from ethereum/evmVersion
EVM version
2018-03-05 12:10:49 +01:00
chriseth
6ec4517929 Use EVM version in gas meter and optimizer. 2018-03-05 11:36:33 +01:00
Daniel Kirchner
c633c0eacb Move msg.gas to global function gasleft(). Closes #2971. 2018-03-05 11:18:04 +01:00
Leonardo Alt
5d74b862a3 This z3 option is necessary for good solving performance 2018-03-04 14:42:36 +01:00
chriseth
f78d6a9a1e
Merge pull request #3628 from ethereum/literalsHexUnit
Deprecate using unit denominations in combination with hex numbers.
2018-03-02 11:11:16 +01:00
Daniel Kirchner
454b470cee Suggest expressions of the form '0x1234 * 1 day' instead of hex numbers with unit denominations. 2018-03-02 10:22:58 +01:00
Alex Beregszaszi
5a54cd5c70 Only warn for shift instructions if not using constantinople 2018-03-01 17:19:35 +01:00
chriseth
4ce0e7775d Add constantinople. 2018-03-01 17:19:35 +01:00
chriseth
982476f99d Add TangerineWhistle. 2018-03-01 17:19:35 +01:00
chriseth
dc317a44e0 Provide EVM version to assembly analysis. 2018-03-01 17:19:35 +01:00
chriseth
a53d6b499d Use EVM version in type checker. 2018-03-01 17:19:35 +01:00
chriseth
f75a411325 Provide target EVM version in CompilerContext. 2018-03-01 17:19:35 +01:00