-
-
Notifications
You must be signed in to change notification settings - Fork 806
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
"send" as a reserved keyword collides with the ERC777 specification #1068
Comments
Thanks for raising that up. Personally, I think ERC-777 should change that in order to keep things more clear, as Any thought from others here? |
@ben-kaufman a quick scan of 4byte shows the following submitted signatures with the name send:
There might be other databases out there that could provide details of the prevalence of these methods, but it's far from just a problem with ERC-777 and blocking keywords from being method names is going to be a general compatibility issue. |
@mcdee Yeah I agree it might be a problem with compatibility. Maybe as you said we can remove it from the reserve as the |
Removing But whitelisting |
Version Information
What's your issue about?
While implementing the ethereum/EIPs#777 specification as a Vyper contract I was unable to due to the collision of the specification's
send
method with the reserved keywordsend
in Vyper used for sending ether. Trying to declare asend
method on a contract throws the following exception:How can it be fixed?
I see three options:
send
keyword to something else.send
method to something else.send
that is different from the built-in functionsend
. These two would be disambiguated by the way in which they are invoked. The built-in function could retain the naked invocationsend <address, amount>
while a method declared on the contract would be invoked withself.send()
. From the external point of view only the contract method would be accessible.Cute Animal Picture
The text was updated successfully, but these errors were encountered: