Because grep now uses only symbols from intprops.h that have been
added relatively recently, the hard-coded (out of date) list of
symbols in the maint.mk rule caused the
sc_prohibit_intprops_without_use to trigger erroneously.

This updates the list in gnulib.
I'll update grep's gnulib submodule separately.

I may remove the hard-coded list altogether in this case, but there
are many similar tests, and not all are as straightforward.
From e9ae724b20657de728050bf07f1dd1aaa019599c Mon Sep 17 00:00:00 2001
From: Jim Meyering <[email protected]>
Date: Fri, 30 Dec 2016 09:42:06 +0100
Subject: [PATCH] maint.mk: update list of intprops.h symbol names

* top/maint.mk (_intprops_names): Regenerate the list of symbol names.
This avoids a false failure of the sc_prohibit_intprops_without_use
in grep.
---
 ChangeLog    | 7 +++++++
 top/maint.mk | 9 +++++----
 2 files changed, 12 insertions(+), 4 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 193a962..ce683a5 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2016-12-30  Jim Meyering  <[email protected]>
+
+       maint.mk: update list of intprops.h symbol names
+       * top/maint.mk (_intprops_names): Regenerate the list of symbol names.
+       This avoids a false failure of the sc_prohibit_intprops_without_use
+       in grep.
+
 2016-12-29  Eric Blake  <[email protected]>

        getopt: fix parallel test failure
diff --git a/top/maint.mk b/top/maint.mk
index c32f8b6..53a1e69 100644
--- a/top/maint.mk
+++ b/top/maint.mk
@@ -660,14 +660,15 @@ sc_prohibit_strings_without_use:
 # Get the list of symbol names with this:
 # perl -lne '/^# *define ([A-Z]\w+)\(/ and print $1' lib/intprops.h|fmt
 _intprops_names =                                                      \
-  TYPE_IS_INTEGER TYPE_SIGNED TYPE_MINIMUM TYPE_MAXIMUM                        
\
-  INT_BITS_STRLEN_BOUND INT_STRLEN_BOUND INT_BUFSIZE_BOUND             \
+  TYPE_IS_INTEGER TYPE_SIGNED EXPR_SIGNED TYPE_WIDTH TYPE_MINIMUM      \
+  TYPE_MAXIMUM INT_BITS_STRLEN_BOUND INT_STRLEN_BOUND INT_BUFSIZE_BOUND        
\
   INT_ADD_RANGE_OVERFLOW INT_SUBTRACT_RANGE_OVERFLOW                   \
   INT_NEGATE_RANGE_OVERFLOW INT_MULTIPLY_RANGE_OVERFLOW                        
\
   INT_DIVIDE_RANGE_OVERFLOW INT_REMAINDER_RANGE_OVERFLOW               \
   INT_LEFT_SHIFT_RANGE_OVERFLOW INT_ADD_OVERFLOW INT_SUBTRACT_OVERFLOW \
-  INT_NEGATE_OVERFLOW INT_MULTIPLY_OVERFLOW INT_DIVIDE_OVERFLOW                
\
-  INT_REMAINDER_OVERFLOW INT_LEFT_SHIFT_OVERFLOW
+  INT_NEGATE_OVERFLOW INT_NEGATE_OVERFLOW INT_MULTIPLY_OVERFLOW                
\
+  INT_DIVIDE_OVERFLOW INT_REMAINDER_OVERFLOW INT_LEFT_SHIFT_OVERFLOW   \
+  INT_ADD_WRAPV INT_SUBTRACT_WRAPV INT_MULTIPLY_WRAPV
 _intprops_syms_re = $(subst $(_sp),|,$(strip $(_intprops_names)))
 # Prohibit the inclusion of intprops.h without an actual use.
 sc_prohibit_intprops_without_use:
-- 
2.8.0-rc2

Reply via email to