chriseth
009a55c82d
Merge pull request #4327 from ethereum/document-internals
...
Properly explain all the analsys steps in CompilerStack
2018-08-02 15:07:35 +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
Alex Beregszaszi
6003ed2abd
Merge pull request #4603 from ethereum/smtlib2
...
[SMTLib2] Fix repeated declarations
2018-08-02 12:04:58 +01:00
Leonardo Alt
90f319615f
SMT model variables are sorted and printed as secondary source location
2018-08-01 23:27:46 +02:00
Leonardo Alt
b6a2655513
Replace "value" by "<result>" in the SMT model
2018-08-01 23:27:11 +02: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
chriseth
c8232d9759
Disallow conversion between unrelated contract types.
2018-08-01 11:04:35 +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
Leonardo Alt
41ac3d6cfb
Remove repeated declarations in Z3 and CVC4 as well
2018-08-01 11:12:56 +02: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
f74cff622d
Properly explain all the analsys steps in CompilerStack
2018-07-31 00:39:18 +01:00
Alex Beregszaszi
179427fd65
Import dev::solidity namespace in SMTPortfolio
2018-07-27 23:17:17 +01:00
Leonardo Alt
f249f9c86f
[SMTLib2] Fix repeated declarations
2018-07-27 17:34:44 +01:00
Alex Beregszaszi
dea0567e06
Fix unterminated parentheses typo in SMTLib2
...
Found by @leonardoalt
2018-07-27 17:33:53 +01:00
Leonardo Alt
55c1fb60b4
[SMTChecker] Add CheckResult::CONFLICTING
2018-07-27 16:16:26 +01:00
Leonardo Alt
87a38e1abe
[SMTChecker] SMTPortfolio: use all SMT solvers available
2018-07-27 16:15:34 +01:00
Leonardo Alt
b356f6a7f9
Setting timeout to Z3 and CVC4
2018-07-27 16:01:48 +02:00
Leonardo Alt
06dbcb3afe
Only ask for a model if it's SAT
2018-07-27 14:13:22 +02:00
Alex Beregszaszi
ae15b52d93
Merge pull request #4565 from ethereum/smt-stringutils-crash
...
Add assert for both branches in mergeVariables in SMTChecker
2018-07-25 11:08:47 +01:00
Alex Beregszaszi
a5a61a0b77
More consistent catch statements
...
Also take const& in all cases.
2018-07-25 01:18:09 +01:00
Alex Beregszaszi
d30a6de942
Add better warning on binary operation on non-integer types in SMT Checker
2018-07-24 23:23:54 +01:00
Alex Beregszaszi
278372c13d
Add assert for both branches in mergeVariables in SMTChecker
2018-07-24 22:43:05 +01:00
Leonardo Alt
a2f03ea9e5
Fix abiDecode comment
2018-07-23 23:31:02 +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
0075f4239a
Address members not accessible by contract instance
2018-07-17 13:33:23 +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