Update.
authorUlrich Drepper <drepper@redhat.com>
Fri, 26 Jan 2001 02:42:11 +0000 (02:42 +0000)
committerUlrich Drepper <drepper@redhat.com>
Fri, 26 Jan 2001 02:42:11 +0000 (02:42 +0000)
* conform/conformtest.pl: Implement handling of recursive
allow-header.

* conform/data/locale.h-data: Add new struct lconv members.

ChangeLog
conform/conformtest.pl
conform/data/locale.h-data

index 1bc1652..f1d8d0c 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,10 @@
 2001-01-25  Ulrich Drepper  <drepper@redhat.com>
 
+       * conform/conformtest.pl: Implement handling of recursive
+       allow-header.
+
+       * conform/data/locale.h-data: Add new struct lconv members.
+
        * posix/wordexp.h: Correct definition of wordexp_t.
        * posix/wordexp.c: Moved to ...
        * sysdeps/generic/wordexp.c: ...here.  New file.
index 810d263..e2c3b06 100644 (file)
@@ -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;
       }
index 724b39a..84bd6ab 100644 (file)
@@ -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