You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Python Version (output of python --version: 3.8.10
What's your issue about?
we perform a calldatasize >= 4 check (cf. #1603) even when no selectors have trailing 0s. when no selectors have trailing 0s, there is no risk of ambiguity with missing calldata bytes and so the check is not necessary
we perform a calldatasize == 4 check when there are no function arguments (cf. #2911). however when there are no trailing 0s, it can be omitted because the selector table already checks exact equality of the selector.
EDIT: we no longer perform the calldatasize == 4 check, rather we only ever perform checks of the first type (check calldatasize >= 4), see #3090.
How can it be fixed?
Fill this in if you know how to fix it.
The text was updated successfully, but these errors were encountered:
Addresses the first half of inefficient selector table checks (issue vyperlang#3037) by only running a check for calldatasize >= 4 if a zero selector function is present.
(wip: currently checks on all selectors which contain a 0)
…g#3037)
Only performs a calldatasize == 4 check when there are trailing 0s in selector
wip: figure out whether to check hex, int, or bytecode of selector
Version Information
vyper --version
): v0.3.5python --version
: 3.8.10What's your issue about?
we perform a
calldatasize >= 4
check (cf. #1603) even when no selectors have trailing 0s. when no selectors have trailing 0s, there is no risk of ambiguity with missing calldata bytes and so the check is not necessarywe perform acalldatasize == 4
check when there are no function arguments (cf. #2911). however when there are no trailing 0s, it can be omitted because the selector table already checks exact equality of the selector.EDIT: we no longer perform the calldatasize == 4 check, rather we only ever perform checks of the first type (check calldatasize >= 4), see #3090.
How can it be fixed?
Fill this in if you know how to fix it.
The text was updated successfully, but these errors were encountered: