Non ERC20Votes token voting with a Governor?

If you are trying to set up a Governor that has the expected voting functionality around the token you give it, could any existing ERC20 token be used?

For example, in the OZ contracts the constructor only seems to accept a token that implements the IVotes (formerly ERC20Votes) interface. As I understand it, this means that only certain tokens are going to be able to work with governance/voting systems.

If you wanted to make a Governor around existing token that do not extend regular ERC20 functionality with ERC20Votes, would this be possible? I ask this as both in the OZ specific case (so utilizing OZ's Governor and also as a broader question of could a Governor be designed such that it accepts and functions with regular, non ERC20Votes tokens?

Nevermind I think this tutorial on Wrapped ERC20 has this covered: ERC20 Wrapper tutorial, feel free to delete this thread!

2 Likes