From b648b4af3d7dcadd6db295ce1bdf0bae94c36c5b Mon Sep 17 00:00:00 2001 From: Jim Meyering Date: Mon, 24 Oct 2005 09:43:01 +0000 Subject: Add a compile-time assertion that the slack_codes and ls_codes arrays have the same number of elements. This would have prevented the above-fixed bug. --- src/dircolors.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/dircolors.c b/src/dircolors.c index ace0d78a5..9534d266e 100644 --- a/src/dircolors.c +++ b/src/dircolors.c @@ -62,7 +62,6 @@ enum Shell_syntax variable. */ static struct obstack lsc_obstack; -/* FIXME: associate with ls_codes? */ static const char *const slack_codes[] = { "NORMAL", "NORM", "FILE", "DIR", "LNK", "LINK", @@ -78,6 +77,8 @@ static const char *const ls_codes[] = "so", "bd", "bd", "cd", "cd", "do", "ex", "lc", "lc", "rc", "rc", "ec", "ec" "su", "su", "sg", "sg", "st", "ow", "ow", "tw", "tw", NULL }; +#define array_cardinality(Array) (sizeof (Array) / sizeof *(Array)) +verify (array_cardinality (slack_codes) == array_cardinality (ls_codes)); static struct option const long_options[] = { -- cgit v1.2.3-70-g09d2