Commit Graph

670 Commits

Author SHA1 Message Date
chriseth
33d6a24c47 Move library related checks. 2018-11-30 16:30:20 +01:00
chriseth
4f992298c6 Move hash collisions checks. 2018-11-30 16:30:19 +01:00
chriseth
6d1644e55c Move external type clash check. 2018-11-30 16:30:19 +01:00
chriseth
4f4f623273 Move fallback function checks. 2018-11-30 16:30:19 +01:00
chriseth
2a85152463 Move constructor checks. 2018-11-30 16:30:19 +01:00
chriseth
b610be4882 Rename functions. 2018-11-30 16:30:19 +01:00
chriseth
d1cc731843 No need to visit structs early. 2018-11-30 16:30:19 +01:00
chriseth
2c2c976697 Move base constructor argument checks. 2018-11-30 16:30:19 +01:00
chriseth
57a62429c9 Move abstract function check. 2018-11-30 16:30:19 +01:00
chriseth
89cf6a5a38 Move override checks. 2018-11-30 16:30:19 +01:00
chriseth
d054a3b85d Move duplication checks. 2018-11-30 16:30:19 +01:00
chriseth
0bd9db480f Add skeleton for contract level checker. 2018-11-30 16:30:19 +01:00
chriseth
c445e7dfa4 Disallow inline arrays of mapping type. 2018-11-29 19:45:06 +01:00
Leonardo Alt
67bbcefe6c Report deprecation error on functions sha3 and suicide also without call. 2018-11-29 14:29:13 +01:00
hydai
9326adc3db Replace IntegerType(256) with static function IntegerType::uint256() 2018-11-29 17:07:18 +08:00
chriseth
b4086ac870
Merge pull request #5526 from ethereum/fixGetterNewCoder
Fix: Disallow structs in getters for old encoder.
2018-11-28 17:05:52 +01:00
chriseth
46f3da0b87 Properly check getter types to be old-abi-coder-compatible. 2018-11-28 14:08:25 +01:00
chriseth
4fa47322f9 Remove obsolete comment. 2018-11-28 11:49:00 +01:00
chriseth
240ad0e34e
Merge pull request #5382 from ethereum/libraryMappingPublic
Allow mapping arguments for public and external library functions.
2018-11-26 19:47:32 +01:00
chriseth
4d7799eed4 Properly disallow different return types for interface overloads with different visibilities. 2018-11-26 16:51:28 +01:00
Daniel Kirchner
30e6f8d3fb Allow mapping arguments for public and external library functions. 2018-11-26 16:31:46 +01:00
chriseth
5ec634939e Use asCallableFunction for definition clashes in the same contract. 2018-11-26 14:30:32 +01:00
chriseth
36a369d077 Use asCallableFunction for external interface clash check. 2018-11-26 14:30:32 +01:00
chriseth
939365a1d5 Use callable types for override check. 2018-11-26 14:30:32 +01:00
chriseth
9a4968ba1d Use asCallableFunction in override check (part 1). 2018-11-26 14:30:32 +01:00
chriseth
0f0e466d36 Allow visibility change from external to public. 2018-11-26 12:41:26 +01:00
chriseth
bc137c2eeb
Merge pull request #5485 from ethereum/refactorCallableFunction
Refactor callable function
2018-11-26 12:34:43 +01:00
Christian Parpart
ec47c8946b
Isolating libyul library API into its own namespace yul. 2018-11-23 14:29:00 +01:00
Christian Parpart
713d94476e Reorder some include files and group <libyul/>'s together (as much as possible) 2018-11-23 12:37:19 +01:00
Christian Parpart
0f4ed52a71
Rewrite header paths to adapt to recent git mv of libsolidity/inlineasm to libyul 2018-11-23 11:18:57 +01:00
chriseth
a781bda595 Correct style. 2018-11-22 17:15:25 +01:00
Christian Parpart
d67322a186 Introduce namespace langutil in liblangutil directory.
Also:
- Use {}-style list initialisation for SourceLocation construction
- Introduce new system includes
- Changes the API of the Scanner to take source as value (with move) as opposed to as a reference
2018-11-21 19:13:44 +00:00
Christian Parpart
87821c53c3 Isolating files shared between Yul- and Solidity language frontend. 2018-11-21 18:58:12 +00:00
mordax
ea8b7d803e Removing redundant virtual from override function declaration
Remove trailing whitespace

Remove changelog change
2018-11-21 14:37:32 +00:00
Daniel Kirchner
b5e9d849ef Ignore unimplemented functions for storage returns. 2018-11-13 12:18:22 +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
674e17c2a8 Performance: Replace string by special single-copy YulString class. 2018-11-07 19:30:27 +01:00
Christian Parpart
f112377dd4
Refactor solidity::Token into an enum class with TokenTraits helper namespace 2018-10-22 17:00:51 +02:00
chriseth
0778fb2dfc
Merge pull request #5208 from mestorlx/bug4156
[WIP] Bad identifier suggestion in certain cases
2018-10-15 13:03:49 +02:00
Christian Parpart
1304361b9c
Renaming namespace dev::julia to dev::yul. 2018-10-15 11:58:51 +02:00
Christian Parpart
6d815a142f
Fixes invalid function calls to literals inside tuple assignment's LHS. 2018-10-15 10:35:11 +02:00
mestorlx
1ce9566e50 Updated MAXIMUM_STRING_DISTANCE to non static maximumStringDistance taking into account length of the identifier 2018-10-13 09:54:07 -03:00
chriseth
2feaacba9d
Merge pull request #5195 from ethereum/unsigned-array-index
Do not crash on non-unsigned array index
2018-10-10 20:56:25 +02:00
Erik Kundt
763ae30023 Fixes crash on non-unsigned array index. 2018-10-10 19:49:25 +02:00
Martin Diz
ef25454a04 Improved error message for lookup in function types. 2018-10-10 11:53:53 -03:00
chriseth
06200b4b64
Merge pull request #5180 from ethereum/cpp-cleanup
Some C++ cleanup
2018-10-10 11:43:42 +02:00
Alex Beregszaszi
fa0ce6a7e7 Use empty() instead of size() == 0 2018-10-09 04:29:37 +01:00
chriseth
6a0b7759ba Fix pragma error suggestion. 2018-10-09 03:15:53 +02:00
chriseth
d76bfcd935 Fix typos. 2018-10-04 13:28:16 +02:00
Christian Parpart
9fb835b710 Fixes #5051 (introduced in #4684), effectively allowing underscores in address literals. 2018-10-02 15:37:15 +02:00