solidity/libsolidity
Martin Blicha b0419da654 [SMTChecker] Remember verification targets from trusted external calls
Previously, we did not remember trusted external calls for later phase
when we compute possible verification targets for each function.
This led to false negative in cases where verification target can be
violated, but not by calling a public function directly, but only when
it is called as an external function from other function.

The added test cases witnesses this behaviour. The underflow in
`dec` cannot happen in any other way except what the `dec` is called
from `f`.

The same problem did not occur when the functions are called internally,
because for such cases, we have already been remembering these calls in
the callgraph in the CHC engine.
2023-05-26 13:03:44 +02:00
..
analysis Disallow immutable initialization in try catch statements 2023-05-09 14:48:14 +02:00
ast Introduce solidity-next pragma 2023-05-15 19:25:13 +02:00
codegen Fix hidden-overload in Types and remove CMake hack 2023-05-09 19:33:23 +02:00
formal [SMTChecker] Remember verification targets from trusted external calls 2023-05-26 13:03:44 +02:00
interface Introduce solidity-next pragma 2023-05-15 19:25:13 +02:00
lsp Fixes compilation errors with some clangs 2023-02-03 21:37:50 -05:00
parsing Restrict experimental solidity to constantinople and above 2023-05-17 17:03:43 +02:00
CMakeLists.txt User-defined operators: AST 2023-02-22 00:06:17 +01:00