Commit Graph
339 Commits
Author SHA1 Message Date
Daniel Kirchner 037eba20fc Merge pull request #3824 from ethereum/baseArgumentsEmptyParenthesis
Error when using empty parentheses for base class constructors that r…
2018-04-05 14:43:28 +02:00
Daniel Kirchner 96eff0ff6a Error when using empty parenthesis for base class constructors that require arguments. 2018-04-05 11:52:22 +02:00
chriseth 65f18a18de More specific push implementation. 2018-04-04 16:50:45 +02:00
chriseth 0cbe55005d Create empty dynamic memory arrays more efficiently. 2018-04-04 12:37:04 +02:00
Alex Beregszaszi 0edce4b570 Merge pull request #3693 from ethereum/optimizeMLOAD
Optimize across MLOAD if MSIZE is not used.
2018-04-03 15:58:11 +01:00
chriseth a54fdc495f Fix: Treat empty base constructor argument list as not provided. 2018-04-03 14:53:48 +02:00
chriseth 6777f7a57f Optimize across MLOAD if MSIZE is not used. 2018-04-03 14:34:32 +02:00
chriseth 5c8a6aac69 Prevent encoding of weird types and support packed encoding of external function types. 2018-03-29 09:57:11 +01:00
Alex Beregszaszi fab527c414 Add runtimeOnly option to pushCombinedFunctionEntryLabel 2018-03-27 04:00:12 +01:00
chriseth 0a67d616db Use shortcut for internal function calls to avoid runtime reference. 2018-03-27 04:00:12 +01:00
chriseth c2709a2d8e Decode dynamic data. 2018-03-21 14:53:29 +00:00
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 abc7a45230 Merge pull request #3725 from ethereum/blockhashNoCall
Allow ``block.blockhash`` without it being called.
2018-03-14 18:04:40 +01:00
chriseth 834d63de2c Allow `block.blockhash` without being called. 2018-03-13 17:34:21 +01:00
chriseth 069b150e42 Bugfix in virtual lookup for modifiers in libraries. 2018-03-13 16:55:41 +01:00
chriseth 0649f900ca Properly skip cleanup if only enlarging storage array. 2018-03-09 14:06:54 +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
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 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
Daniel Kirchner 3340053fd9 Style improvements. 2018-03-05 17:00:37 +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
chriseth dc317a44e0 Provide EVM version to assembly analysis. 2018-03-01 17:19:35 +01:00
chriseth f75a411325 Provide target EVM version in CompilerContext. 2018-03-01 17:19:35 +01:00
chriseth 388718b59f Introduce emit statement. 2018-02-22 15:17:30 +01:00
chriseth e2bf5de8a2 Expect end of string at end of top-level block for assembly parser. 2018-02-21 00:41:39 +01:00
chriseth 2b5a5a8669 Make addmod and mulmod revert if the last argument is zero. 2018-02-15 13:52:17 +01:00
chriseth 5916cf1e0a Allow this.f.selector to be pure. 2018-02-13 11:00:59 +01:00
chriseth 6807010dc7 Prevent libraries from being called. 2018-01-19 16:27:44 +01:00
chriseth 124190336b Split inline assembly into loose and strict flavours. 2018-01-06 01:23:38 +00:00
chriseth 00692a4ff6 Reset source location after using inline assembly. 2018-01-04 14:29:03 +01:00
chriseth e2828cfa61 Favour if over switch in ABI coder. 2017-12-15 09:47:34 +01:00
chriseth 5a3dbb0269 Cleanup and overflow checks for data pointers. 2017-11-29 17:08:44 +01:00
chriseth bdc1ff8ec7 ABI decoder. 2017-11-29 17:08:44 +01:00
chriseth 6ed4e0632f Use if statement in abi functions. 2017-11-22 16:25:24 +01:00
Alex Beregszaszi c1e202618c Add explanation to unimplemented assertions 2017-11-15 17:19:29 +00:00
chriseth a3db1fc197 Do not accept truncated function selectors. 2017-10-17 23:17:36 +02:00
chriseth 6001bd1406 Allocate one byte per memory byte array element instead of 32. 2017-10-16 22:29:31 +02:00
Alex Beregszaszi 6ba0c2bba8 Merge pull request #2982 from ethereum/encoderFixes
ABI encoder fixes and test.
2017-10-05 11:59:42 +01:00
Alex Beregszaszi 880be25811 Merge pull request #3029 from ethereum/tanwisgas
Send all gas for 0.5.0.
2017-10-05 11:34:17 +01:00
chriseth 11c51de5b9 Merge pull request #2968 from ethereum/calldataencodedsize
Add some asserts about calldata encoded size.
2017-10-05 12:16:37 +02:00
chriseth 69ea5c43f3 Send all gas for 0.5.0. 2017-10-05 11:56:36 +02:00
chriseth 19274c7890 Merge pull request #2962 from ethereum/optionalDebugInfoAsm
Debugging info in CompilerContext.
2017-10-04 17:01:52 +02:00
chriseth 80cefb9cc8 Rename "compacted" to "fromStack". 2017-10-04 16:56:54 +02:00