[mlir][Transforms] Dialect Conversion: Do not overwrite mapping
diff --git a/mlir/lib/Transforms/Utils/DialectConversion.cpp b/mlir/lib/Transforms/Utils/DialectConversion.cpp
index 7de26d7..4cf9b84 100644
--- a/mlir/lib/Transforms/Utils/DialectConversion.cpp
+++ b/mlir/lib/Transforms/Utils/DialectConversion.cpp
@@ -144,6 +144,8 @@
   template <typename OldVal, typename NewVal>
   std::enable_if_t<IsValueVector<OldVal>::value && IsValueVector<NewVal>::value>
   map(OldVal &&oldVal, NewVal &&newVal) {
+    assert(mapping.find(oldVal) == mapping.end() &&
+           "attempting to overwrite mapping");
     LLVM_DEBUG({
       ValueVector next(newVal);
       while (true) {