:warning: The Truffle Suite is being sunset. For information on ongoing support, migration options and FAQs, visit the Consensys blog. Thank you for all the support over the years.
The point of this is that, if there's an overloaded function with a bool overload and a string overload, then truffle call Contract f true ought to hit the bool overload, not the string overload. Of course this only makes sense if we're restricted to string input, which is more or less what the strictBooleans flag means.
I added tests also. You could also test it manually by making a function with a string overload and a bool overload and try calling it with truffle call.
Arguably this is a breaking change (to codec and encoder), but I'd consider it a bug fix. Overload resolution is never guaranteed anyway! :)
Addresses #6028.
The point of this is that, if there's an overloaded function with a bool overload and a string overload, then
truffle call Contract f true
ought to hit the bool overload, not the string overload. Of course this only makes sense if we're restricted to string input, which is more or less what thestrictBooleans
flag means.I added tests also. You could also test it manually by making a function with a
string
overload and abool
overload and try calling it withtruffle call
.Arguably this is a breaking change (to codec and encoder), but I'd consider it a bug fix. Overload resolution is never guaranteed anyway! :)