From 730b2ec9aa756b63b17c7911e6ec199fb545d0df Mon Sep 17 00:00:00 2001
From: Vincent Lafeychine <vincent.lafeychine@proton.me>
Date: Thu, 25 Apr 2024 23:31:51 +0200
Subject: [PATCH] rust: Fix unused_variables

---
 rr_frontend/.cargo/config.toml                |  2 +-
 .../src/environment/dump_borrowck_info.rs     | 28 ++++---------------
 .../src/environment/polonius_info.rs          | 10 ++-----
 rr_frontend/translation/src/function_body.rs  |  2 +-
 4 files changed, 11 insertions(+), 31 deletions(-)

diff --git a/rr_frontend/.cargo/config.toml b/rr_frontend/.cargo/config.toml
index a119b1c3..3a20d754 100644
--- a/rr_frontend/.cargo/config.toml
+++ b/rr_frontend/.cargo/config.toml
@@ -18,7 +18,7 @@ rustflags = [
     "-Adeprecated",
     "-Dunused_imports",
     "-Aunused_mut",
-    "-Aunused_variables",
+    "-Dunused_variables",
 
     # clippy::complexity
     "-Aclippy::useless_format",
diff --git a/rr_frontend/translation/src/environment/dump_borrowck_info.rs b/rr_frontend/translation/src/environment/dump_borrowck_info.rs
index 7380af92..f0b6cb0f 100644
--- a/rr_frontend/translation/src/environment/dump_borrowck_info.rs
+++ b/rr_frontend/translation/src/environment/dump_borrowck_info.rs
@@ -220,7 +220,7 @@ impl<'a, 'tcx: 'a> InfoPrinter<'a, 'tcx> {
         //let loop_invariant_block = HashMap::new();
 
         // print polonius.dot
-        super::polonius_info::graphviz(self.env, &def_path, def_id, info).unwrap();
+        super::polonius_info::graphviz(&def_path, info).unwrap();
 
         // print graph.dot
         let mir_info_printer = MirInfoPrinter {
@@ -794,29 +794,16 @@ impl<'a, 'tcx> MirInfoPrinter<'a, 'tcx> {
             TerminatorKind::UnwindTerminate(_) => {
                 write_edge!(self, bb, str terminate);
             },
-            TerminatorKind::Drop {
-                ref target, unwind, ..
-            } => {
+            TerminatorKind::Drop { ref target, .. } => {
                 write_edge!(self, bb, target);
-                //if let Some(target) = unwind {
-                //write_edge!(self, bb, unwind target);
-                //}
             },
-            TerminatorKind::Call {
-                ref target, unwind, ..
-            } => {
+            TerminatorKind::Call { ref target, .. } => {
                 if let Some(target) = *target {
                     write_edge!(self, bb, target);
                 }
-                //if let Some(target) = unwind {
-                //write_edge!(self, bb, unwind target);
-                //}
             },
-            TerminatorKind::Assert { target, unwind, .. } => {
+            TerminatorKind::Assert { target, .. } => {
                 write_edge!(self, bb, target);
-                //if let Some(target) = unwind {
-                //write_edge!(self, bb, unwind target);
-                //}
             },
             TerminatorKind::Yield { .. } => unimplemented!(),
             TerminatorKind::GeneratorDrop => unimplemented!(),
@@ -827,10 +814,7 @@ impl<'a, 'tcx> MirInfoPrinter<'a, 'tcx> {
                 write_edge!(self, bb, real_target);
                 write_edge!(self, bb, imaginary_target);
             },
-            TerminatorKind::FalseUnwind {
-                real_target,
-                unwind,
-            } => {
+            TerminatorKind::FalseUnwind { real_target, .. } => {
                 write_edge!(self, bb, real_target);
                 //if let Some(target) = unwind {
                 //write_edge!(self, bb, imaginary target);
@@ -887,7 +871,7 @@ impl<'a, 'tcx> MirInfoPrinter<'a, 'tcx> {
     fn print_subset_at_start(&self, location: mir::Location) -> Result<(), io::Error> {
         let point = self.get_point(location, facts::PointType::Start);
         let subset_map = &self.polonius_info.borrowck_out_facts.subset;
-        if let Some(subset) = subset_map.get(&point).as_ref() {
+        if let Some(_subset) = subset_map.get(&point).as_ref() {
             return Ok(());
             /*
                 write_graph!(self, "subgraph cluster_{:?} {{", point);
diff --git a/rr_frontend/translation/src/environment/polonius_info.rs b/rr_frontend/translation/src/environment/polonius_info.rs
index 389c8404..c341d383 100644
--- a/rr_frontend/translation/src/environment/polonius_info.rs
+++ b/rr_frontend/translation/src/environment/polonius_info.rs
@@ -12,7 +12,6 @@ use rustc_data_structures::fx::FxHashMap;
 use rustc_index::Idx;
 use rustc_middle::ty::fold::TypeFolder;
 use rustc_middle::{mir, ty};
-use rustc_span::def_id::DefId;
 use rustc_span::Span;
 use {datafrog, rrconfig as config};
 
@@ -166,11 +165,9 @@ pub enum PoloniusInfoError {
     LoanInUnsupportedStatement(String, mir::Location),
 }
 
-pub fn graphviz<'tcx>(
-    env: &Environment<'tcx>,
+pub fn graphviz(
     def_path: &rustc_hir::definitions::DefPath,
-    def_id: DefId,
-    info: &PoloniusInfo<'_, 'tcx>,
+    info: &PoloniusInfo<'_, '_>,
 ) -> std::io::Result<()> {
     macro_rules! to_html {
         ( $o:expr ) => {{
@@ -483,8 +480,7 @@ impl<'a, 'tcx: 'a> PoloniusInfo<'a, 'tcx> {
         let output = Output::compute(&all_facts, Algorithm::Naive, true);
         let all_facts_without_back_edges =
             remove_back_edges(*all_facts.clone(), &interner, &loop_info.back_edges);
-        let output_without_back_edges =
-            Output::compute(&all_facts_without_back_edges, Algorithm::Naive, true);
+        Output::compute(&all_facts_without_back_edges, Algorithm::Naive, true);
 
         let loan_position: HashMap<_, _> = all_facts
             .loan_issued_at
diff --git a/rr_frontend/translation/src/function_body.rs b/rr_frontend/translation/src/function_body.rs
index 4a33583a..767f6e67 100644
--- a/rr_frontend/translation/src/function_body.rs
+++ b/rr_frontend/translation/src/function_body.rs
@@ -3020,7 +3020,7 @@ impl<'a, 'def: 'a, 'tcx: 'def> BodyTranslator<'a, 'def, 'tcx> {
                 })
             },
 
-            Rvalue::NullaryOp(op, _ty) => {
+            Rvalue::NullaryOp(_, _) => {
                 // TODO: SizeOf
                 Err(TranslationError::UnsupportedFeature {
                     description: "nullary ops (AlignOf, Sizeof) are not supported currently".to_string(),
-- 
GitLab