The getDepositChange function in the smart contract uses implicit integer type declarations (int and uint) instead of explicit types (int256 and uint256). This inconsistency can lead to potential arithmetic errors, especially when interacting with other parts of the contract or external contracts that expect specific integer sizes.
The vulnerability arises from the use of implicit integer types in the getDepositChange function. The function uses int and uint without specifying their sizes, which can lead to inconsistencies and potential errors.
Implicit type declarations can lead to overflow or underflow issues, especially if the contract logic assumes a specific integer size.
When interacting with other contracts or systems that expect specific integer sizes, the use of implicit types can lead to unexpected behavior or errors.
Manual review
Update the getDepositChange function to use explicit integer types.
The contest is live. Earn rewards by submitting a finding.
This is your time to appeal against judgements on your submissions.
Appeals are being carefully reviewed by our judges.