crytic / amarna

Amarna is a static-analyzer and linter for the Cairo programming language.
https://blog.trailofbits.com/2022/04/20/amarna-static-analysis-for-cairo-programs/
GNU Affero General Public License v3.0
149 stars 7 forks source link

Detect potentially revoked references #43

Closed coolhill closed 1 year ago

coolhill commented 2 years ago

Warn if there is a label or a call instruction between the definition of a reference that depends on ap and its usage. This is ambiguous as discussed in the docs, since ap might change in an unknown way. We could potentially add a detector and flag it as undefined behavior.