From 9d48fef0aa8882dfe604bc99b5718899879549ad Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Fri, 26 Jan 2001 02:42:11 +0000 Subject: Update. * conform/conformtest.pl: Implement handling of recursive allow-header. * conform/data/locale.h-data: Add new struct lconv members. --- conform/conformtest.pl | 12 +++++++++--- conform/data/locale.h-data | 8 ++++++++ 2 files changed, 17 insertions(+), 3 deletions(-) (limited to 'conform') diff --git a/conform/conformtest.pl b/conform/conformtest.pl index 810d263..e2c3b06 100644 --- a/conform/conformtest.pl +++ b/conform/conformtest.pl @@ -268,6 +268,7 @@ while ($#headers >= 0) { my($missing); my(@allow) = (); my(@allowheader) = (); + my(%seenheader) = (); my($prepend) = $mustprepend{$h}; printf ("Testing <$h>\n"); @@ -730,7 +731,10 @@ while ($#headers >= 0) { "Macro \"$macro\" is not available.", $missing, 0); } elsif (/^allow-header *(.*)/) { my($pattern) = $1; - push @allowheader, $pattern; + if ($seenheader{$pattern} != 1) { + push @allowheader, $pattern; + $seenheader{$pattern} = 1; + } next control; } elsif (/^allow *(.*)/) { my($pattern) = $1; @@ -782,8 +786,10 @@ while ($#headers >= 0) { } elsif (/^macro *([^ ]*)/) { push @allow, $1; } elsif (/^allow-header *(.*)/) { - # XXX We should have a test for recursive dependencies here. - push @allowheader, $1; + if ($seenheader{$1} != 1) { + push @allowheader, $1; + $seenheader{$1} = 1; + } } elsif (/^allow *(.*)/) { push @allow, $1; } diff --git a/conform/data/locale.h-data b/conform/data/locale.h-data index 724b39a..84bd6ab 100644 --- a/conform/data/locale.h-data +++ b/conform/data/locale.h-data @@ -17,6 +17,14 @@ element {struct lconv} char p_cs_precedes element {struct lconv} char p_sep_by_space element {struct lconv} char p_sign_posn element {struct lconv} {char*} thousands_sep +#ifdef XOPEN2K +element {struct lconv} char int_n_cs_precedes +element {struct lconv} char int_n_sep_by_space +element {struct lconv} char int_n_sign_posn +element {struct lconv} char int_p_cs_precedes +element {struct lconv} char int_p_sep_by_space +element {struct lconv} char int_p_sign_posn +#endif constant NULL -- cgit v1.1