Commit Graph
1345 Commits
Author SHA1 Message Date
wechman f6543f772d Test for binding user type operator to error 2022-09-28 13:07:59 +02:00
wechman e0c688d55d Add user operator tests for builtin types 2022-09-28 13:07:58 +02:00
wechman 6feb8aea73 Rework error handlig of user type operators 2022-09-28 13:07:58 +02:00
wechman 4fac7b54b3 Additional tests for user operators with calldata and storage parameters 2022-09-28 13:07:58 +02:00
wechman b860561814 Simplify Type::userDefinedOperator function 2022-09-28 13:07:58 +02:00
wechman 70255f8776 Revert "Update OperationAnnotation to use SetOnce for userDefinedFunction"
This reverts commit 29707c7b9a4884f0a5a8ada47cce4859401c8d53.
2022-09-28 13:07:57 +02:00
wechman d124f83b88 Update OperationAnnotation to use SetOnce for userDefinedFunction 2022-09-28 13:07:12 +02:00
wechman 6fcd717ab4 More descriptive error message in TypeChecker::visit(UnaryOperation) 2022-09-28 13:06:25 +02:00
wechman e001f8346b Update message of TypeError 5172 2022-09-28 13:06:25 +02:00
wechman fee6b5f96c Type::userDefinedOperator takes return parameters into account 2022-09-28 13:06:25 +02:00
wechman 3be5114fb0 Update code to review comments 2022-09-28 13:06:25 +02:00
wechman c1dc8df9c9 Adjust code to review findings 2022-09-28 13:06:25 +02:00
wechman a8bf1f255d Adjust code to review findings 2022-09-28 13:06:25 +02:00
wechman 1084a34f28 Add control flow tests for "and" and "or" operators 2022-09-28 13:06:25 +02:00
wechman 43a612e420 Fix control flow check for unary operators 2022-09-28 13:06:20 +02:00
wechman 8307b670cb Handle not unique operators for user-defined type. 2022-09-28 12:10:27 +02:00
wechman beae1e6263 Disallow overriding operators for enums 2022-09-28 12:10:27 +02:00
wechman 275a43068c Update ViewPureChecker 2022-09-28 12:10:27 +02:00
wechman c274d07a73 Remove out of date TODOs 2022-09-28 12:05:41 +02:00
wechman cf82accb14 Fix binary operation type checking function 2022-09-28 12:05:41 +02:00
wechman 73d9146077 Fix for ControlFlowBuilder 2022-09-28 12:05:41 +02:00
wechman 7fedb63dd3 Adjust type checking 2022-09-28 12:05:41 +02:00
wechman 56bcb525bc Unary operators with using for directive fix 2022-09-28 12:05:41 +02:00
wechman 6482f5bb17 Use user defined function return type as user defined operator type 2022-09-28 11:32:03 +02:00
chriseth 3bd047f188 Using for for operators. 2022-09-28 11:32:03 +02:00
Alex Beregszaszi 725253551e Improve FunctionSelector helpers 2022-09-27 17:58:32 +02:00
Marenz f7cc29bec1 Add std:: qualifier to move() calls 2022-08-30 11:12:15 +02:00
Daniel Kirchner 9a429e2300 Fix ICE on invalid tuple assignments. 2022-08-09 12:41:47 +02:00
Nikola Matic 40de2b0442 Add full stops to error messages 2022-08-05 09:52:48 +02:00
Duc Thanh Nguyen a9e03f5e4a Fix out-of-range compiler crash for nested tuple assignment involving
outer unary tuple
2022-08-04 12:45:46 -04:00
Matheus Aguiar 9acf693aa2 Fixed bad cast when abiEncodeCall receives a tuple from a function. 2022-08-03 18:48:38 -03:00
Duc Thanh Nguyen 5072472917 Fix abi.encodeCall checks 2022-07-25 12:40:54 -04:00
chriseth e2675002ca Settings struct for name resolution. 2022-07-14 17:22:17 +02:00
Duc Thanh Nguyen 0a14368315 Display human readable type name in conversion error message 2022-07-06 10:49:51 -04:00
Mathias L. BaumannandDamian Wechman 03409beb1d Update libsolidity/analysis/NameAndTypeResolver.h
Co-authored-by: Damian Wechman <damian.wechman.it@gmail.com>
2022-06-22 13:25:24 +02:00
Marenz 18784cff81 Add all path declarations in IdentifierPath annotation 2022-06-20 18:08:57 +02:00
Ryan 3b2c6de61c Propagate purity information for member access to foreign pure variables 2022-06-16 17:11:55 +05:30
Daniel KirchnerandKamil Śliwak 16245f7b9b Warn about multiple assignments to storage byte pushes and fix warnings about multiple storage to storage copies.
Co-authored-by: Kamil Śliwak <kamil.sliwak@codepoets.it>
2022-06-15 13:53:05 +02:00
Daniel Kirchner d30b04674e Add resolveUnaryTuples helper. 2022-06-15 13:15:26 +02:00
Daniel Kirchner 53c4facf4e Fix compilation error. 2022-06-15 11:14:50 +02:00
Ryan 4b7ed2d47a Display human readable type name in conversion error message 2022-06-08 18:23:51 +05:30
chriseth dfa0bcf760 More strict override check for data locations. 2022-05-17 13:02:12 +02:00
chriseth 505fa7763f Fix checks for "using for ... global" for libraries. 2022-05-02 12:40:56 +02:00
Ryan 3a17274691 Improve error message for static array with size too large 2022-04-05 17:36:37 +02:00
chriseth 755e043a6d Use error message for unary operators. 2022-04-04 16:53:36 +05:30
nishant-sachdeva 4c6066bfad typeCheckAbiEncodeCallFunction should type check the arguments on functionPointerType->asExternallyCallableFunction instead of teh plain function type 2022-03-24 18:53:46 +05:30
chriseth 28593839d9 Add helper to see if a switch has a default case. 2022-03-15 14:29:54 +01:00
chriseth 9188519f11 Using for with global binding. 2022-03-14 17:39:14 +01:00
Daniel Kirchner 0f1a63c3fa Fix import directive visits in type checker and view pure checker. 2022-03-14 14:53:06 +01:00
hrkrshnn 672951ccc7 Extend using-for. 2022-03-14 12:33:44 +01:00