Commit Graph
4839 Commits
Author SHA1 Message Date
Leonardo 7e1be52281 Merge pull request #11165 from blishko/smt-abi-no-args
[SMTChecker] Fix ICE on ABI functions with no arguments
2021-03-25 15:21:57 +01:00
Alex Beregszaszi e071884bbf Show proper error for misusing the custom natspec tag 2021-03-25 12:45:37 +00:00
Martin Blicha 5293f05ee3 [SMTChecker] Fix ICE on ABI functions with no arguments 2021-03-25 13:28:29 +01:00
chriseth 4080748b1d Merge pull request #11157 from ethereum/extractReferencedDeclaration
Extract referencedDeclaration as helper.
2021-03-25 11:02:20 +01:00
chriseth 99fcf62736 Extract referencedDeclaration as helper. 2021-03-24 17:01:50 +01:00
Martin Blicha 98446782e2 [SMTChecker] Fix compound assignment to push 2021-03-24 14:54:13 +01:00
Leonardo 13d3b35141 Merge pull request #11116 from blishko/issue-10985
[SMTChecker] Handle InaccessibleDynamicType
2021-03-24 14:39:24 +01:00
Martin Blicha 852e877ae7 [SMTChecker] Handle InaccessibleDynamicType 2021-03-24 11:53:06 +01:00
Djordje Mijovic 4e75c6c3e8 Implementing bytes.concat for legacy codegen. 2021-03-24 11:49:21 +01:00
Djordje MijovicandDaniel Kirchner 80866d3ee4 [Sol->Yul] Implementing bytes.concat in IR codegen.
Co-authored-by: Daniel Kirchner <daniel@ekpyron.org>
2021-03-24 11:49:21 +01:00
Djordje Mijovic 840df80dac Check if all types in bytes.concat are fixed bytes or byte array. 2021-03-24 11:49:21 +01:00
Djordje Mijovic 1493326e48 Adding bytes.concat function type. 2021-03-24 11:49:21 +01:00
chriseth d15ba987d1 Fix AST output if modifier invocation is base constructor call. 2021-03-24 11:24:26 +01:00
Martin Blicha e0b7c2c125 Fix compilation on develop 2021-03-24 09:40:02 +01:00
chriseth e3ea5c631e Merge pull request #11136 from ethereum/refactor-typepointer
Replace `TypePointer` with `Type const*`
2021-03-23 18:32:38 +01:00
Mathias Baumann e197ebbdd1 Replace TypePointer with Type const* 2021-03-23 11:47:19 +01:00
Mathias Baumann bccedf791b Add creationCode/runtimeCode contract creation detection to call graph 2021-03-22 15:44:23 +01:00
Leonardo 25b31111df Merge pull request #11040 from ethereum/smt_fix_virtual_one_more_time
[SMTChecker] Fix bug in virtual functions called by constructor
2021-03-17 16:54:36 +01:00
Harikrishnan Mulackal 35da404ca9 Merge pull request #11091 from ethereum/modifierInvocationAST
Add "kind" field to ModifierInvocation AST json element.
2021-03-16 19:44:40 +01:00
chriseth 0519473059 Add "kind" field to ModifierInvocation AST json element. 2021-03-16 18:50:37 +01:00
Martin Blicha 432944d0b4 [SMTChecker] Small refactoring of defining SMT expressions for structs/tuples 2021-03-16 15:34:43 +01:00
chriseth ae1b321a2a Merge pull request #11066 from ethereum/functionCollectorrefactor
Adding additional interface to yul function collector.
2021-03-15 21:42:34 +01:00
Djordje Mijovic 49fcda7048 Adding additional interface to yul function collector. 2021-03-15 20:27:16 +01:00
Martin Blicha 2f52affcc2 [SMTChecker] Correctly resolve current scope contract in VariableUsage. 2021-03-15 13:55:14 +01:00
Martin Blicha 6aa6c5f5f9 [SMTChecker] Reset reference variables on assignment to a variable of reference type 2021-03-12 19:51:31 +01:00
Leonardo Alt 998346e599 Fix bug in virtual functions called by constructor. 2021-03-12 16:42:28 +01:00
Martin Blicha 0cb75293f9 [SMTChecker] fix handling of assignments of array/mapping state variable accessed using contract name 2021-03-12 14:01:07 +01:00
Harikrishnan Mulackal 0e22d0bd40 Merge pull request #11079 from ethereum/fix-visibility-warning
AST import: constructors have default visibility
2021-03-11 12:23:46 +01:00
hrkrshnn ef0c4cc39f AST Import: For constructors, a public visibility is ignored. 2021-03-11 10:44:19 +01:00
Leonardo Alt 6fd76e830d Fix CHC cex order 2021-03-11 10:36:40 +01:00
Martin Blicha 4285c2803b [SMTChecker] Fix ICE on array.pop nested inside 1-tuple 2021-03-09 20:00:51 +01:00
Martin Blicha 5af01f6896 [SMTChecker] Use same sort name for array slice as for the underlying array. 2021-03-09 11:06:22 +01:00
Martin Blicha 385a664f3c [SMTChecker] Fix public getter for array of structs. 2021-03-08 17:34:20 +01:00
Martin Blicha 0340510c53 [SMTChecker] correct handling of FixedBytes constants initialized with string literal 2021-03-04 15:14:47 +01:00
Martin Blicha 41fc59f00f [SMTChecker] Ensure that push to a string casted to bytes is registered in the original string 2021-03-03 17:11:42 +01:00
Martin Blicha 41a01de664 [SMTChecker] fix crash on push to string casted to bytes 2021-03-03 15:25:32 +01:00
chriseth d2023f5f95 Check for invalid tags. 2021-03-02 16:53:31 +01:00
chriseth 5690020d88 Allow custom natspec tags. 2021-03-02 16:13:28 +01:00
chriseth 2a25d04896 Merge pull request #11023 from ethereum/natspecparsinglocations
Provide locations for docstring parsing errors.
2021-03-02 14:03:42 +01:00
chriseth f4050e81c6 Provide locations for docstring parsing errors. 2021-03-01 17:34:25 +01:00
chriseth 5e94fce7df Provide selector for some internal functions. 2021-03-01 16:19:59 +01:00
chriseth 16db3a84f1 Fix call graph with respect to constants. 2021-02-25 16:00:53 +01:00
chriseth eacf7c1cf9 Merge pull request #11009 from ethereum/properlyParseAddressMember
Properly parse address member.
2021-02-24 17:12:00 +01:00
chriseth 3d97e9a77b Properly parse address member. 2021-02-24 16:44:16 +01:00
chriseth 5e9637bc39 Mapping access with multi-slot keys. 2021-02-24 13:44:23 +01:00
chriseth 2d48052ae5 Merge pull request #11003 from ethereum/ir-bug-incorrect-return-variable-count
Fix IR bug on deleting storage variables of function type.
2021-02-24 13:24:31 +01:00
hrkrshnn 2c2c7a4473 Fix IR bug on deleting storage variables of function type.
Calling the zeroing function assumed that the stack slots needed for the type was always 1. This is
false for function types.
2021-02-24 12:43:33 +01:00
Kamil Śliwak e87cd0afdf Check that there is an interface type before querying validity of location. 2021-02-24 11:22:40 +01:00
chriseth e33c058a60 Merge pull request #10896 from ethereum/issue-10870
Fix issue with pop on storage array.
2021-02-23 17:49:17 +01:00
hrkrshnn 66d6d20f65 Converted hash collision error into a fatal type error.
The check is performed during ContractLevelChecker. However, the TypeChecker throws in certain cases
when it encounters functions, whose hashes collide.
2021-02-23 17:09:40 +01:00