about summary refs log tree commit diff
path: root/conform
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2001-01-26 02:42:11 +0000
committerUlrich Drepper <drepper@redhat.com>2001-01-26 02:42:11 +0000
commit9d48fef0aa8882dfe604bc99b5718899879549ad (patch)
treec56066d0497ed1ea14be7c88ce14ff1b33243e3c /conform
parent8a6c22174eeb2f4f0a7ba52f5c6f2519131285ea (diff)
downloadglibc-9d48fef0aa8882dfe604bc99b5718899879549ad.tar.gz
glibc-9d48fef0aa8882dfe604bc99b5718899879549ad.tar.xz
glibc-9d48fef0aa8882dfe604bc99b5718899879549ad.zip
Update.
	* conform/conformtest.pl: Implement handling of recursive
	allow-header.

	* conform/data/locale.h-data: Add new struct lconv members.
Diffstat (limited to 'conform')
-rw-r--r--conform/conformtest.pl12
-rw-r--r--conform/data/locale.h-data8
2 files changed, 17 insertions, 3 deletions
diff --git a/conform/conformtest.pl b/conform/conformtest.pl
index 810d2632be..e2c3b06b62 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 724b39a778..84bd6abc09 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