emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

master 919e1b81a4a 11/16: Pacify GCC 13 -Wnull-dereference in itree.c


From: Paul Eggert
Subject: master 919e1b81a4a 11/16: Pacify GCC 13 -Wnull-dereference in itree.c
Date: Sun, 14 May 2023 22:28:25 -0400 (EDT)

branch: master
commit 919e1b81a4a8ff95c36a0639fa5a5c86f8759f2e
Author: Paul Eggert <eggert@cs.ucla.edu>
Commit: Paul Eggert <eggert@cs.ucla.edu>

    Pacify GCC 13 -Wnull-dereference in itree.c
    
    * src/itree.c (itree_remove_fix): Simplify code and remove a
    couple of eassume calls.  This works around GCC bug 109586.
    https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109856
---
 src/itree.c | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/src/itree.c b/src/itree.c
index bd3e62a374a..ecf7d67422a 100644
--- a/src/itree.c
+++ b/src/itree.c
@@ -817,14 +817,13 @@ itree_remove_fix (struct itree_tree *tree,
        {
          struct itree_node *other = parent->right;
 
-         if (null_safe_is_red (other)) /* case 1.a */
+         if (other->red) /* case 1.a */
            {
              other->red = false;
              parent->red = true;
              itree_rotate_left (tree, parent);
              other = parent->right;
            }
-         eassume (other != NULL);
 
          if (null_safe_is_black (other->left) /* 2.a */
              && null_safe_is_black (other->right))
@@ -855,14 +854,13 @@ itree_remove_fix (struct itree_tree *tree,
        {
          struct itree_node *other = parent->left;
 
-         if (null_safe_is_red (other)) /* 1.b */
+         if (other->red) /* 1.b */
            {
              other->red = false;
              parent->red = true;
              itree_rotate_right (tree, parent);
              other = parent->left;
            }
-         eassume (other != NULL);
 
          if (null_safe_is_black (other->right) /* 2.b */
              && null_safe_is_black (other->left))



reply via email to

[Prev in Thread] Current Thread [Next in Thread]