vyperlang / vyper

Pythonic Smart Contract Language for the EVM
https://vyperlang.org
Other
4.81k stars 788 forks source link

Panic on expected interface method implemented as internal. #4169

Open AlbertoCentonze opened 4 days ago

AlbertoCentonze commented 4 days ago

Version Information

What's your issue about?

Given an interface file foo.vyi

@external
def bar():
    ...

if the interface is imported and implemented in a module:

import foo

implements: foo

# !!!! here we don't add the external modifier
def bar():
    pass

Not using the external modifier makes the compiler panic.

charles-cooper commented 4 days ago

we should really not require any visibility modifier in .vyi files (everything is external)