Commit Graph
131 Commits
Author SHA1 Message Date
Daniel Kirchner e036133d1b Fix negative denominator in `boost::rational` during exponentiation. 2018-11-06 10:52:10 +01:00
Christian Parpart f112377dd4 Refactor solidity::Token into an enum class with TokenTraits helper namespace 2018-10-22 17:00:51 +02:00
liangdzou 44e8dfd393 fix typo 2018-09-20 22:54:57 +08:00
Jordan Last d0497aacc0 fixing rebase conflicts
add ElementaryTypes::BytesMemory and ElementaryTypes::StringMemory

fix rebase conflicts

fixing rebase conflicts

use make_shared instead of new

fix tabs and StateMutability parameter

create address and addressType functions, fix spaces in comment

fix typo and switch nonpayable to payable

fix spaces

fix comment again
2018-09-13 15:53:06 -06:00
Daniel Kirchner 12aaca1645 Add payable and non-payable state mutability to AddressType. 2018-09-13 15:15:49 +02:00
Daniel Kirchner 87804b6419 Split IntegerType into IntegerType and AddressType. 2018-09-05 12:19:14 +02:00
Anurag Dashputre 94c327c1ae Removed unused "FunctionType::Kind::CallCode" from Types.h and all its usage 2018-08-23 13:09:00 +05:30
Daniel Kirchner 7ca0aaaf6f Add `staticcall to address`. 2018-08-15 16:06:48 +02:00
chriseth 9328ea4c3c Add abi.decode(bytes data, (...)) 2018-08-15 10:45:16 +02:00
chriseth 3f42118d19 Merge pull request #4765 from ethereum/fixes-issue-4673
[WIP] Fixes issue where computing storage size for a number would take too long (or even cause a crash).
2018-08-14 17:34:04 +02:00
Jesse Busman c059119145 Add implicit convertibility to function pointer with higher state mutability 2018-08-14 17:13:10 +02:00
Christian Parpart 43bda53410 Fixes issue where computing storage size for a number would take too long.
Fixes #4673.
2018-08-14 15:38:10 +02:00
Daniel Kirchner 7d7abeb149 Disallow ambiguous conversions between number literals and bytesXX types. 2018-08-13 14:27:01 +02:00
Alex Beregszaszi ed52f422b7 Rename FunctionKind SHA3 to KECCAK256 (as the instruction was renamed in libevmasm) 2018-08-08 22:37:40 +01:00
Alex Beregszaszi 3064bd17bc Assert that type identifier contains only valid characters 2018-08-07 22:29:21 +01:00
chriseth 133fd3d302 Make MemberList nothrow move constructible. 2018-08-07 14:20:18 +02:00
Jesse Busman 3fcd62921e Renamed FunctionType::hasEqualArgumentTypes to FunctionType::hasEqualParameterTypes 2018-08-06 13:05:06 +02:00
chriseth 7a8a243eef Isolate determining the encoding type into its own function. 2018-08-01 11:55:57 +01:00
chriseth c8232d9759 Disallow conversion between unrelated contract types. 2018-08-01 11:04:35 +01:00
Leonardo Alt 0075f4239a Address members not accessible by contract instance 2018-07-17 13:33:23 +01:00
Cryptomental 140dbfdbd8 Code, Changelog, ReleaseChecklist: Fix typos.
Refs: #4442
2018-07-11 00:26:23 +02:00
chriseth 23c4142005 Bare functions take single bytes argument. 2018-06-25 17:01:45 +02:00
chriseth 0e66a1ddde Single bytes argument.
In 0.5.0 mode, only accept a single bytes argument for ``.call``,
``keccak256`` and others and do not pad when encoding.
2018-06-25 17:01:45 +02:00
Erik Kundt 34b5eca1f8 Improves assembly and adds more tests. 2018-05-30 17:40:33 +02:00
bitshift e9dcfb0b62 Implements pop() for value type arrays. 2018-05-29 12:53:02 +02:00
mingchuan 9865012f7b Allow data location suffix for internal elementary type parsing 2018-05-22 23:28:12 +08: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 dac0029d16 ABI encoding functions are pure and should be usable in constants. 2018-05-15 14:45:54 +02:00
daniel aa1542a9e1 Change bytes to unsigned in FixedBytesType 2018-05-03 23:11:34 +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
Alexander Arlt f94b793472 Add virtual destructors on base classes. 2018-05-02 13:29:16 +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
Alex Beregszaszi 548bf2ff28 Remove unused function smallestTypeForLiteral 2018-04-30 14:35:26 +01:00
Jason Cobb 57003c534a Types changes for fixed points 2018-04-20 17:53:42 +01:00
chriseth 44416d1ac6 Merge pull request #2980 from ethereum/abi-api
Add abi.encode and abi.encodePacked
2018-04-12 20:55:03 +02:00
Alex Beregszaszi d56acb68ab Add abi.encode, abi.encodePacked, abi.encodeWithSelector and abi.encodeWithSignature. 2018-04-11 22:32:10 +02:00
Daniel Kirchner daa69df447 Error on invalid arithmetic with constant expressions. 2018-04-11 21:17:10 +02:00
hydai aaa8edc36d Fixed typos 2018-04-10 13:41:35 +08:00
chriseth 5b1c0506fa Allow `memory` suffix for internal elementary type parsing. 2018-04-05 16:06:04 +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
chriseth cc2f71e4ac Move dynamic type removal out of the type system. 2018-03-21 14:53:29 +00:00
Daniel Kirchner c633c0eacb Move msg.gas to global function gasleft(). Closes #2971. 2018-03-05 11:18:04 +01:00
Alex Beregszaszi b471983e3c Use new escaping helpers for type identifiers 2018-02-26 19:09:43 +01:00
Alex Beregszaszi 2e7067fbe4 Rename Types::identifier to Types::richIdentifier 2018-02-26 19:09:43 +01:00
Alex Beregszaszi 751705978e Add helpers escapeIdentifier to Types 2018-02-26 19:09:39 +01:00
chriseth 560fbd0df1 Always use shortened literal number representation. 2018-02-13 11:43:47 +01:00
Federico Bond a320ffeafd Avoid output messages size blow-up using huge bignums literals 2018-02-12 22:53:33 +00:00
Alex Beregszaszi 5226d54ed1 Improve error message for constant evaluator 2017-12-12 09:39:26 +00:00