From b973108e1ed4387a7fcc70dc9b43099ad8c97b75 Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Thu, 21 Nov 2002 05:12:27 +0000 Subject: [PATCH] (ARRAY_CARDINALITY): Do not bother to #undef. (ARGMATCH_CONSTRAINT): New macro. (ARGMATCH_ASSERT): Use it. --- lib/argmatch.h | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/lib/argmatch.h b/lib/argmatch.h index b7193009..eb91f51a 100644 --- a/lib/argmatch.h +++ b/lib/argmatch.h @@ -1,5 +1,5 @@ /* argmatch.h -- definitions and prototypes for argmatch.c - Copyright (C) 1990, 1998, 1999, 2001 Free Software Foundation, Inc. + Copyright (C) 1990, 1998, 1999, 2001, 2002 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -40,11 +40,12 @@ cost, since it will be statically evalauted to `assert (0)' or `assert (1)'. Unfortunately there is no -Wassert-0. */ -# undef ARRAY_CARDINALITY # define ARRAY_CARDINALITY(Array) (sizeof ((Array)) / sizeof (*(Array))) -# define ARGMATCH_ASSERT(Arglist, Vallist) \ - assert (ARRAY_CARDINALITY ((Arglist)) == ARRAY_CARDINALITY ((Vallist)) + 1) +# define ARGMATCH_CONSTRAINT(Arglist, Vallist) \ + (ARRAY_CARDINALITY ((Arglist)) == ARRAY_CARDINALITY ((Vallist)) + 1) +# define ARGMATCH_ASSERT(Arglist, Vallist) \ + assert (ARGMATCH_CONSTRAINT (Arglist, Vallist)) /* Return the index of the element of ARGLIST (NULL terminated) that matches with ARG. If VALLIST is not NULL, then use it to resolve -- 2.47.2