Skip to content
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

Feature related Tech debt #682

Closed
5 of 6 tasks
TilakMaddy opened this issue Aug 19, 2024 · 1 comment
Closed
5 of 6 tasks

Feature related Tech debt #682

TilakMaddy opened this issue Aug 19, 2024 · 1 comment
Assignees

Comments

@TilakMaddy
Copy link
Contributor

TilakMaddy commented Aug 19, 2024

Feature related technical debt in the codebases
(We'll open another one for refactoring related stuff)

Some points to remember

These were not taken good care of while writing the initial detectors.

  1. revert() and revert Error() are different. The former is a function call while the latter is a revert statement. We've skipped cases in many places.
  2. type strings can be address or address payable. We should handle both cases where necessary without skipping them.
  3. selfdestruct is fine, but we also have to handle suicide
  4. It's not enough to check .is_constructor, because for newer versions of solc, even for constructors that returns false, so you should check kind().
  5. Use callgraphs

Detectors

Dear open source community, if you are looking at this feel free to pick one up and send PRs :)

@TilakMaddy TilakMaddy self-assigned this Aug 19, 2024
@TilakMaddy
Copy link
Contributor Author

Regarding zero address check I think it's too subjective. Maybe something like, if there is an address parameter, as long as there is some type of binary check on the address it should be okay. What do you think @alexroan ?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant