From: Kushal Pal <kushalpal...@gmail.com>

gcc/rust/ChangeLog:

        * checks/errors/borrowck/rust-bir-dump.cc (Dump::go): Use strong
        type instead of size_t.
        (Dump::visit_place): Likewise.
        (Dump::visit_scope): Likewise.
        * checks/errors/borrowck/rust-bir-dump.h (class Dump): Use
        IndeVec for place_map.

Signed-off-by: Kushal Pal <kushalpal...@gmail.com>
---
 gcc/rust/checks/errors/borrowck/rust-bir-dump.cc | 10 +++++-----
 gcc/rust/checks/errors/borrowck/rust-bir-dump.h  |  2 +-
 2 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/gcc/rust/checks/errors/borrowck/rust-bir-dump.cc 
b/gcc/rust/checks/errors/borrowck/rust-bir-dump.cc
index c9e01545c6a..3864b81a4d9 100644
--- a/gcc/rust/checks/errors/borrowck/rust-bir-dump.cc
+++ b/gcc/rust/checks/errors/borrowck/rust-bir-dump.cc
@@ -121,9 +121,9 @@ Dump::go (bool enable_simplify_cfg)
     {
       bb_fold_map[i] = i;
     }
-  for (size_t i = 0; i < place_map.size (); ++i)
+  for (PlaceId i = INVALID_PLACE; i.value < place_map.size (); ++i.value)
     {
-      place_map[i] = {i};
+      place_map[i] = i;
     }
 
   if (enable_simplify_cfg)
@@ -133,7 +133,7 @@ Dump::go (bool enable_simplify_cfg)
 
   stream << "fn " << name << "(";
   print_comma_separated (stream, func.arguments, [this] (PlaceId place_id) {
-    stream << "_" << place_map[place_id.value].value << ": "
+    stream << "_" << place_map[place_id].value << ": "
           << get_tyty_name (func.place_db[place_id].tyty);
   });
   stream << ") -> " << get_tyty_name (func.place_db[RETURN_VALUE_PLACE].tyty);
@@ -245,7 +245,7 @@ Dump::visit_place (PlaceId place_id)
     {
     case Place::TEMPORARY:
     case Place::VARIABLE:
-      stream << "_" << place_map[place_id.value].value;
+      stream << "_" << place_map[place_id].value;
       break;
     case Place::DEREF:
       stream << "(";
@@ -382,7 +382,7 @@ Dump::visit_scope (ScopeId id, size_t depth)
   for (auto &local : scope.locals)
     {
       indent (depth + 1) << "let _";
-      stream << place_map[local.value].value << ": "
+      stream << place_map[local].value << ": "
             << get_tyty_name (func.place_db[local].tyty);
       stream << ";\t";
 
diff --git a/gcc/rust/checks/errors/borrowck/rust-bir-dump.h 
b/gcc/rust/checks/errors/borrowck/rust-bir-dump.h
index bd6cbb1ee50..1bf3f2d6593 100644
--- a/gcc/rust/checks/errors/borrowck/rust-bir-dump.h
+++ b/gcc/rust/checks/errors/borrowck/rust-bir-dump.h
@@ -35,7 +35,7 @@ class Dump : public Visitor
   const std::string &name;
 
   IndexVec<BasicBlockId, BasicBlockId> bb_fold_map;
-  std::vector<PlaceId> place_map;
+  IndexVec<PlaceId, PlaceId> place_map;
 
   PlaceId statement_place = INVALID_PLACE;
   BasicBlockId statement_bb = INVALID_BB;
-- 
2.45.2

Reply via email to