Commit Graph

1789 Commits

Author SHA1 Message Date
chriseth
78a097a012 Only warn about variables being shadowed in inline assembly. 2021-02-19 14:29:22 +01:00
chriseth
24cc372069 Changelog entry. 2021-02-11 10:50:58 +01:00
Christian Parpart
32ba5f5ae7 libsolidity: Extend the AST for named AST nodes in order to get precise locations for names.
The actual SourceLocation on an ASTNode is representing the whole
ASTNode whereas in an LSP (for example) you are also interested in the
SourceLocation of a name of a construct (e.g. variable decarlation, function definition, ...).

This also properly encodes non-existend sources as `-1` in the JSON output (eliminating the use of `numeric_limits<size_t>::max()`).
2021-02-10 18:13:09 +01:00
Daniel Kirchner
cb74a45fd6 Add inlining for old optimizer. 2021-02-09 19:08:58 +01:00
chriseth
fcdb5e0b40 Export statement documentation. 2021-02-09 17:33:01 +01:00
Mathias Baumann
3a8a74cbc7 OverrideSpecifier: Check for null before dereferencing 2021-02-04 13:17:28 +01:00
Martin Blicha
a49950cdf3 [SMTChecker] Added transaction constraints also for contract deployment 2021-02-01 16:46:34 +01:00
chriseth
d7c1028bf7 Set version to 0.8.2. 2021-01-27 16:15:26 +01:00
chriseth
490dc09fd4 Set release date for 0.8.1. 2021-01-27 12:12:12 +01:00
Martin Blicha
484e67815a [SMTChecker] Basic support for inline assembly using over-approximating analysis 2021-01-26 16:20:50 +01:00
hrkrshnn
133bc72970 Tests and changelog for <address>.code.length shortcut 2021-01-26 11:08:39 +01:00
chriseth
fbd10585c5 Sort changelog. 2021-01-26 09:25:54 +01:00
hrkrshnn
ec57c791ef Fix infinite loop when accessing circular constants from inline assembly. 2021-01-26 09:22:05 +01:00
chriseth
9fc3d88617
Merge pull request #10826 from ethereum/issue-10821
Fix missing error when accessing unintialized variables.
2021-01-26 09:16:13 +01:00
chriseth
1adaf929dd
Merge pull request #10707 from ityuhui/yh-721-replace-colon-in-cli
[CLI] Accept also equal sign "=" for ``--libraries``
2021-01-26 08:17:26 +01:00
Mathias Baumann
07a1d230cd Fix missing error when accessing unintialized variables. 2021-01-25 14:44:15 +01:00
Hui Yu
c669ee251a [CLI] Allow "=" as separator between library name and address in --libraries commandline option. 2021-01-25 16:14:39 +08:00
Leonardo Alt
a612daa783 Add msgvalue to cex 2021-01-21 19:05:44 +01:00
Leonardo Alt
3b23cadbdc Add CLI and JSON option to select SMTChecker targets 2021-01-20 17:35:37 +01:00
Leonardo Alt
007d39871b [SMTChecker] Synthesize untrusted functions called externally 2021-01-15 11:56:26 +01:00
chriseth
eb88ba05c7
Merge pull request #10751 from ethereum/emscriptenDockerUpdate
Update emscripten docker image to be based on emscripten 2.0.12 and boost 1.75.0.
2021-01-14 11:19:52 +01:00
Martin Blicha
5e13744423 [SMTChecker] Fixed pushing string literal to bytes array 2021-01-13 16:30:50 +01:00
Daniel Kirchner
804bd8f6dd Switch to new emscripten docker image. 2021-01-13 02:22:09 +01:00
a3d4
35a25b107f Fix ICE caused by const structs with mappings 2021-01-12 18:39:54 +01:00
Leonardo
fa28e48415
Merge pull request #10727 from ethereum/smt_cex_internal_calls
[SMTChecker] Report internal calls in CHC transaction trace
2021-01-12 15:44:12 +01:00
chriseth
99add1e4e5
Merge pull request #10710 from ethereum/implicit-conversion-bug
Disallow certain implicit conversions between integer types.
2021-01-12 15:42:12 +01:00
Leonardo Alt
b3c3836388 Output internal calls 2021-01-12 14:57:04 +01:00
hrkrshnn
e107d51f46 Disallow certain implicit conversions between integer types.
Disallow implicit conversion from ``uintN`` and ``intM`` when ``M > N``, and by extension, explicit
conversion between the same types are also disallowed.
2021-01-12 08:23:47 +01:00
Martin Blicha
064e9a5de6 Changelog entry 2021-01-11 13:36:03 +01:00
Harikrishnan Mulackal
3cb48b8c60
Merge pull request #10683 from ethereum/optSubEq
Optimize iszero(sub(x, y)) to eq(x, y).
2021-01-06 12:22:54 +01:00
Daniel Kirchner
308549f950 Simplify test and add Changelog entry. 2021-01-06 11:33:08 +01:00
Leonardo Alt
b02722ebda Add contract name to called function in cex 2021-01-04 10:03:16 +01:00
Leonardo Alt
78d55e6b4a [SMTChecker] Support check/unchecked 2020-12-30 12:14:30 +01:00
Martin Blicha
be0a0f4d90 [SMTChecker] Added constraints for block properties 2020-12-29 22:17:44 +01:00
Leonardo Alt
9482e7de23 [SMTChecker] Fix calls to virtual/overriden functions 2020-12-29 11:25:20 +01:00
Martin Blicha
58731056a3 Changelog entry 2020-12-28 16:50:04 +01:00
chriseth
0437ee7ad9 Fix length check when decoding error data. 2020-12-22 11:08:44 +01:00
chriseth
b965446182 Catch panic. 2020-12-22 11:08:44 +01:00
Alex Beregszaszi
b14a6a10cc Report meaningful error if parsing a version pragma failed 2020-12-18 11:50:37 +00:00
Martin Blicha
7078e8f8f8 [SMTChecker] Fix analysis of overriding modifiers 2020-12-17 17:05:54 +01:00
Leonardo Alt
7ba91cdc33 Changelog 2020-12-17 14:03:17 +01:00
chriseth
21ed65d956 Set version to 0.8.1. 2020-12-16 20:08:13 +01:00
chriseth
e5a8a9e6ed Sort changelog and set release date. 2020-12-16 16:59:32 +01:00
chriseth
3a23df6717 Merge remote-tracking branch 'origin/develop' into breaking 2020-12-16 16:56:45 +01:00
chriseth
7338295fee
Merge pull request #10623 from ethereum/smt_const_expr
[SMTChecker] Apply const eval to arithmetic binary expressions
2020-12-16 15:39:16 +01:00
chriseth
7f677025ec Set release date for 0.7.6. 2020-12-16 15:01:45 +01:00
Leonardo Alt
80e85b772b [SMTChecker] Apply const eval to arithmetic binary expressions 2020-12-16 14:58:00 +01:00
chriseth
8f833f4e8f
Merge pull request #10618 from ethereum/develop
Merge develop into breaking.
2020-12-16 12:34:41 +01:00
chriseth
d8aff53771 Sort changelog. 2020-12-16 12:05:28 +01:00
Christian Parpart
381c63ec99 Scanner: Generate error on inbalanced RLO/LRO/PDF override markers. 2020-12-15 18:40:51 +01:00