changeset 17761:af887cfa71dd

avltree-list: avoid compiler warnings * lib/gl_anytree_list2.h: Add _GL_ATTRIBUTE_PURE to avoid -Werror=suggest-attribute=pure. * lib/gl_array_list.c: Likewise. * lib/gl_avltree_list.c (gl_avltree_list_check_invariants): Add extern declaration to avoid -Werror=missing-prototypes. This is not added to a header as only exported for tests. Add (void) to the check_invariants() call to indicate we're discarding the result in this context which avoids -Werror=unused-value. Note we don't use ignore_value here to avoid a dependency as we know we'll not be adding __attribute__((warn_unused_result)) to check_invariants(). Add _GL_ATTRIBUTE_CONST to avoid -Werror=suggest-attribute=const.
author Dylan Cali <calid1984@gmail.com>
date Tue, 16 Sep 2014 16:42:36 +0100
parents 628a5850eee1
children 8728cf80b7d8
files ChangeLog lib/gl_anytree_list2.h lib/gl_array_list.c lib/gl_avltree_list.c
diffstat 4 files changed, 29 insertions(+), 11 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,18 @@
+2014-09-16  Dylan Cali  <calid1984@gmail.com>
+
+	avltree-list: avoid compiler warnings (trivial)
+	* lib/gl_anytree_list2.h: Add _GL_ATTRIBUTE_PURE to avoid
+	-Werror=suggest-attribute=pure.
+	* lib/gl_array_list.c: Likewise.
+	* lib/gl_avltree_list.c (gl_avltree_list_check_invariants): Add extern
+	declaration to avoid -Werror=missing-prototypes.  This is not added
+	to a header as only exported for tests.  Add (void) to the
+	check_invariants() call to indicate we're discarding the result
+	in this context which avoids -Werror=unused-value.  Note we don't
+	use ignore_value here to avoid a dependency as we know we'll not
+	be adding __attribute__((warn_unused_result)) to check_invariants().
+	Add _GL_ATTRIBUTE_CONST to avoid -Werror=suggest-attribute=const.
+
 2014-09-15  Paul Eggert  <eggert@cs.ucla.edu>
 
 	qsort_r: new module, for GNU-style qsort_r
--- a/lib/gl_anytree_list2.h
+++ b/lib/gl_anytree_list2.h
@@ -100,7 +100,7 @@
   return 0;
 }
 
-static gl_list_node_t
+static gl_list_node_t _GL_ATTRIBUTE_PURE
 gl_tree_next_node (gl_list_t list, gl_list_node_t node)
 {
   if (node->right != NULL)
@@ -118,7 +118,7 @@
   return node;
 }
 
-static gl_list_node_t
+static gl_list_node_t _GL_ATTRIBUTE_PURE
 gl_tree_previous_node (gl_list_t list, gl_list_node_t node)
 {
   if (node->left != NULL)
@@ -137,7 +137,7 @@
 }
 
 /* Return the node at the given position < gl_tree_size (list).  */
-static gl_list_node_t
+static gl_list_node_t _GL_ATTRIBUTE_PURE
 node_at (gl_list_node_t root, size_t position)
 {
   /* Here we know that root != NULL.  */
@@ -162,7 +162,7 @@
   return node;
 }
 
-static const void *
+static const void * _GL_ATTRIBUTE_PURE
 gl_tree_get_at (gl_list_t list, size_t position)
 {
   gl_list_node_t node = list->root;
--- a/lib/gl_array_list.c
+++ b/lib/gl_array_list.c
@@ -120,7 +120,7 @@
   return list->count;
 }
 
-static const void *
+static const void * _GL_ATTRIBUTE_PURE
 gl_array_node_value (gl_list_t list, gl_list_node_t node)
 {
   uintptr_t index = NODE_TO_INDEX (node);
@@ -142,7 +142,7 @@
   return 0;
 }
 
-static gl_list_node_t
+static gl_list_node_t _GL_ATTRIBUTE_PURE
 gl_array_next_node (gl_list_t list, gl_list_node_t node)
 {
   uintptr_t index = NODE_TO_INDEX (node);
@@ -156,7 +156,7 @@
     return NULL;
 }
 
-static gl_list_node_t
+static gl_list_node_t _GL_ATTRIBUTE_PURE
 gl_array_previous_node (gl_list_t list, gl_list_node_t node)
 {
   uintptr_t index = NODE_TO_INDEX (node);
@@ -169,7 +169,7 @@
     return NULL;
 }
 
-static const void *
+static const void * _GL_ATTRIBUTE_PURE
 gl_array_get_at (gl_list_t list, size_t position)
 {
   size_t count = list->count;
--- a/lib/gl_avltree_list.c
+++ b/lib/gl_avltree_list.c
@@ -37,7 +37,9 @@
 #include "gl_anytree_list2.h"
 
 /* For debugging.  */
-static unsigned int
+extern void gl_avltree_list_check_invariants (gl_list_t list);
+
+static unsigned int _GL_ATTRIBUTE_PURE
 check_invariants (gl_list_node_t node, gl_list_node_t parent)
 {
   unsigned int left_height =
@@ -59,11 +61,12 @@
 
   return 1 + (left_height > right_height ? left_height : right_height);
 }
-void
+
+void _GL_ATTRIBUTE_CONST
 gl_avltree_list_check_invariants (gl_list_t list)
 {
   if (list->root != NULL)
-    check_invariants (list->root, NULL);
+    (void) check_invariants (list->root, NULL);
 }
 
 const struct gl_list_implementation gl_avltree_list_implementation =