588 Commits
Author SHA1 Message Date
Leonardo Alt 371b37b660 Fix direct call to base class overloaded functions 2019-04-26 09:34:15 +02:00
chriseth fb302c1c4f Merge pull request #6473 from ethereum/libeventhash-6435
Fix external ABI type name for contracts
2019-04-18 12:53:34 +02:00
Mathias Baumann 0f4b53e9a0 Fix external ABI type name for contracts 2019-04-18 11:39:48 +02:00
Christian Parpart 9733ae7483 [libsolidity] TypeProvider: cleanup unnecessary std:: qualifiers 2019-04-17 14:45:29 +02:00
Christian Parpart 721bf367a3 [libsolidity] TypeProvider: eliminate redundant "Type" suffix in provider function signatures. 2019-04-17 14:42:07 +02:00
Christian Parpart 862b65d6e3 [libsolidity] remove ReferenceType::copyForLocationIfReference (use TypeProvider instead) 2019-04-17 13:25:03 +02:00
Christian Parpart b83097bdc6 [libsolidity] Types: eliminate redundant MagicType::metaType() (use TypeProvider instead) 2019-04-17 12:59:48 +02:00
Christian Parpart a99a460c79 [libsolidity] Types: remove some old comments 2019-04-17 12:00:33 +02:00
chriseth 4e2d4f02b0 Make data location explicit. 2019-04-16 23:22:08 +02:00
chriseth 2761aed1d3 Lazy-initialize string and bytes types. 2019-04-16 23:22:08 +02:00
chriseth 4656d7ca7d Change pre-created types to unique_ptr to avoid copying and moving. 2019-04-16 23:22:08 +02:00
Christian Parpart 58a45f2cb6 [libsolidity] TypeProvider: adds explicit uint256() accessor and removes default params in integerType(...). 2019-04-16 18:28:40 +02:00
Christian Parpart 59d4f54729 libsolidity: Be more restrictive to not allow any copy constructors at all in Type system.
This enforces us to be a little bit more historical in how to initialize
our std::array<>'s in TypeProvider.
2019-04-16 18:26:46 +02:00
Christian Parpart a2a3b007f3 TypeProvider: storageType() to make all parameters explicit 2019-04-16 18:26:46 +02:00
Christian Parpart bf43eebea9 libsolidity: Introducing TypeProvider API, for clear type system ownership. 2019-04-16 18:26:45 +02:00
chriseth 6b69c31703 Fix ABIEncoderV2 array overwrite bug. 2019-03-25 18:28:43 +01:00
Mathias Baumann 4c2b1c1f29 ArrayType::interfaceType(): Rename local variable to make more sense 2019-03-21 07:25:59 +01:00
Mathias Baumann 7d809df91a Add back StructType::recursive() 2019-03-21 07:25:59 +01:00
Mathias Baumann 8e899a0d32 Disallow internal function types as parameters for public/external library function 2019-03-21 07:25:57 +01:00
Mathias Baumann 0fbea8a1a0 Change return type for interfaceType() to ResultType 2019-03-21 07:25:28 +01:00
Mathias Baumann 84b68006ba Fix function calls with named arguments for overloaded functions 2019-03-20 14:54:41 +01:00
chriseth 48f0d41cc5 Merge pull request #6294 from ethereum/merge-canBeUsedExternally-and-interfaceType-6223
Merge interfaceType() canBeUsedExternally()
2019-03-14 18:12:07 +01:00
Mathias Baumann 4d060ef991 Merge interfaceType() canBeUsedExternally()
And cache the result for expensive calls.
2019-03-14 17:19:59 +01:00
Mathias Baumann 3b546acd57 Clarify documentation of ContractType::m_super 2019-03-14 15:59:26 +01:00
Erik Kundt b9a7a88346 Improves Result<T> in order to prevent defects. 2019-03-14 14:33:28 +01:00
Mathias Baumann e411a502fd Fix missing trailing dot in error message 2019-03-11 16:15:18 +01:00
Mathias Baumann d70cb375cf isImplicitlyConvertibleTo(): Add better error messages 2019-03-11 13:38:02 +01:00
Mathias Baumann 9052a8f050 Move FunctionType::returnParameters() to CallableDeclaration
all the other functions of that type are also found there.
2019-03-06 11:13:01 +01:00
Mathias Baumann b2262d67f0 Remove unused variable Contractdefinition::m_linearizedBaseContracts 2019-03-06 11:13:01 +01:00
Alex Beregszaszi d2f493268b Provide access to the name of contracts. 2019-02-26 14:07:03 +00:00
Mathias Baumann c65a96d189 Small documentation fixes in the code 2019-02-21 12:54:39 +01:00
chriseth fb07462d82 Fix: Do use actual ABI signatures for events also in libraries instead of internal signature. 2019-02-20 14:35:24 +01:00
Daniel Kirchner d74198b3cc Remove misleading note in Type::calldataEncodedSize. 2019-02-18 16:18:40 +01:00
Daniel Kirchner 0408130338 Merge pull request #6003 from ethereum/moreStyleChecks
Even more style checks.
2019-02-15 11:52:32 +01:00
Daniel Kirchner 809b9a95f9 Even more style checks. 2019-02-14 11:53:00 +01:00
Daniel Kirchner 32190dac48 Add stride helpers to ArrayType. 2019-02-14 10:51:39 +01:00
chriseth 1a823f0bf8 Fix tabs/spaces. 2019-02-13 17:05:48 +01:00
chriseth 17ea467e5b Fix style of "const". 2019-02-13 16:34:53 +01:00
Daniel Kirchner 0e4912a203 ABIEncoderV2: Implement calldata structs without dynamically encoded members. 2019-02-11 15:46:58 +01:00
chriseth b5a2c66771 Merge pull request #5957 from ethereum/function-param-fix
Ensure function parameter names always matches parameter types length
2019-02-11 15:45:28 +01:00
chriseth 0c2d623ee4 Enable struct encoding. 2019-02-11 11:37:47 +01:00
Mathias Baumann 57c1c8b46c Ensure function parameter names always matches parameter types length 2019-02-11 10:57:57 +01:00
Alex Beregszaszi ee09d54525 Change FIXMEs into TODOs where appropriate 2019-01-29 00:35:23 +00:00
chriseth e3791d6dcf Fix reported packed encoded size for arrays and structs. 2019-01-23 11:13:22 +01:00
Alex Beregszaszi 7b759866cb Merge pull request #5817 from ethereum/refactoring
Refactoring in TypeChecker and ContractDefinition
2019-01-18 11:36:49 +00:00
Daniel Kirchner a766efc79f Add ContractDefinition::isInterface. 2019-01-18 12:11:35 +01:00
chriseth a9fa2658d8 Add helper to show if contract can be deployed. 2019-01-17 20:36:48 +01:00
chriseth e6fee257e6 Code generation for access to contract code. 2019-01-17 20:36:48 +01:00
chriseth 2fcfb216b5 Syntax for meta type information. 2019-01-17 20:36:48 +01:00
Christian Parpart 62fe57479e make use of C++ = default constructor declarations as well as more non-static member initialization syntax. 2018-12-19 11:26:42 +01:00