diff options
-rw-r--r-- | ChangeLog | 9 | ||||
-rw-r--r-- | conform/conformtest.pl | 53 | ||||
-rw-r--r-- | conform/data/netinet/in.h-data | 2 | ||||
-rw-r--r-- | conform/data/sys/socket.h-data | 1 | ||||
-rw-r--r-- | io/fts.c | 4 |
5 files changed, 51 insertions, 18 deletions
@@ -1,3 +1,12 @@ +2001-08-18 Ulrich Drepper <drepper@redhat.com> + + * conform/conformtest.pl: Change namespace test to take #undef + lines into account. + + * conform/data/netinet/in.h-data: Fix typo in allow-header line. + + * conform/data/sys/socket.h-data: Add sockatmark. + 2001-08-17 Ulrich Drepper <drepper@redhat.com> * io/fts.c: Update from recent BSD source. diff --git a/conform/conformtest.pl b/conform/conformtest.pl index 5ae1cea45a..364e34d2a4 100644 --- a/conform/conformtest.pl +++ b/conform/conformtest.pl @@ -224,11 +224,19 @@ sub newtoken { if ($isknown{$token}) { ++$nknown; } else { - ++$nerrors; - if ($nerrors == 1) { - printf ("FAIL\n " . "-" x 72 . "\n"); - } - printf (" Namespace violation: \"%s\"\n", $token); + $errors{$token} = 1; + } +} + + +sub removetoken { + my($token) = @_; + my($idx); + + return if ($token =~ /^[0-9_]/ || $iskeyword{$token}); + + if (exists $errors{$token}) { + undef $errors{$token}; } } @@ -243,14 +251,15 @@ sub checknamespace { print TESTFILE "#include <$h>\n"; close (TESTFILE); - $nerrors = 0; + undef %errors; $nknown = 0; open (CONTENT, "$CC $CFLAGS{$dialect} -E $fnamebase.c -P -Wp,-dN | sed -e '/^# [1-9]/d' -e '/^[[:space:]]*\$/d' |"); loop: while (<CONTENT>) { - next loop if (/^#undef /); chop; if (/^#define (.*)/) { newtoken ($1, @allow); + } elsif (/^#undef (.*)/) { + removetoken ($1); } else { # We have to tokenize the line. my($str) = $_; @@ -266,14 +275,28 @@ sub checknamespace { } close (CONTENT); unlink "$fnamebase.c"; - if ($nerrors != 0) { - printf (" " . "-" x 72 . "\n"); - ++$errors; - } elsif ($nknown > 0) { - printf ("EXPECTED FAILURES\n"); - ++$known; - } else { - printf ("OK\n"); + $realerror = 0; + if ($#errors != 0) { + foreach $f (%errors) { + if ($errors{$f} == 1) { + if ($realerror == 0) { + printf ("FAIL\n " . "-" x 72 . "\n"); + $realerror = 1; + ++$errors; + } + printf (" Namespace violation: \"%s\"\n", $f); + } + } + printf (" " . "-" x 72 . "\n") if ($realerror != 0); + } + + if ($realerror == 0) { + if ($nknown > 0) { + printf ("EXPECTED FAILURES\n"); + ++$known; + } else { + printf ("OK\n"); + } } } diff --git a/conform/data/netinet/in.h-data b/conform/data/netinet/in.h-data index 9b7d05e821..1f1955d1a6 100644 --- a/conform/data/netinet/in.h-data +++ b/conform/data/netinet/in.h-data @@ -58,7 +58,7 @@ function uint16_t htons (uint16_t) function uint32_t ntohl (uint32_t) function uint16_t ntohs (uint16_t) -allow-header intttypes.h +allow-header inttypes.h allow-header arpa/inet.h constant INET6_ADDRSTRLEN 46 diff --git a/conform/data/sys/socket.h-data b/conform/data/sys/socket.h-data index 151ade5b92..61f30abc82 100644 --- a/conform/data/sys/socket.h-data +++ b/conform/data/sys/socket.h-data @@ -103,6 +103,7 @@ function int setsockopt (int, int, int, const void*, socklen_t) function int shutdown (int, int) function int socket (int, int, int) function int socketpair (int, int, int, int[2]) +function int sockatmark (int) allow-header sys/uio.h @@ -653,7 +653,7 @@ fts_build(sp, type) cur->fts_flags |= FTS_DONTCHDIR; descend = 0; cderrno = errno; - (void)closedir(dirp); + (void)__closedir(dirp); dirp = NULL; } else descend = 1; @@ -685,7 +685,7 @@ fts_build(sp, type) /* Read the directory, attaching each entry to the `link' pointer. */ doadjust = 0; - for (head = tail = NULL, nitems = 0; dirp && (dp = readdir(dirp));) { + for (head = tail = NULL, nitems = 0; dirp && (dp = __readdir(dirp));) { if (!ISSET(FTS_SEEDOT) && ISDOT(dp->d_name)) continue; |