protocol/docs/additional/exceptional_erc20s.rst

20 lines
666 B
ReStructuredText

###############################
Exceptional ERC20s
###############################
Some ERC20s have unique behavior that may require extra handling. We document these here as they are discovered.
Assert vs Require
-----------------
These ERC20's use `assert` instead of `require`, which means that if the token reverts then (nearly) all
of the gas from your transaction will be consumed. Specifically, you are left with 1/64 of the gas limit.
Be mindful of this when implementing fallback logic; for example, if a call to `transferFrom` reverts then
note you will only have 1/64 of the gas limit to handle the exception.
Known tokens:
- KNC
- LINK
- sUSD
- USDT