forge_lint/sol/high/
mod.rs1use crate::sol::SolLint;
2
3mod arbitrary_send_erc20;
4mod arbitrary_send_eth;
5mod controlled_delegatecall;
6mod encode_packed_collision;
7mod enumerable_loop_removal;
8mod function_selector_collision;
9mod incorrect_exp;
10mod incorrect_shift;
11mod protected_vars;
12mod reentrancy;
13mod rtlo;
14mod unchecked_calls;
15mod unprotected_initializer;
16
17register_lints!(
18 arbitrary_send_erc20:
19 (ArbitrarySendErc20, late, (ARBITRARY_SEND_ERC20, ARBITRARY_SEND_ERC20_PERMIT));
20 arbitrary_send_eth: (ArbitrarySendEth, late, (ARBITRARY_SEND_ETH));
21 controlled_delegatecall: (ControlledDelegatecall, late, (CONTROLLED_DELEGATECALL));
22 encode_packed_collision: (EncodedPackedCollision, late, (ENCODE_PACKED_COLLISION));
23 enumerable_loop_removal: (EnumerableLoopRemoval, late, (ENUMERABLE_LOOP_REMOVAL));
24 function_selector_collision: (FunctionSelectorCollision, late, (FUNCTION_SELECTOR_COLLISION));
25 incorrect_exp: (IncorrectExp, late, (INCORRECT_EXP));
26 incorrect_shift: (IncorrectShift, early, (INCORRECT_SHIFT));
27 protected_vars: (ProtectedVars, late, (PROTECTED_VARS));
28 reentrancy: (ReentrancyEth, late, (REENTRANCY_BALANCE, REENTRANCY_ETH, REENTRANCY_NO_ETH));
29 unchecked_calls:
30 (UncheckedCall, early, (UNCHECKED_CALL)),
31 (UncheckedTransferERC20, late, (ERC20_UNCHECKED_TRANSFER));
32 unprotected_initializer: (UnprotectedInitializer, late, (UNPROTECTED_INITIALIZER));
33 rtlo: (Rtlo, early, (RTLO));
34);