Modules ======= *********************************** Delegate Call To Untrusted Contract *********************************** The `delegatecall module `_ detects `SWC-112 (DELEGATECALL to Untrusted Callee) `_. *********************************** Dependence on Predictable Variables *********************************** The `predictable variables module `_ detects `SWC-120 (Weak Randomness) `_ and `SWC-116 (Timestamp Dependence) `_. ****************** Deprecated Opcodes ****************** The `deprecated opcodes module `_ detects `SWC-111 (Use of Deprecated Functions) `_. *********** Ether Thief *********** The `Ether Thief module `_ detects `SWC-105 (Unprotected Ether Withdrawal) `_. ********** Exceptions ********** The `exceptions module `_ detects `SWC-110 (Assert Violation) `_. ************** External Calls ************** The `external calls module `_ warns about `SWC-117 (Reentrancy) `_ by detecting calls to external contracts. ******* Integer ******* The `integer module `_ detects `SWC-101 (Integer Overflow and Underflow) `_. ************** Multiple Sends ************** The `multiple sends module `_ detects `SWC-113 (Denial of Service with Failed Call) `_ by checking for multiple calls or sends in a single transaction. ******* Suicide ******* The `suicide module `_ detects `SWC-106 (Unprotected SELFDESTRUCT) `_. **************************** State Change External Calls **************************** The `state change external calls module `_ detects `SWC-107 (Reentrancy) `_ by detecting state change after calls to an external contract. **************** Unchecked Retval **************** The `unchecked retval module `_ detects `SWC-104 (Unchecked Call Return Value) `_. **************** Unchecked Retval **************** The `user supplied assertion module `_ detects `SWC-110 (Assert Violation) `_ for user-supplied assertions. User supplied assertions should be log messages of the form: :code:`emit AssertionFailed(string)`.