relocatable-prog: fix link error
[gnulib.git] / tests / test-perror2.c
index fe5e33e..e230f92 100644 (file)
@@ -37,8 +37,6 @@ static FILE *myerr;
 int
 main (void)
 {
-  FILE *fp;
-
   /* We change fd 2 later, so save it in fd 10.  */
   if (dup2 (STDERR_FILENO, BACKUP_STDERR_FILENO) != BACKUP_STDERR_FILENO
       || (myerr = fdopen (BACKUP_STDERR_FILENO, "w")) == NULL)
@@ -86,6 +84,11 @@ main (void)
     ASSERT (msg2 == msg4 || STREQ (msg2, str2));
     ASSERT (msg3 == msg4 || STREQ (msg3, str3));
     ASSERT (STREQ (msg4, str4));
+
+    free (str1);
+    free (str2);
+    free (str3);
+    free (str4);
   }
 
   /* Test that perror uses the same message as strerror.  */
@@ -113,12 +116,14 @@ main (void)
   /* Test that perror reports write failure.  */
   {
     ASSERT (freopen (BASE ".tmp", "r", stderr) == stderr);
-    ASSERT (setvbuf (stderr, NULL, _IOLBF, BUFSIZ) == 0);
+    ASSERT (setvbuf (stderr, NULL, _IONBF, BUFSIZ) == 0);
     errno = -1;
     ASSERT (!ferror (stderr));
     perror (NULL);
-    ASSERT (errno > 0);
 #if 0
+    /* Commented out until cygwin behaves:
+       http://sourceware.org/ml/newlib/2011/msg00228.html */
+    ASSERT (errno > 0);
     /* Commented out until glibc behaves:
        http://sourceware.org/bugzilla/show_bug.cgi?id=12792 */
     ASSERT (ferror (stderr));