Commit Graph
5162 Commits
Author SHA1 Message Date
hrkrshnn 9428dbc94f Moved storage size assert to TypeChecker from DeclarationTypeChecker 2021-10-26 18:43:04 +02:00
Leo Alt 37215ffcfd Add SMTCheckerTest isoltest option to ignore invariants 2021-10-26 11:30:30 +02:00
Leo Alt 3118fb3666 Add invariants option to CLI and JSON 2021-10-26 11:30:30 +02:00
Leo Alt d419c30ca6 Add errorCode list to invariants report 2021-10-26 11:30:30 +02:00
Leo Alt 49e7627bd3 Use invariants in CHC 2021-10-26 11:30:30 +02:00
Leo Alt bc90533c93 Add invariants to ModelCheckerSettings 2021-10-26 11:30:30 +02:00
Leo Alt d554824f70 Add Invariants which traverses the proof and collects invariants for the given predicates 2021-10-26 11:30:30 +02:00
Leo Alt 9bcd2c18e4 Add expression substitution to Predicate 2021-10-26 11:30:30 +02:00
Leo Alt ce72d7cd26 Add ExpressionFormatter which translates an smtutil::Expression into a Solidity-like expression string 2021-10-26 11:30:30 +02:00
Kamil Śliwak fdf3b96e3f Merge pull request #12155 from vowchick/develop
Use range-v3 loops: delete boost includes
2021-10-16 12:03:43 +02:00
vowchick 5d985a24ac Use range-v3 loops: delete boost includes
An addition to issue #10738, couldn't change boost::for_each to
std::for_each, doesn't compile.

Build successful
./scripts/test.sh successful
2021-10-16 11:54:46 +03:00
tcoyvwac ba0c09e082 Prefer make_unique over new 2021-10-15 19:46:47 +02:00
chriseth 1e630fc584 Merge pull request #12082 from ethereum/controlFlowSideEffectsUserDefined
Control flow side effects of user defined functions
2021-10-14 18:28:22 +02:00
chriseth 9417d6775f Control flow side-effects for user-defined functions. 2021-10-14 17:46:07 +02:00
Christian Parpart 86a7e19879 libsolidity: Adding a comment to nameLocation(). 2021-10-14 17:33:15 +02:00
chriseth 1a931a5108 Make use of inner loops. 2021-10-13 15:56:23 +02:00
chriseth 49d7b78466 Merge pull request #12123 from ethereum/empty-switch-12068
CodeGen: Only output switch when it has cases
2021-10-12 17:42:49 +02:00
Mathias Baumann 454860d1f5 CodeGen: Only output switch when it has cases 2021-10-12 17:40:31 +02:00
chriseth adc58c67b4 Merge pull request #11944 from ethereum/debug-info-selection
Debug info selection
2021-10-12 16:39:50 +02:00
Kamil Śliwak e136788493 Replace BOOST_THROW_EXCEPTION() with solThrow() where appropriate 2021-10-11 20:35:00 +02:00
Kamil Śliwak a9e794c872 Expose --debug-info/settings.debug.debugInfo option 2021-10-11 20:34:48 +02:00
Kamil Śliwak bcfefc79d9 Pass DebugInfoSelection down to the code handling assembly printing 2021-10-11 20:34:48 +02:00
Kamil Śliwak f7c4ed849d Handle DebugInfoSelection in the code printing Yul and EVM assembly 2021-10-11 20:34:48 +02:00
Christian Parpart 3f08b2269a Adds fmtlib as 3rdparty dependency for easier string composition. 2021-10-11 13:35:08 +02:00
Kamil Śliwak a30348715b Use boost::current_exception_diagnostic_information() to print extra info about exceptions caught by (...) 2021-10-07 17:41:25 +02:00
Marenz 4368da0201 Fix ICE when printing an error message related to mappings 2021-10-06 17:02:36 +02:00
Leo Alt 4c2b661eaa [SMTChecker] Report values for block, msg and tx variables in counterexamples 2021-10-05 15:19:10 +02:00
chriseth ecfcca1a27 Merge pull request #12016 from ethereum/external-fp-10358
Add ``.address`` and ``.selector`` in inside assembly for external function pointers
2021-10-05 14:48:58 +02:00
Marenz 98dd78362e Add `.address and .selector` in inside assembly for external function pointers 2021-10-04 18:05:57 +02:00
Kamil Śliwak 7f7107405f Try out the new assertion macro variants with less arguments 2021-10-04 12:05:00 +02:00
Leo Alt d81ebe97c3 Fix magic access 2021-10-01 12:57:06 +02:00
chriseth df9721f869 Merge pull request #12047 from ethereum/fixFixedBytesCompilerUtils
Properly handle fixed-byte-like types.
2021-09-29 12:23:15 +02:00
chriseth 13354c0b9a Merge pull request #12050 from ethereum/signedImmutablesBug
Fix signed immutables bug.
2021-09-29 11:46:58 +02:00
chriseth 77932edb02 Consider non-external functions not left-aligned. 2021-09-29 11:44:17 +02:00
chriseth cb052611cf Fix signextend for user defined value types. 2021-09-29 11:44:17 +02:00
chriseth da5c5928fe Properly handle fixed-byte-like types. 2021-09-29 11:41:47 +02:00
hrkrshnn 6109b5c3a1 UserDefinedValueType.storageBytes() is correctly set
Previously it returned 32 bytes for all types, which was wasteful. This commit changes it to return
the storage bytes of the underlying type.
2021-09-29 11:41:47 +02:00
chriseth 8f7ba99e30 Merge pull request #12045 from ethereum/arrayTestsForUDFT
Fix array copying check.
2021-09-29 10:39:34 +02:00
chriseth 90f4ca1048 Do not store immutables packed. 2021-09-29 10:12:05 +02:00
chriseth bb4e3e191d Fix array copying check. 2021-09-29 10:00:14 +02:00
chriseth b6e62d61ec Export canonicalName 2021-09-28 12:00:30 +02:00
Kamil Śliwak f909555022 Treat ambiguous imports as errors 2021-09-27 13:14:23 +02:00
Kamil Śliwak 9975b5e26b Detect source unit name collisions between paths specified on the command line 2021-09-27 13:14:23 +02:00
Kamil Śliwak c8a7a1da7c Add --include-path option 2021-09-27 13:14:23 +02:00
Kamil Śliwak 479ba7c523 Handle allowing empty paths correctly 2021-09-27 13:14:10 +02:00
Kamil Śliwak 3ac3612767 Whitelist base path 2021-09-27 13:14:10 +02:00
Kamil Śliwak 52dd39212d Normalize allowed paths before comparing them with imports 2021-09-27 13:14:10 +02:00
Kamil Śliwak a436abfb25 normalizeCLIPathForVFS(): Add an option for resolving symlinks 2021-09-27 13:14:10 +02:00
Kamil Śliwak f0dceffe1d Refactor parsing of remappings to remove duplication and improve readability 2021-09-27 13:14:10 +02:00
Kamil Śliwak d06dc7613e Print diagnostic info for more exception types in the default import callback 2021-09-27 13:14:10 +02:00