]> Dogcows Code - chaz/tar/commitdiff
tar: work aruond IBM XL C bug
authorPaul Eggert <eggert@cs.ucla.edu>
Tue, 7 Jan 2014 19:15:56 +0000 (11:15 -0800)
committerPaul Eggert <eggert@cs.ucla.edu>
Tue, 7 Jan 2014 19:16:23 +0000 (11:16 -0800)
* src/incremen.c (show_snapshot_field_ranges)
(write_directory_file_entry): Use simpler array size expression,
one that evaluates to the same value.  This works around a compiler
bug with IBM XL C.  Problem reported by Yannick Bergeron in
<http://lists.gnu.org/archive/html/bug-tar/2014-01/msg00009.html>.

src/incremen.c

index f6b311ef4b2c783a5bf870d5311d4077d0269238..d850b68620c7c6d3196e2cb681b63c99e834414c 100644 (file)
@@ -759,7 +759,7 @@ scan_directory (struct tar_stat_info *st)
               entry = dumpdir_next (itr))
            {
              char *full_name = namebuf_name (nbuf, entry + 1);
-             
+
              if (*entry == 'I') /* Ignored entry */
                *entry = 'N';
              else if (excluded_name (full_name))
@@ -792,7 +792,7 @@ scan_directory (struct tar_stat_info *st)
                            diag = stat_diag;
                        }
                    }
-                 
+
                  if (diag)
                    {
                      file_removed_diag (full_name, false, diag);
@@ -806,7 +806,7 @@ scan_directory (struct tar_stat_info *st)
                      else if (directory->children == ALL_CHILDREN)
                        pd_flag |= PD_FORCE_CHILDREN | ALL_CHILDREN;
                      *entry = 'D';
-                     
+
                      stsub.parent = st;
                      procdir (full_name, &stsub, pd_flag, entry);
                      restore_parent_fd (&stsub);
@@ -823,7 +823,7 @@ scan_directory (struct tar_stat_info *st)
                    *entry = 'N';
                  else
                    *entry = 'Y';
-                 
+
                  tar_stat_destroy (&stsub);
                }
            }
@@ -832,7 +832,7 @@ scan_directory (struct tar_stat_info *st)
       else if (directory->tagfile)
        maketagdumpdir (directory);
     }
-  
+
   namebuf_free (nbuf);
 
   free (dirp);
@@ -1296,8 +1296,8 @@ void
 show_snapshot_field_ranges (void)
 {
   struct field_range const *p;
-  char minbuf[max (SYSINT_BUFSIZE, INT_BUFSIZE_BOUND (intmax_t))];
-  char maxbuf[max (SYSINT_BUFSIZE, INT_BUFSIZE_BOUND (uintmax_t))];
+  char minbuf[SYSINT_BUFSIZE];
+  char maxbuf[SYSINT_BUFSIZE];
 
   printf("This tar's snapshot file field ranges are\n");
   printf ("   (%-15s => [ %s, %s ]):\n\n", "field name", "min", "max");
@@ -1406,7 +1406,7 @@ write_directory_file_entry (void *entry, void *data)
 
   if (DIR_IS_FOUND (directory))
     {
-      char buf[max (SYSINT_BUFSIZE, INT_BUFSIZE_BOUND (intmax_t))];
+      char buf[SYSINT_BUFSIZE];
       char const *s;
 
       s = DIR_IS_NFS (directory) ? "1" : "0";
This page took 0.022829 seconds and 4 git commands to generate.