hash-table.h (hash_table::empty_slow): Don't assign size_t values to int variables.
authorBernd Edlinger <bernd.edlinger@hotmail.de>
Fri, 4 Oct 2019 16:22:28 +0000 (16:22 +0000)
committerBernd Edlinger <edlinger@gcc.gnu.org>
Fri, 4 Oct 2019 16:22:28 +0000 (16:22 +0000)
2019-10-04  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        * hash-table.h (hash_table::empty_slow): Don't assign
        size_t values to int variables.

From-SVN: r276592

gcc/ChangeLog
gcc/hash-table.h

index 2e60943a65c02c0b062bf352a8e76b8e619df3b4..5883b18acd7ee66056e0e6f20d4ecfc545281432 100644 (file)
@@ -1,3 +1,8 @@
+2019-10-04  Bernd Edlinger  <bernd.edlinger@hotmail.de>
+
+       * hash-table.h (hash_table::empty_slow): Don't assign
+       size_t values to int variables.
+
 2019-10-04  Bernd Edlinger  <bernd.edlinger@hotmail.de>
 
        * expr.c (convert_mode_scalar): Remove shadowing local var.
index 0e95f5b4042f2462bed1cc926f0bf8eef54f7658..ba5d64fb7a319446fc5c5f2b704a93fab299b0f9 100644 (file)
@@ -842,9 +842,8 @@ hash_table<Descriptor, Lazy, Allocator>::empty_slow ()
   size_t size = m_size;
   size_t nsize = size;
   value_type *entries = m_entries;
-  int i;
 
-  for (i = size - 1; i >= 0; i--)
+  for (size_t i = size - 1; i < size; i--)
     if (!is_empty (entries[i]) && !is_deleted (entries[i]))
       Descriptor::remove (entries[i]);
 
@@ -856,8 +855,9 @@ hash_table<Descriptor, Lazy, Allocator>::empty_slow ()
 
   if (nsize != size)
     {
-      int nindex = hash_table_higher_prime_index (nsize);
-      int nsize = prime_tab[nindex].prime;
+      unsigned int nindex = hash_table_higher_prime_index (nsize);
+
+      nsize = prime_tab[nindex].prime;
 
       if (!m_ggc)
        Allocator <value_type> ::data_free (m_entries);