about summary refs log tree commit diff
path: root/src/librustc_mir/transform
diff options
context:
space:
mode:
authorPatrick Walton <pcwalton@mimiga.net>2016-09-15 18:17:58 -0700
committerPatrick Walton <pcwalton@mimiga.net>2016-09-19 11:17:12 -0700
commit2e6a91812c64a507e3d2ab727824ff9cda8449fc (patch)
treec3c1f8fd9d8b7e981d5412e2d4105184d3aec319 /src/librustc_mir/transform
parent5f6f8384484382aeec5e1f647e18d37992966425 (diff)
downloadrust-2e6a91812c64a507e3d2ab727824ff9cda8449fc.tar.gz
rust-2e6a91812c64a507e3d2ab727824ff9cda8449fc.zip
librustc: Add a new nop statement to the MIR.
This is useful when passes want to remove statements without affecting
`Location`s.
Diffstat (limited to 'src/librustc_mir/transform')
-rw-r--r--src/librustc_mir/transform/qualify_consts.rs3
-rw-r--r--src/librustc_mir/transform/type_check.rs1
2 files changed, 3 insertions, 1 deletions
diff --git a/src/librustc_mir/transform/qualify_consts.rs b/src/librustc_mir/transform/qualify_consts.rs
index a3f8f7a63ee..9f162aabe0c 100644
--- a/src/librustc_mir/transform/qualify_consts.rs
+++ b/src/librustc_mir/transform/qualify_consts.rs
@@ -910,7 +910,8 @@ impl<'a, 'tcx> Visitor<'tcx> for Qualifier<'a, 'tcx, 'tcx> {
                 }
                 StatementKind::SetDiscriminant { .. } |
                 StatementKind::StorageLive(_) |
-                StatementKind::StorageDead(_) => {}
+                StatementKind::StorageDead(_) |
+                StatementKind::Nop => {}
             }
         });
     }
diff --git a/src/librustc_mir/transform/type_check.rs b/src/librustc_mir/transform/type_check.rs
index 7fda658185e..412759cd5b2 100644
--- a/src/librustc_mir/transform/type_check.rs
+++ b/src/librustc_mir/transform/type_check.rs
@@ -385,6 +385,7 @@ impl<'a, 'gcx, 'tcx> TypeChecker<'a, 'gcx, 'tcx> {
                     }
                 }
             }
+            StatementKind::Nop => {}
         }
     }