vyperlang / vyper

Pythonic Smart Contract Language for the EVM
https://vyperlang.org
Other
4.84k stars 789 forks source link

fix[lang]: recursion in `uses` analysis for nonreentrant functions #3971

Closed charles-cooper closed 4 months ago

charles-cooper commented 4 months ago

What I did

How I did it

How to verify it

Commit message

this commit fixes `uses` analysis for nonreentrant functions, which are
called recursively.

a partial fix for this was applied in cb940684a9137, but it missed the
case where a nonreentrant function is deep in the call tree.

Description for the changelog

Cute Animal Picture

![Put a link to a cute animal picture inside the parenthesis-->]()

codecov-commenter commented 4 months ago

Codecov Report

All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 89.74%. Comparing base (4a0305a) to head (cffa731).

:exclamation: Current head cffa731 differs from pull request most recent head c41ec42. Consider uploading reports for the commit c41ec42 to get more accurate results

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.

Additional details and impacted files ```diff @@ Coverage Diff @@ ## master #3971 +/- ## ========================================== - Coverage 90.96% 89.74% -1.23% ========================================== Files 105 103 -2 Lines 15241 14908 -333 Branches 3357 3305 -52 ========================================== - Hits 13864 13379 -485 - Misses 943 1069 +126 - Partials 434 460 +26 ```

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

Leminkay commented 4 months ago

Lgtm!