Skip to content

Commit 61295db

Browse files
authored
Revert "Detector: Uninitialized local variables" (#658)
1 parent a83bbd6 commit 61295db

11 files changed

+82
-1934
lines changed

aderyn_core/src/context/meta_workspace.rs

-4
Original file line numberDiff line numberDiff line change
@@ -188,10 +188,6 @@ impl WorkspaceContext {
188188
self.yul_identifiers_context.keys().collect()
189189
}
190190

191-
pub fn yul_assignments(&self) -> Vec<&YulAssignment> {
192-
self.yul_assignments_context.keys().collect()
193-
}
194-
195191
pub fn yul_literals(&self) -> Vec<&YulLiteral> {
196192
self.yul_literals_context.keys().collect()
197193
}

aderyn_core/src/context/workspace_context.rs

-1
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,6 @@ pub struct WorkspaceContext {
9494
pub(crate) yul_function_calls_context: HashMap<YulFunctionCall, NodeContext>,
9595
pub(crate) yul_identifiers_context: HashMap<YulIdentifier, NodeContext>,
9696
pub(crate) yul_literals_context: HashMap<YulLiteral, NodeContext>,
97-
pub(crate) yul_assignments_context: HashMap<YulAssignment, NodeContext>,
9897
}
9998

10099
impl WorkspaceContext {

aderyn_core/src/detect/detector.rs

-5
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,6 @@ pub fn get_all_issue_detectors() -> Vec<Box<dyn IssueDetector>> {
8080
Box::<TxOriginUsedForAuthDetector>::default(),
8181
Box::<MsgValueUsedInLoopDetector>::default(),
8282
Box::<ContractLocksEtherDetector>::default(),
83-
Box::<UninitializedLocalVariableDetector>::default(),
8483
Box::<ReturnBombDetector>::default(),
8584
]
8685
}
@@ -158,7 +157,6 @@ pub(crate) enum IssueDetectorNamePool {
158157
TxOriginUsedForAuth,
159158
MsgValueInLoop,
160159
ContractLocksEther,
161-
UninitializedLocalVariable,
162160
ReturnBomb,
163161
// NOTE: `Undecided` will be the default name (for new bots).
164162
// If it's accepted, a new variant will be added to this enum before normalizing it in aderyn
@@ -169,9 +167,6 @@ pub fn request_issue_detector_by_name(detector_name: &str) -> Option<Box<dyn Iss
169167
// Expects a valid detector_name
170168
let detector_name = IssueDetectorNamePool::from_str(detector_name).ok()?;
171169
match detector_name {
172-
IssueDetectorNamePool::UninitializedLocalVariable => {
173-
Some(Box::<UninitializedLocalVariableDetector>::default())
174-
}
175170
IssueDetectorNamePool::ReturnBomb => Some(Box::<ReturnBombDetector>::default()),
176171
IssueDetectorNamePool::UnusedStateVariable => {
177172
Some(Box::<UnusedStateVariablesDetector>::default())

aderyn_core/src/detect/low/mod.rs

-2
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@ pub(crate) mod return_bomb;
1818
pub(crate) mod reverts_and_requries_in_loops;
1919
pub(crate) mod solmate_safe_transfer_lib;
2020
pub(crate) mod unindexed_events;
21-
pub(crate) mod uninitialized_local_variables;
2221
pub(crate) mod unsafe_erc20_functions;
2322
pub(crate) mod unsafe_oz_erc721_mint;
2423
pub(crate) mod unspecific_solidity_pragma;
@@ -49,7 +48,6 @@ pub use return_bomb::ReturnBombDetector;
4948
pub use reverts_and_requries_in_loops::RevertsAndRequiresInLoopsDetector;
5049
pub use solmate_safe_transfer_lib::SolmateSafeTransferLibDetector;
5150
pub use unindexed_events::UnindexedEventsDetector;
52-
pub use uninitialized_local_variables::UninitializedLocalVariableDetector;
5351
pub use unsafe_erc20_functions::UnsafeERC20FunctionsDetector;
5452
pub use unsafe_oz_erc721_mint::UnsafeERC721MintDetector;
5553
pub use unspecific_solidity_pragma::UnspecificSolidityPragmaDetector;

aderyn_core/src/detect/low/uninitialized_local_variables.rs

-142
This file was deleted.

aderyn_core/src/visitor/workspace_visitor.rs

-13
Original file line numberDiff line numberDiff line change
@@ -103,19 +103,6 @@ impl ASTConstVisitor for WorkspaceContext {
103103
Ok(true)
104104
}
105105

106-
fn visit_yul_assignment(&mut self, node: &YulAssignment) -> Result<bool> {
107-
self.yul_assignments_context.insert(
108-
node.clone(),
109-
NodeContext {
110-
source_unit_id: self.last_source_unit_id,
111-
contract_definition_id: self.last_contract_definition_id,
112-
function_definition_id: self.last_function_definition_id,
113-
modifier_definition_id: self.last_modifier_definition_id,
114-
},
115-
);
116-
Ok(true)
117-
}
118-
119106
// Read the following like follows -
120107
generate_visit_methods_for_workspace_context_with_insert_node! {
121108
// Explanation for the 1st one : Create a method called `visit_assignment` that takes in `Assignment` as parameter and puts it inside `assignments_context`

0 commit comments

Comments
 (0)