The function 'hash_delete' is deprecated since 2021 and overdue for removal.

Only 2 packages still use this function:
  - GNU tar, but only in comments. Notified per mail.
  - fuse-overlayfs:
    Notified through <https://github.com/containers/fuse-overlayfs/issues/442>.

With that, we can remove the function.


2025-04-29  Bruno Haible  <br...@clisp.org>

        hash: Remove deprecated function 'hash_delete'.
        * lib/hash.h (hash_delete): Remove declaration.
        * lib/hash.c (hash_delete): Remove function.

diff --git a/lib/hash.c b/lib/hash.c
index e06a2354fa..556c82d5b8 100644
--- a/lib/hash.c
+++ b/lib/hash.c
@@ -1085,12 +1085,6 @@ hash_remove (Hash_table *table, const void *entry)
   return data;
 }
 
-void *
-hash_delete (Hash_table *table, const void *entry)
-{
-  return hash_remove (table, entry);
-}
-
 /* Testing.  */
 
 #if TESTING
diff --git a/lib/hash.h b/lib/hash.h
index 4dfaf56d06..3cff33244f 100644
--- a/lib/hash.h
+++ b/lib/hash.h
@@ -276,11 +276,6 @@ extern int hash_insert_if_absent (Hash_table *table, const 
void *entry,
    table, don't modify the table and return NULL.  */
 extern void *hash_remove (Hash_table *table, const void *entry);
 
-/* Same as hash_remove.  This interface is deprecated.
-   FIXME: Remove in 2022.  */
-_GL_ATTRIBUTE_DEPRECATED
-extern void *hash_delete (Hash_table *table, const void *entry);
-
 # ifdef __cplusplus
 }
 # endif




Reply via email to