Commit Graph

560 Commits

Author SHA1 Message Date
Alex Beregszaszi
05cc7e79e1 More precise error message if using non-variables with _slot/_offset 2018-08-07 13:18:54 +01:00
Alex Beregszaszi
eb7b3862ac Properly handle invalid references used together with _slot and _offset. 2018-08-07 13:18:38 +01:00
Alex Beregszaszi
296ba24f7f Do not crash on using _slot and _offset suffixes on their own 2018-08-07 12:14:12 +01:00
chriseth
bc73617f5e
Merge pull request #4689 from ethereum/cleanup-050-tests
Cleanup 0.5.0 test cases
2018-08-06 14:45:31 +02:00
Alex Beregszaszi
3481d4e2ec
Merge pull request #4690 from ethereum/equalParameterTypes
Renamed FunctionType::hasEqualArgumentTypes to FunctionType::hasEqual…
2018-08-06 12:50:04 +01:00
Jesse Busman
3fcd62921e Renamed FunctionType::hasEqualArgumentTypes to FunctionType::hasEqualParameterTypes 2018-08-06 13:05:06 +02:00
Alex Beregszaszi
08e431f94e Remove unused 050 variable in ReferencesResolver 2018-08-06 12:03:00 +01:00
chriseth
9d03de1f25
Merge pull request #4671 from ethereum/mappingTupleAssignment
Disallow assignments to mappings within tuple assignments; allow for local variables.
2018-08-06 12:59:16 +02:00
chriseth
3576980710
Merge pull request #4644 from ethereum/event_struct_error
Disallow structs in events without ABIEncoderV2
2018-08-06 11:44:05 +02:00
chriseth
30f981fc2c
Merge pull request #4681 from ethereum/var-suggestion-crash
Fix declaration suggestion for var with different number of components
2018-08-06 11:21:54 +02:00
Alex Beregszaszi
83e6c34526 Fix declaration suggestion for var with different number of components 2018-08-04 15:22:22 +01:00
Christian Parpart
a4ee1dfc83
Merge pull request #4412 from ethereum/v050-reference-resolver-errorTypeForLoose
[BREAKING] permanently set errorTypeForLoose from Warning to SyntaxError
2018-08-03 19:30:33 +02:00
Daniel Kirchner
f9b90feea0 Review suggestions; to be squashed. 2018-08-03 17:38:06 +02:00
Daniel Kirchner
1e4b5886d6 Allow assignments to local variables of mapping types. 2018-08-03 16:22:03 +02:00
Daniel Kirchner
c0a169ca90 Disallow assignments to mappings within tuple assignments. 2018-08-03 15:46:26 +02:00
Leonardo Alt
20c6cea7bb Disallow structs in events without ABIEncoderV2 2018-08-03 13:41:27 +02:00
Daniel Kirchner
35c5b7de25 Turn warning about uninitialized storage returns into an error. 2018-08-02 19:34:38 +02:00
chriseth
90a5928b88
Merge pull request #4522 from ethereum/fullEncodingType
Isolate determining the encoding type into its own function.
2018-08-02 15:01:38 +02:00
Christian Parpart
5d9320c70b Disallow loos assembly in Solidity by permanently setting it to SyntaxError (from Warning) 2018-08-02 13:36:05 +01:00
Daniel Kirchner
ce7c7aca79 Extend code comment about signatures. 2018-08-01 17:18:17 +02:00
Daniel Kirchner
30d9961efb Do not exclude public state variables when looking for conflicting declarations. 2018-08-01 14:31:04 +02:00
Alex Beregszaszi
ce99a5ce7f
Merge pull request #4378 from ethereum/noBaseWithoutArguments
[BREAKING] Disallow calling base constructors without arguments.
2018-08-01 13:18:37 +01:00
chriseth
061ea0cfc6 Correctly determine whether base constructor is called without parentheses. 2018-08-01 12:28:27 +01:00
chriseth
7e5406dd89 Disallow calling base constructors without arguments. 2018-08-01 12:28:27 +01:00
Christian Parpart
38f9667e09 Guard CycleDetector against recursion exhaustion.
fixes #3935.
2018-08-01 12:02:59 +01:00
chriseth
7a8a243eef Isolate determining the encoding type into its own function. 2018-08-01 11:55:57 +01:00
Alex Beregszaszi
21888e246b
Merge pull request #4507 from ethereum/v050-var-keyword-trace-removals
Ensures an empty use of var keyword is caught with the proper non-fatal error message
2018-08-01 10:59:26 +01:00
Christian Parpart
a7150f85a6
Ensures an empty use of var keyword is caught with the proper error message. 2018-08-01 09:59:06 +02:00
Leonardo Alt
210fee571f Fix crash when FunctionType has undeclared type as parameter 2018-07-31 11:17:51 +02:00
Alex Beregszaszi
de90290c28
Merge pull request #4527 from ethereum/mappingEnforceStorage
Enforces explicit data location for mappings
2018-07-23 20:43:38 +01:00
Erik Kundt
c622a1e56c Enforces data location of local mappings to storage. 2018-07-23 19:30:07 +02:00
Christian Parpart
9f35f0b805 Disallow functions without implementation to use modifiers. This was already the case in the experimental 0.5.0 mode. 2018-07-23 17:29:08 +01:00
chriseth
3fa0ac5822
Do not handle balance member of contract types specially. 2018-07-20 10:50:05 +02:00
chriseth
e3c2f20f6e
Merge pull request #4439 from ethereum/address_members
[BREAKING] Enforce address members not accessible by contract instance
2018-07-19 09:24:27 +02:00
Leonardo Alt
faa9c221d4 Changes in ExpressionCompiler 2018-07-18 19:51:24 +02:00
Erik Kundt
b0b35e1e6b Adds warning if function is shadowing a contract. 2018-07-18 14:29:01 +02:00
Erik Kundt
182a0a9551 Disallows old constructor syntax. 2018-07-18 14:29:01 +02:00
chriseth
dfd2fee91d Suggests external for fallback and interface functions. 2018-07-17 18:07:36 +02:00
Erik Kundt
b5ecfbe5bc Enforces visibility specifier and updates docs. 2018-07-17 17:44:51 +02:00
Leonardo Alt
563e0fc9a7 Add suggestion to error message 2018-07-17 16:38:36 +01:00
Leonardo Alt
fdfdddd8dc Add missing period in the end of error messages 2018-07-16 16:11:39 +01:00
Alex Beregszaszi
21e97da294 Deprecate the throw statement 2018-07-16 15:33:20 +02:00
Christian Parpart
396bf11858 enforce interface-functions to be external-declared
- libsolidity: Enforce interface-functions must be external-declared.
- Changelog adapted to reflect changes wrt. functions in interfaces.
- test: Adjustments according to prior interface-function changes.
- tests: Adapting SolidityEndToEndTest to interface-function change.
- docs: Adapted documentation to interface-function change.
2018-07-16 12:15:36 +02:00
chriseth
bab4a3975f
Merge pull request #4501 from ethereum/recursiveStructsWithFixedArrays
Consider fixed-size arrays when checking for recursive structs.
2018-07-13 01:26:50 +02:00
Daniel Kirchner
fc370591f0 Disallow multi variable declarations with mismatching number of values. 2018-07-12 20:33:51 +02:00
Daniel Kirchner
d71a023c0b Use CycleDetector and account for multi-dimensional arrays. 2018-07-12 20:14:02 +02:00
Daniel Kirchner
d4dfd28694 Consider fixed size array members when checking for recursive structs. 2018-07-12 20:14:02 +02:00
chriseth
5d8a8f7265
Merge pull request #4437 from ethereum/report-empty-var-decls
[BREAKING] Report empty var tuple decls
2018-07-12 19:22:38 +02:00
Christian Parpart
cc585138bc Generates a syntax error when declaring a variable declaration's LHS has no named components 2018-07-12 13:26:52 +02:00
Daniel Kirchner
a1f54f4e40 Require storage location. 2018-07-12 12:48:18 +02:00