]> git.cworth.org Git - tar/blobdiff - tests/testsuite
Imported Upstream version 1.21
[tar] / tests / testsuite
index 1a9f12a74a64ba2311561cc8e7592b171ed70d78..880890c4162d5bfdf71b5c9dd113d5384dc81026 100755 (executable)
@@ -620,7 +620,7 @@ at_times_file=$at_suite_dir/at-times
 # List of the tested programs.
 at_tested='tar'
 # List of the all the test groups.
-at_groups_all=' 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74'
+at_groups_all=' 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77'
 # As many question marks as there are digits in the last test group number.
 # Used to normalize the test group numbers so that `ls' lists them in
 # numerical order.
@@ -661,45 +661,48 @@ at_help_all="1;version.at:19;tar version;;
 33;rename01.at:24;renamed dirs in incrementals;incremental rename rename01;
 34;rename02.at:24;move between hierarchies;incremental rename rename02;
 35;rename03.at:23;cyclic renames;incremental rename rename03 cyclic-rename;
-36;chtype.at:27;changed file types in incrementals;incremental chtype;
-37;ignfail.at:23;ignfail;ignfail;
-38;link01.at:33;link count gt 2;link01;
-39;longv7.at:24;long names in V7 archives;longname longv7;
-40;long01.at:28;long file names divisible by block size;longname long512;
-41;lustar01.at:21;ustar: unsplittable file name;longname ustar lustar01;
-42;lustar02.at:21;ustar: unsplittable path name;longname ustar lustar02;
-43;lustar03.at:21;ustar: splitting long names;longname ustar lustar03;
-44;multiv01.at:23;multivolume dumps from pipes;multivolume multiv multiv01;
-45;multiv02.at:28;skipping a straddling member;multivolume multiv multiv02;
-46;multiv03.at:30;MV archive & long filenames;multivolume multiv multiv03;
-47;multiv04.at:36;split directory members in a MV archive;multivolume multiv incremental multiv04;
-48;multiv05.at:26;Restoring after an out of sync folume;multivolume multiv multiv05 sync;
-49;old.at:23;old archives;old;
-50;recurse.at:21;recurse;recurse;
-51;same-order01.at:26;working -C with --same-order;same-order same-order01;
-52;same-order02.at:25;multiple -C options;same-order same-order02;
-53;shortrec.at:25;short records;shortrec.at;
-54;sparse01.at:21;sparse files;sparse sparse01;
-55;sparse02.at:21;extracting sparse file over a pipe;sparse sparse02;
-56;sparse03.at:21;storing sparse files > 8G;sparse sparse03;
-57;sparsemv.at:21;sparse files in MV archives;sparse multiv sparsemv;
-58;spmvp00.at:21;sparse files in PAX MV archives, v.0.0;sparse multiv sparsemvp sparsemvp00;
-59;spmvp01.at:21;sparse files in PAX MV archives, v.0.1;sparse multiv sparsemvp sparsemvp01;
-60;spmvp10.at:21;sparse files in PAX MV archives, v.1.0;sparse multiv sparsemvp sparsemvp10;
-61;update.at:27;update unchanged directories;update;
-62;volume.at:23;volume;volume volcheck;
-63;volsize.at:29;volume header size;volume volsize;
-64;comprec.at:21;compressed format recognition;comprec;
-65;shortfile.at:26;short input files;shortfile shortfile0;
-66;shortupd.at:29;updating short archives;shortfile shortfile1 shortupd;
-67;truncate.at:29;truncate;truncate filechange;
-68;grow.at:24;grow;grow filechange;
-69;gtarfail.at:21;gtarfail;star gtarfail;
-70;gtarfail2.at:21;gtarfail2;star gtarfail2;
-71;multi-fail.at:21;multi-fail;star multivolume multiv multi-fail;
-72;ustar-big-2g.at:21;ustar-big-2g;star ustar-big-2g;
-73;ustar-big-8g.at:21;ustar-big-8g;star ustar-big-8g;
-74;pax-big-10g.at:21;pax-big-10g;star pax-big-10g;
+36;rename04.at:27;renamed directory containing subdirectories;incremental rename04 rename;
+37;rename05.at:24;renamed subdirectories;incremental rename05 rename;
+38;chtype.at:27;changed file types in incrementals;incremental chtype;
+39;ignfail.at:23;ignfail;ignfail;
+40;link01.at:33;link count gt 2;link01;
+41;longv7.at:24;long names in V7 archives;longname longv7;
+42;long01.at:28;long file names divisible by block size;longname long512;
+43;lustar01.at:21;ustar: unsplittable file name;longname ustar lustar01;
+44;lustar02.at:21;ustar: unsplittable path name;longname ustar lustar02;
+45;lustar03.at:21;ustar: splitting long names;longname ustar lustar03;
+46;multiv01.at:23;multivolume dumps from pipes;multivolume multiv multiv01;
+47;multiv02.at:28;skipping a straddling member;multivolume multiv multiv02;
+48;multiv03.at:30;MV archive & long filenames;multivolume multiv multiv03;
+49;multiv04.at:36;split directory members in a MV archive;multivolume multiv incremental multiv04;
+50;multiv05.at:26;Restoring after an out of sync volume;multivolume multiv multiv05 sync;
+51;multiv06.at:27;Multivolumes with L=record_size;multivolume multiv multiv06;
+52;old.at:23;old archives;old;
+53;recurse.at:21;recurse;recurse;
+54;same-order01.at:26;working -C with --same-order;same-order same-order01;
+55;same-order02.at:25;multiple -C options;same-order same-order02;
+56;shortrec.at:25;short records;shortrec.at;
+57;sparse01.at:21;sparse files;sparse sparse01;
+58;sparse02.at:21;extracting sparse file over a pipe;sparse sparse02;
+59;sparse03.at:21;storing sparse files > 8G;sparse sparse03;
+60;sparsemv.at:21;sparse files in MV archives;sparse multiv sparsemv;
+61;spmvp00.at:21;sparse files in PAX MV archives, v.0.0;sparse multiv sparsemvp sparsemvp00;
+62;spmvp01.at:21;sparse files in PAX MV archives, v.0.1;sparse multiv sparsemvp sparsemvp01;
+63;spmvp10.at:21;sparse files in PAX MV archives, v.1.0;sparse multiv sparsemvp sparsemvp10;
+64;update.at:27;update unchanged directories;update;
+65;volume.at:23;volume;volume volcheck;
+66;volsize.at:29;volume header size;volume volsize;
+67;comprec.at:21;compressed format recognition;comprec;
+68;shortfile.at:26;short input files;shortfile shortfile0;
+69;shortupd.at:29;updating short archives;shortfile shortfile1 shortupd;
+70;truncate.at:29;truncate;truncate filechange;
+71;grow.at:24;grow;grow filechange;
+72;gtarfail.at:21;gtarfail;star gtarfail;
+73;gtarfail2.at:21;gtarfail2;star gtarfail2;
+74;multi-fail.at:21;multi-fail;star multivolume multiv multi-fail;
+75;ustar-big-2g.at:21;ustar-big-2g;star ustar-big-2g;
+76;ustar-big-8g.at:21;ustar-big-8g;star ustar-big-8g;
+77;pax-big-10g.at:21;pax-big-10g;star pax-big-10g;
 "
 
 at_prev=
@@ -923,7 +926,7 @@ fi
 # List of tests.
 if $at_list_p; then
   cat <<_ATEOF
-GNU tar 1.20 test suite test groups:
+GNU tar 1.21 test suite test groups:
 
  NUM: FILE-NAME:LINE     TEST-GROUP-NAME
       KEYWORDS
@@ -947,7 +950,7 @@ _ATEOF
   exit 0
 fi
 if $at_version_p; then
-  echo "$as_me (GNU tar 1.20)"
+  echo "$as_me (GNU tar 1.21)"
   cat <<\_ACEOF
 
 Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software
@@ -1031,13 +1034,13 @@ exec 5>>"$at_suite_log"
 # Banners and logs.
 cat <<\_ASBOX
 ## ------------------------ ##
-## GNU tar 1.20 test suite. ##
+## GNU tar 1.21 test suite. ##
 ## ------------------------ ##
 _ASBOX
 {
   cat <<\_ASBOX
 ## ------------------------ ##
-## GNU tar 1.20 test suite. ##
+## GNU tar 1.21 test suite. ##
 ## ------------------------ ##
 _ASBOX
   echo
@@ -1307,7 +1310,7 @@ fi
 
 at_failed=false
 $at_diff "$at_devnull" "$at_stderr" || at_failed=:
-echo >>"$at_stdout"; echo "tar (GNU tar) 1.20
+echo >>"$at_stdout"; echo "tar (GNU tar) 1.21
 " | $at_diff - "$at_stdout" || at_failed=:
 case $at_status in
    77) echo 77 > "$at_status_file"; exit 77;;
@@ -6799,7 +6802,7 @@ fi
 
 at_failed=false
 echo >>"$at_stderr"; echo "tar: tre: Not found in archive
-tar: Error exit delayed from previous errors
+tar: Exiting with failure status due to previous errors
 " | $at_diff - "$at_stderr" || at_failed=:
 echo >>"$at_stdout"; echo "en
 to
@@ -6890,7 +6893,7 @@ fi
 
 at_failed=false
 echo >>"$at_stderr"; echo "tar: tre: Not found in archive
-tar: Error exit delayed from previous errors
+tar: Exiting with failure status due to previous errors
 " | $at_diff - "$at_stderr" || at_failed=:
 echo >>"$at_stdout"; echo "en
 to
@@ -6981,7 +6984,7 @@ fi
 
 at_failed=false
 echo >>"$at_stderr"; echo "tar: tre: Not found in archive
-tar: Error exit delayed from previous errors
+tar: Exiting with failure status due to previous errors
 " | $at_diff - "$at_stderr" || at_failed=:
 echo >>"$at_stdout"; echo "en
 to
@@ -7072,7 +7075,7 @@ fi
 
 at_failed=false
 echo >>"$at_stderr"; echo "tar: tre: Not found in archive
-tar: Error exit delayed from previous errors
+tar: Exiting with failure status due to previous errors
 " | $at_diff - "$at_stderr" || at_failed=:
 echo >>"$at_stdout"; echo "en
 to
@@ -7163,7 +7166,7 @@ fi
 
 at_failed=false
 echo >>"$at_stderr"; echo "tar: tre: Not found in archive
-tar: Error exit delayed from previous errors
+tar: Exiting with failure status due to previous errors
 " | $at_diff - "$at_stderr" || at_failed=:
 echo >>"$at_stdout"; echo "en
 to
@@ -10569,7 +10572,7 @@ at_failed=false
 echo >>"$at_stderr"; echo "
 gzip: stdin: unexpected end of file
 tar: Child returned status 1
-tar: Error exit delayed from previous errors
+tar: Exiting with failure status due to previous errors
 " | $at_diff - "$at_stderr" || at_failed=:
 $at_diff "$at_devnull" "$at_stdout" || at_failed=:
 case $at_status in
@@ -10639,7 +10642,10 @@ sleep 1
 tar cf archive --listed=list structure
 tar cfv archive --listed=list structure
 echo separator
-sleep 1
+# ReiserFS often offsets the timestamps of newly created files
+# 1 second to the past.  Try to compensate for it, until a better
+# solution is found.
+sleep 2
 echo y >structure/file
 tar cfv archive --listed=list structure
 )"
@@ -10680,7 +10686,10 @@ sleep 1
 tar cf archive --listed=list structure
 tar cfv archive --listed=list structure
 echo separator
-sleep 1
+# ReiserFS often offsets the timestamps of newly created files
+# 1 second to the past.  Try to compensate for it, until a better
+# solution is found.
+sleep 2
 echo y >structure/file
 tar cfv archive --listed=list structure
 ) ) >"$at_stdout" 2>"$at_stder1"
@@ -10717,7 +10726,10 @@ sleep 1
 tar cf archive --listed=list structure
 tar cfv archive --listed=list structure
 echo separator
-sleep 1
+# ReiserFS often offsets the timestamps of newly created files
+# 1 second to the past.  Try to compensate for it, until a better
+# solution is found.
+sleep 2
 echo y >structure/file
 tar cfv archive --listed=list structure
 ) ) >"$at_stdout" 2>"$at_stderr"
@@ -10775,7 +10787,10 @@ sleep 1
 tar cf archive --listed=list structure
 tar cfv archive --listed=list structure
 echo separator
-sleep 1
+# ReiserFS often offsets the timestamps of newly created files
+# 1 second to the past.  Try to compensate for it, until a better
+# solution is found.
+sleep 2
 echo y >structure/file
 tar cfv archive --listed=list structure
 )"
@@ -10816,7 +10831,10 @@ sleep 1
 tar cf archive --listed=list structure
 tar cfv archive --listed=list structure
 echo separator
-sleep 1
+# ReiserFS often offsets the timestamps of newly created files
+# 1 second to the past.  Try to compensate for it, until a better
+# solution is found.
+sleep 2
 echo y >structure/file
 tar cfv archive --listed=list structure
 ) ) >"$at_stdout" 2>"$at_stder1"
@@ -10853,7 +10871,10 @@ sleep 1
 tar cf archive --listed=list structure
 tar cfv archive --listed=list structure
 echo separator
-sleep 1
+# ReiserFS often offsets the timestamps of newly created files
+# 1 second to the past.  Try to compensate for it, until a better
+# solution is found.
+sleep 2
 echo y >structure/file
 tar cfv archive --listed=list structure
 ) ) >"$at_stdout" 2>"$at_stderr"
@@ -10911,7 +10932,10 @@ sleep 1
 tar cf archive --listed=list structure
 tar cfv archive --listed=list structure
 echo separator
-sleep 1
+# ReiserFS often offsets the timestamps of newly created files
+# 1 second to the past.  Try to compensate for it, until a better
+# solution is found.
+sleep 2
 echo y >structure/file
 tar cfv archive --listed=list structure
 )"
@@ -10952,7 +10976,10 @@ sleep 1
 tar cf archive --listed=list structure
 tar cfv archive --listed=list structure
 echo separator
-sleep 1
+# ReiserFS often offsets the timestamps of newly created files
+# 1 second to the past.  Try to compensate for it, until a better
+# solution is found.
+sleep 2
 echo y >structure/file
 tar cfv archive --listed=list structure
 ) ) >"$at_stdout" 2>"$at_stder1"
@@ -10989,7 +11016,10 @@ sleep 1
 tar cf archive --listed=list structure
 tar cfv archive --listed=list structure
 echo separator
-sleep 1
+# ReiserFS often offsets the timestamps of newly created files
+# 1 second to the past.  Try to compensate for it, until a better
+# solution is found.
+sleep 2
 echo y >structure/file
 tar cfv archive --listed=list structure
 ) ) >"$at_stdout" 2>"$at_stderr"
@@ -11927,7 +11957,7 @@ tar --create \\
 
 tar tf archive.1 || exit 1
 
-sleep 1
+sleep 2
 
 genfile --length 10240 --pattern zeros --file directory/file2
 
@@ -11969,7 +11999,7 @@ tar --create \
 
 tar tf archive.1 || exit 1
 
-sleep 1
+sleep 2
 
 genfile --length 10240 --pattern zeros --file directory/file2
 
@@ -12007,7 +12037,7 @@ tar --create \
 
 tar tf archive.1 || exit 1
 
-sleep 1
+sleep 2
 
 genfile --length 10240 --pattern zeros --file directory/file2
 
@@ -12065,7 +12095,7 @@ tar --create \\
 
 tar tf archive.1 || exit 1
 
-sleep 1
+sleep 2
 
 genfile --length 10240 --pattern zeros --file directory/file2
 
@@ -12107,7 +12137,7 @@ tar --create \
 
 tar tf archive.1 || exit 1
 
-sleep 1
+sleep 2
 
 genfile --length 10240 --pattern zeros --file directory/file2
 
@@ -12145,7 +12175,7 @@ tar --create \
 
 tar tf archive.1 || exit 1
 
-sleep 1
+sleep 2
 
 genfile --length 10240 --pattern zeros --file directory/file2
 
@@ -15905,10 +15935,1100 @@ echo "Begin directory listing 1"
 find foo | sort
 echo "End directory listing 1"
 
-tar xfgv arch.2 /dev/null
-echo Begin directory listing 2
-find foo | sort
-echo End directory listing 2
+tar xfgv arch.2 /dev/null
+echo Begin directory listing 2
+find foo | sort
+echo End directory listing 2
+) ) >"$at_stdout" 2>"$at_stder1"
+    at_status=$?
+    grep '^ *+' "$at_stder1" >&2
+    grep -v '^ *+' "$at_stder1" >"$at_stderr"
+else
+    ( :;
+mkdir posix
+(cd posix
+TEST_TAR_FORMAT=posix
+export TEST_TAR_FORMAT
+TAR_OPTIONS="-H posix"
+export TAR_OPTIONS
+rm -rf *
+
+
+test -z "`sort < /dev/null 2>&1`" || exit 77
+
+
+mkdir foo
+genfile --file foo/file1
+genfile --file foo/file2
+
+mkdir foo/a
+genfile --file foo/a/filea
+
+mkdir foo/b
+genfile --file foo/b/fileb
+
+mkdir foo/c
+genfile --file foo/c/filec
+
+sleep 1
+
+echo "First dump"
+echo "First dump">&2
+tar -g incr -cf arch.1 -v foo 2>tmperr
+sort tmperr >&2
+
+# Shuffle directories:
+(cd foo
+mv a $$
+mv c a
+mv b c
+mv $$ b)
+
+echo "Second dump"
+echo "Second dump" >&2
+tar -g incr -cf arch.2 -v foo 2>tmperr
+sort tmperr >&2
+
+tar xfg arch.1 /dev/null
+
+echo "Begin directory listing 1"
+find foo | sort
+echo "End directory listing 1"
+
+tar xfgv arch.2 /dev/null
+echo Begin directory listing 2
+find foo | sort
+echo End directory listing 2
+) ) >"$at_stdout" 2>"$at_stderr"
+    at_status=$?
+fi
+
+at_failed=false
+echo >>"$at_stderr"; echo "First dump
+tar: foo/a: Directory is new
+tar: foo/b: Directory is new
+tar: foo/c: Directory is new
+Second dump
+tar: foo/a: Directory has been renamed from \`foo/c'
+tar: foo/b: Directory has been renamed from \`foo/a'
+tar: foo/c: Directory has been renamed from \`foo/b'
+" | $at_diff - "$at_stderr" || at_failed=:
+echo >>"$at_stdout"; echo "First dump
+foo/
+foo/a/
+foo/b/
+foo/c/
+foo/file1
+foo/file2
+foo/a/filea
+foo/b/fileb
+foo/c/filec
+Second dump
+foo/
+foo/a/
+foo/b/
+foo/c/
+Begin directory listing 1
+foo
+foo/a
+foo/a/filea
+foo/b
+foo/b/fileb
+foo/c
+foo/c/filec
+foo/file1
+foo/file2
+End directory listing 1
+foo/
+foo/a/
+foo/b/
+foo/c/
+Begin directory listing 2
+foo
+foo/a
+foo/a/filec
+foo/b
+foo/b/filea
+foo/c
+foo/c/fileb
+foo/file1
+foo/file2
+End directory listing 2
+" | $at_diff - "$at_stdout" || at_failed=:
+case $at_status in
+   77) echo 77 > "$at_status_file"; exit 77;;
+   0) ;;
+   *) echo "$at_srcdir/rename03.at:26: exit code was $at_status, expected 0"
+      at_failed=:;;
+esac
+if $at_failed; then
+
+
+  echo 1 > "$at_status_file"
+  exit 1
+fi
+
+$at_traceon
+
+
+
+      $at_traceoff
+      $at_times_p && times >"$at_times_file"
+    ) 5>&1 2>&1 | eval $at_tee_pipe
+    at_status=`cat "$at_status_file"`
+    ;;
+
+  36 ) # 36. rename04.at:27: renamed directory containing subdirectories
+    at_setup_line='rename04.at:27'
+    at_desc="renamed directory containing subdirectories"
+    $at_quiet $ECHO_N " 36: renamed directory containing subdirectories    $ECHO_C"
+    at_xfail=no
+      test -f $XFAILFILE && at_xfail=yes
+    echo "#                             -*- compilation -*-" >> "$at_group_log"
+    (
+      echo "36. rename04.at:27: testing ..."
+      $at_traceon
+
+
+
+
+
+  $at_traceoff
+echo "$at_srcdir/rename04.at:30:
+mkdir gnu
+(cd gnu
+TEST_TAR_FORMAT=gnu
+export TEST_TAR_FORMAT
+TAR_OPTIONS=\"-H gnu\"
+export TAR_OPTIONS
+rm -rf *
+
+
+test -z "`sort < /dev/null 2>&1`" || exit 77
+
+
+decho Creating directory structure
+mkdir directory
+mkdir directory/subdir
+genfile --file=directory/file
+
+decho Creating initial archive
+tar -cf archive.1 -g db.1 directory
+
+decho Renaming
+mv directory dir
+
+decho Creating incremental archive
+cp db.1 db.2
+tar -cf archive.2 -g db.2 dir
+
+mv dir orig
+
+decho First restore
+tar -xf archive.1 -g db.1
+find directory | sort
+
+decho Second restore
+tar -xf archive.2 -g db.2
+find dir | sort
+)"
+echo rename04.at:30 >"$at_check_line_file"
+
+at_trace_this=
+if test -n "$at_traceon"; then
+    echo 'Not enabling shell tracing (command contains an embedded newline)'
+fi
+
+if test -n "$at_trace_this"; then
+    ( $at_traceon;
+mkdir gnu
+(cd gnu
+TEST_TAR_FORMAT=gnu
+export TEST_TAR_FORMAT
+TAR_OPTIONS="-H gnu"
+export TAR_OPTIONS
+rm -rf *
+
+
+test -z "`sort < /dev/null 2>&1`" || exit 77
+
+
+decho Creating directory structure
+mkdir directory
+mkdir directory/subdir
+genfile --file=directory/file
+
+decho Creating initial archive
+tar -cf archive.1 -g db.1 directory
+
+decho Renaming
+mv directory dir
+
+decho Creating incremental archive
+cp db.1 db.2
+tar -cf archive.2 -g db.2 dir
+
+mv dir orig
+
+decho First restore
+tar -xf archive.1 -g db.1
+find directory | sort
+
+decho Second restore
+tar -xf archive.2 -g db.2
+find dir | sort
+) ) >"$at_stdout" 2>"$at_stder1"
+    at_status=$?
+    grep '^ *+' "$at_stder1" >&2
+    grep -v '^ *+' "$at_stder1" >"$at_stderr"
+else
+    ( :;
+mkdir gnu
+(cd gnu
+TEST_TAR_FORMAT=gnu
+export TEST_TAR_FORMAT
+TAR_OPTIONS="-H gnu"
+export TAR_OPTIONS
+rm -rf *
+
+
+test -z "`sort < /dev/null 2>&1`" || exit 77
+
+
+decho Creating directory structure
+mkdir directory
+mkdir directory/subdir
+genfile --file=directory/file
+
+decho Creating initial archive
+tar -cf archive.1 -g db.1 directory
+
+decho Renaming
+mv directory dir
+
+decho Creating incremental archive
+cp db.1 db.2
+tar -cf archive.2 -g db.2 dir
+
+mv dir orig
+
+decho First restore
+tar -xf archive.1 -g db.1
+find directory | sort
+
+decho Second restore
+tar -xf archive.2 -g db.2
+find dir | sort
+) ) >"$at_stdout" 2>"$at_stderr"
+    at_status=$?
+fi
+
+at_failed=false
+echo >>"$at_stderr"; echo "Creating directory structure
+Creating initial archive
+Renaming
+Creating incremental archive
+First restore
+Second restore
+" | $at_diff - "$at_stderr" || at_failed=:
+echo >>"$at_stdout"; echo "Creating directory structure
+Creating initial archive
+Renaming
+Creating incremental archive
+First restore
+directory
+directory/file
+directory/subdir
+Second restore
+dir
+dir/subdir
+" | $at_diff - "$at_stdout" || at_failed=:
+case $at_status in
+   77) echo 77 > "$at_status_file"; exit 77;;
+   0) ;;
+   *) echo "$at_srcdir/rename04.at:30: exit code was $at_status, expected 0"
+      at_failed=:;;
+esac
+if $at_failed; then
+
+
+  echo 1 > "$at_status_file"
+  exit 1
+fi
+
+$at_traceon
+$at_traceoff
+echo "$at_srcdir/rename04.at:30:
+mkdir oldgnu
+(cd oldgnu
+TEST_TAR_FORMAT=oldgnu
+export TEST_TAR_FORMAT
+TAR_OPTIONS=\"-H oldgnu\"
+export TAR_OPTIONS
+rm -rf *
+
+
+test -z "`sort < /dev/null 2>&1`" || exit 77
+
+
+decho Creating directory structure
+mkdir directory
+mkdir directory/subdir
+genfile --file=directory/file
+
+decho Creating initial archive
+tar -cf archive.1 -g db.1 directory
+
+decho Renaming
+mv directory dir
+
+decho Creating incremental archive
+cp db.1 db.2
+tar -cf archive.2 -g db.2 dir
+
+mv dir orig
+
+decho First restore
+tar -xf archive.1 -g db.1
+find directory | sort
+
+decho Second restore
+tar -xf archive.2 -g db.2
+find dir | sort
+)"
+echo rename04.at:30 >"$at_check_line_file"
+
+at_trace_this=
+if test -n "$at_traceon"; then
+    echo 'Not enabling shell tracing (command contains an embedded newline)'
+fi
+
+if test -n "$at_trace_this"; then
+    ( $at_traceon;
+mkdir oldgnu
+(cd oldgnu
+TEST_TAR_FORMAT=oldgnu
+export TEST_TAR_FORMAT
+TAR_OPTIONS="-H oldgnu"
+export TAR_OPTIONS
+rm -rf *
+
+
+test -z "`sort < /dev/null 2>&1`" || exit 77
+
+
+decho Creating directory structure
+mkdir directory
+mkdir directory/subdir
+genfile --file=directory/file
+
+decho Creating initial archive
+tar -cf archive.1 -g db.1 directory
+
+decho Renaming
+mv directory dir
+
+decho Creating incremental archive
+cp db.1 db.2
+tar -cf archive.2 -g db.2 dir
+
+mv dir orig
+
+decho First restore
+tar -xf archive.1 -g db.1
+find directory | sort
+
+decho Second restore
+tar -xf archive.2 -g db.2
+find dir | sort
+) ) >"$at_stdout" 2>"$at_stder1"
+    at_status=$?
+    grep '^ *+' "$at_stder1" >&2
+    grep -v '^ *+' "$at_stder1" >"$at_stderr"
+else
+    ( :;
+mkdir oldgnu
+(cd oldgnu
+TEST_TAR_FORMAT=oldgnu
+export TEST_TAR_FORMAT
+TAR_OPTIONS="-H oldgnu"
+export TAR_OPTIONS
+rm -rf *
+
+
+test -z "`sort < /dev/null 2>&1`" || exit 77
+
+
+decho Creating directory structure
+mkdir directory
+mkdir directory/subdir
+genfile --file=directory/file
+
+decho Creating initial archive
+tar -cf archive.1 -g db.1 directory
+
+decho Renaming
+mv directory dir
+
+decho Creating incremental archive
+cp db.1 db.2
+tar -cf archive.2 -g db.2 dir
+
+mv dir orig
+
+decho First restore
+tar -xf archive.1 -g db.1
+find directory | sort
+
+decho Second restore
+tar -xf archive.2 -g db.2
+find dir | sort
+) ) >"$at_stdout" 2>"$at_stderr"
+    at_status=$?
+fi
+
+at_failed=false
+echo >>"$at_stderr"; echo "Creating directory structure
+Creating initial archive
+Renaming
+Creating incremental archive
+First restore
+Second restore
+" | $at_diff - "$at_stderr" || at_failed=:
+echo >>"$at_stdout"; echo "Creating directory structure
+Creating initial archive
+Renaming
+Creating incremental archive
+First restore
+directory
+directory/file
+directory/subdir
+Second restore
+dir
+dir/subdir
+" | $at_diff - "$at_stdout" || at_failed=:
+case $at_status in
+   77) echo 77 > "$at_status_file"; exit 77;;
+   0) ;;
+   *) echo "$at_srcdir/rename04.at:30: exit code was $at_status, expected 0"
+      at_failed=:;;
+esac
+if $at_failed; then
+
+
+  echo 1 > "$at_status_file"
+  exit 1
+fi
+
+$at_traceon
+$at_traceoff
+echo "$at_srcdir/rename04.at:30:
+mkdir posix
+(cd posix
+TEST_TAR_FORMAT=posix
+export TEST_TAR_FORMAT
+TAR_OPTIONS=\"-H posix\"
+export TAR_OPTIONS
+rm -rf *
+
+
+test -z "`sort < /dev/null 2>&1`" || exit 77
+
+
+decho Creating directory structure
+mkdir directory
+mkdir directory/subdir
+genfile --file=directory/file
+
+decho Creating initial archive
+tar -cf archive.1 -g db.1 directory
+
+decho Renaming
+mv directory dir
+
+decho Creating incremental archive
+cp db.1 db.2
+tar -cf archive.2 -g db.2 dir
+
+mv dir orig
+
+decho First restore
+tar -xf archive.1 -g db.1
+find directory | sort
+
+decho Second restore
+tar -xf archive.2 -g db.2
+find dir | sort
+)"
+echo rename04.at:30 >"$at_check_line_file"
+
+at_trace_this=
+if test -n "$at_traceon"; then
+    echo 'Not enabling shell tracing (command contains an embedded newline)'
+fi
+
+if test -n "$at_trace_this"; then
+    ( $at_traceon;
+mkdir posix
+(cd posix
+TEST_TAR_FORMAT=posix
+export TEST_TAR_FORMAT
+TAR_OPTIONS="-H posix"
+export TAR_OPTIONS
+rm -rf *
+
+
+test -z "`sort < /dev/null 2>&1`" || exit 77
+
+
+decho Creating directory structure
+mkdir directory
+mkdir directory/subdir
+genfile --file=directory/file
+
+decho Creating initial archive
+tar -cf archive.1 -g db.1 directory
+
+decho Renaming
+mv directory dir
+
+decho Creating incremental archive
+cp db.1 db.2
+tar -cf archive.2 -g db.2 dir
+
+mv dir orig
+
+decho First restore
+tar -xf archive.1 -g db.1
+find directory | sort
+
+decho Second restore
+tar -xf archive.2 -g db.2
+find dir | sort
+) ) >"$at_stdout" 2>"$at_stder1"
+    at_status=$?
+    grep '^ *+' "$at_stder1" >&2
+    grep -v '^ *+' "$at_stder1" >"$at_stderr"
+else
+    ( :;
+mkdir posix
+(cd posix
+TEST_TAR_FORMAT=posix
+export TEST_TAR_FORMAT
+TAR_OPTIONS="-H posix"
+export TAR_OPTIONS
+rm -rf *
+
+
+test -z "`sort < /dev/null 2>&1`" || exit 77
+
+
+decho Creating directory structure
+mkdir directory
+mkdir directory/subdir
+genfile --file=directory/file
+
+decho Creating initial archive
+tar -cf archive.1 -g db.1 directory
+
+decho Renaming
+mv directory dir
+
+decho Creating incremental archive
+cp db.1 db.2
+tar -cf archive.2 -g db.2 dir
+
+mv dir orig
+
+decho First restore
+tar -xf archive.1 -g db.1
+find directory | sort
+
+decho Second restore
+tar -xf archive.2 -g db.2
+find dir | sort
+) ) >"$at_stdout" 2>"$at_stderr"
+    at_status=$?
+fi
+
+at_failed=false
+echo >>"$at_stderr"; echo "Creating directory structure
+Creating initial archive
+Renaming
+Creating incremental archive
+First restore
+Second restore
+" | $at_diff - "$at_stderr" || at_failed=:
+echo >>"$at_stdout"; echo "Creating directory structure
+Creating initial archive
+Renaming
+Creating incremental archive
+First restore
+directory
+directory/file
+directory/subdir
+Second restore
+dir
+dir/subdir
+" | $at_diff - "$at_stdout" || at_failed=:
+case $at_status in
+   77) echo 77 > "$at_status_file"; exit 77;;
+   0) ;;
+   *) echo "$at_srcdir/rename04.at:30: exit code was $at_status, expected 0"
+      at_failed=:;;
+esac
+if $at_failed; then
+
+
+  echo 1 > "$at_status_file"
+  exit 1
+fi
+
+$at_traceon
+
+
+
+      $at_traceoff
+      $at_times_p && times >"$at_times_file"
+    ) 5>&1 2>&1 | eval $at_tee_pipe
+    at_status=`cat "$at_status_file"`
+    ;;
+
+  37 ) # 37. rename05.at:24: renamed subdirectories
+    at_setup_line='rename05.at:24'
+    at_desc="renamed subdirectories"
+    $at_quiet $ECHO_N " 37: renamed subdirectories                         $ECHO_C"
+    at_xfail=no
+      test -f $XFAILFILE && at_xfail=yes
+    echo "#                             -*- compilation -*-" >> "$at_group_log"
+    (
+      echo "37. rename05.at:24: testing ..."
+      $at_traceon
+
+
+
+
+
+  $at_traceoff
+echo "$at_srcdir/rename05.at:27:
+mkdir gnu
+(cd gnu
+TEST_TAR_FORMAT=gnu
+export TEST_TAR_FORMAT
+TAR_OPTIONS=\"-H gnu\"
+export TAR_OPTIONS
+rm -rf *
+
+
+test -z "`sort < /dev/null 2>&1`" || exit 77
+
+
+decho Creating directory structure
+mkdir directory
+mkdir directory/subdir
+genfile --file=directory/file
+
+decho Creating initial archive
+tar -cf archive.1 -g db.1 directory
+
+decho Renaming
+mv directory/subdir directory/subdir.0
+mv directory dir
+
+decho Creating incremental archive
+cp db.1 db.2
+tar -cf archive.2 -g db.2 dir
+
+mv dir orig
+
+decho First restore
+tar -xf archive.1 -g db.1
+find directory | sort
+
+decho Second restore
+tar -xf archive.2 -g db.2
+find dir | sort
+)"
+echo rename05.at:27 >"$at_check_line_file"
+
+at_trace_this=
+if test -n "$at_traceon"; then
+    echo 'Not enabling shell tracing (command contains an embedded newline)'
+fi
+
+if test -n "$at_trace_this"; then
+    ( $at_traceon;
+mkdir gnu
+(cd gnu
+TEST_TAR_FORMAT=gnu
+export TEST_TAR_FORMAT
+TAR_OPTIONS="-H gnu"
+export TAR_OPTIONS
+rm -rf *
+
+
+test -z "`sort < /dev/null 2>&1`" || exit 77
+
+
+decho Creating directory structure
+mkdir directory
+mkdir directory/subdir
+genfile --file=directory/file
+
+decho Creating initial archive
+tar -cf archive.1 -g db.1 directory
+
+decho Renaming
+mv directory/subdir directory/subdir.0
+mv directory dir
+
+decho Creating incremental archive
+cp db.1 db.2
+tar -cf archive.2 -g db.2 dir
+
+mv dir orig
+
+decho First restore
+tar -xf archive.1 -g db.1
+find directory | sort
+
+decho Second restore
+tar -xf archive.2 -g db.2
+find dir | sort
+) ) >"$at_stdout" 2>"$at_stder1"
+    at_status=$?
+    grep '^ *+' "$at_stder1" >&2
+    grep -v '^ *+' "$at_stder1" >"$at_stderr"
+else
+    ( :;
+mkdir gnu
+(cd gnu
+TEST_TAR_FORMAT=gnu
+export TEST_TAR_FORMAT
+TAR_OPTIONS="-H gnu"
+export TAR_OPTIONS
+rm -rf *
+
+
+test -z "`sort < /dev/null 2>&1`" || exit 77
+
+
+decho Creating directory structure
+mkdir directory
+mkdir directory/subdir
+genfile --file=directory/file
+
+decho Creating initial archive
+tar -cf archive.1 -g db.1 directory
+
+decho Renaming
+mv directory/subdir directory/subdir.0
+mv directory dir
+
+decho Creating incremental archive
+cp db.1 db.2
+tar -cf archive.2 -g db.2 dir
+
+mv dir orig
+
+decho First restore
+tar -xf archive.1 -g db.1
+find directory | sort
+
+decho Second restore
+tar -xf archive.2 -g db.2
+find dir | sort
+) ) >"$at_stdout" 2>"$at_stderr"
+    at_status=$?
+fi
+
+at_failed=false
+echo >>"$at_stderr"; echo "Creating directory structure
+Creating initial archive
+Renaming
+Creating incremental archive
+First restore
+Second restore
+" | $at_diff - "$at_stderr" || at_failed=:
+echo >>"$at_stdout"; echo "Creating directory structure
+Creating initial archive
+Renaming
+Creating incremental archive
+First restore
+directory
+directory/file
+directory/subdir
+Second restore
+dir
+dir/subdir.0
+" | $at_diff - "$at_stdout" || at_failed=:
+case $at_status in
+   77) echo 77 > "$at_status_file"; exit 77;;
+   0) ;;
+   *) echo "$at_srcdir/rename05.at:27: exit code was $at_status, expected 0"
+      at_failed=:;;
+esac
+if $at_failed; then
+
+
+  echo 1 > "$at_status_file"
+  exit 1
+fi
+
+$at_traceon
+$at_traceoff
+echo "$at_srcdir/rename05.at:27:
+mkdir oldgnu
+(cd oldgnu
+TEST_TAR_FORMAT=oldgnu
+export TEST_TAR_FORMAT
+TAR_OPTIONS=\"-H oldgnu\"
+export TAR_OPTIONS
+rm -rf *
+
+
+test -z "`sort < /dev/null 2>&1`" || exit 77
+
+
+decho Creating directory structure
+mkdir directory
+mkdir directory/subdir
+genfile --file=directory/file
+
+decho Creating initial archive
+tar -cf archive.1 -g db.1 directory
+
+decho Renaming
+mv directory/subdir directory/subdir.0
+mv directory dir
+
+decho Creating incremental archive
+cp db.1 db.2
+tar -cf archive.2 -g db.2 dir
+
+mv dir orig
+
+decho First restore
+tar -xf archive.1 -g db.1
+find directory | sort
+
+decho Second restore
+tar -xf archive.2 -g db.2
+find dir | sort
+)"
+echo rename05.at:27 >"$at_check_line_file"
+
+at_trace_this=
+if test -n "$at_traceon"; then
+    echo 'Not enabling shell tracing (command contains an embedded newline)'
+fi
+
+if test -n "$at_trace_this"; then
+    ( $at_traceon;
+mkdir oldgnu
+(cd oldgnu
+TEST_TAR_FORMAT=oldgnu
+export TEST_TAR_FORMAT
+TAR_OPTIONS="-H oldgnu"
+export TAR_OPTIONS
+rm -rf *
+
+
+test -z "`sort < /dev/null 2>&1`" || exit 77
+
+
+decho Creating directory structure
+mkdir directory
+mkdir directory/subdir
+genfile --file=directory/file
+
+decho Creating initial archive
+tar -cf archive.1 -g db.1 directory
+
+decho Renaming
+mv directory/subdir directory/subdir.0
+mv directory dir
+
+decho Creating incremental archive
+cp db.1 db.2
+tar -cf archive.2 -g db.2 dir
+
+mv dir orig
+
+decho First restore
+tar -xf archive.1 -g db.1
+find directory | sort
+
+decho Second restore
+tar -xf archive.2 -g db.2
+find dir | sort
+) ) >"$at_stdout" 2>"$at_stder1"
+    at_status=$?
+    grep '^ *+' "$at_stder1" >&2
+    grep -v '^ *+' "$at_stder1" >"$at_stderr"
+else
+    ( :;
+mkdir oldgnu
+(cd oldgnu
+TEST_TAR_FORMAT=oldgnu
+export TEST_TAR_FORMAT
+TAR_OPTIONS="-H oldgnu"
+export TAR_OPTIONS
+rm -rf *
+
+
+test -z "`sort < /dev/null 2>&1`" || exit 77
+
+
+decho Creating directory structure
+mkdir directory
+mkdir directory/subdir
+genfile --file=directory/file
+
+decho Creating initial archive
+tar -cf archive.1 -g db.1 directory
+
+decho Renaming
+mv directory/subdir directory/subdir.0
+mv directory dir
+
+decho Creating incremental archive
+cp db.1 db.2
+tar -cf archive.2 -g db.2 dir
+
+mv dir orig
+
+decho First restore
+tar -xf archive.1 -g db.1
+find directory | sort
+
+decho Second restore
+tar -xf archive.2 -g db.2
+find dir | sort
+) ) >"$at_stdout" 2>"$at_stderr"
+    at_status=$?
+fi
+
+at_failed=false
+echo >>"$at_stderr"; echo "Creating directory structure
+Creating initial archive
+Renaming
+Creating incremental archive
+First restore
+Second restore
+" | $at_diff - "$at_stderr" || at_failed=:
+echo >>"$at_stdout"; echo "Creating directory structure
+Creating initial archive
+Renaming
+Creating incremental archive
+First restore
+directory
+directory/file
+directory/subdir
+Second restore
+dir
+dir/subdir.0
+" | $at_diff - "$at_stdout" || at_failed=:
+case $at_status in
+   77) echo 77 > "$at_status_file"; exit 77;;
+   0) ;;
+   *) echo "$at_srcdir/rename05.at:27: exit code was $at_status, expected 0"
+      at_failed=:;;
+esac
+if $at_failed; then
+
+
+  echo 1 > "$at_status_file"
+  exit 1
+fi
+
+$at_traceon
+$at_traceoff
+echo "$at_srcdir/rename05.at:27:
+mkdir posix
+(cd posix
+TEST_TAR_FORMAT=posix
+export TEST_TAR_FORMAT
+TAR_OPTIONS=\"-H posix\"
+export TAR_OPTIONS
+rm -rf *
+
+
+test -z "`sort < /dev/null 2>&1`" || exit 77
+
+
+decho Creating directory structure
+mkdir directory
+mkdir directory/subdir
+genfile --file=directory/file
+
+decho Creating initial archive
+tar -cf archive.1 -g db.1 directory
+
+decho Renaming
+mv directory/subdir directory/subdir.0
+mv directory dir
+
+decho Creating incremental archive
+cp db.1 db.2
+tar -cf archive.2 -g db.2 dir
+
+mv dir orig
+
+decho First restore
+tar -xf archive.1 -g db.1
+find directory | sort
+
+decho Second restore
+tar -xf archive.2 -g db.2
+find dir | sort
+)"
+echo rename05.at:27 >"$at_check_line_file"
+
+at_trace_this=
+if test -n "$at_traceon"; then
+    echo 'Not enabling shell tracing (command contains an embedded newline)'
+fi
+
+if test -n "$at_trace_this"; then
+    ( $at_traceon;
+mkdir posix
+(cd posix
+TEST_TAR_FORMAT=posix
+export TEST_TAR_FORMAT
+TAR_OPTIONS="-H posix"
+export TAR_OPTIONS
+rm -rf *
+
+
+test -z "`sort < /dev/null 2>&1`" || exit 77
+
+
+decho Creating directory structure
+mkdir directory
+mkdir directory/subdir
+genfile --file=directory/file
+
+decho Creating initial archive
+tar -cf archive.1 -g db.1 directory
+
+decho Renaming
+mv directory/subdir directory/subdir.0
+mv directory dir
+
+decho Creating incremental archive
+cp db.1 db.2
+tar -cf archive.2 -g db.2 dir
+
+mv dir orig
+
+decho First restore
+tar -xf archive.1 -g db.1
+find directory | sort
+
+decho Second restore
+tar -xf archive.2 -g db.2
+find dir | sort
 ) ) >"$at_stdout" 2>"$at_stder1"
     at_status=$?
     grep '^ *+' "$at_stder1" >&2
@@ -15927,108 +17047,59 @@ rm -rf *
 test -z "`sort < /dev/null 2>&1`" || exit 77
 
 
-mkdir foo
-genfile --file foo/file1
-genfile --file foo/file2
-
-mkdir foo/a
-genfile --file foo/a/filea
-
-mkdir foo/b
-genfile --file foo/b/fileb
-
-mkdir foo/c
-genfile --file foo/c/filec
-
-sleep 1
+decho Creating directory structure
+mkdir directory
+mkdir directory/subdir
+genfile --file=directory/file
 
-echo "First dump"
-echo "First dump">&2
-tar -g incr -cf arch.1 -v foo 2>tmperr
-sort tmperr >&2
+decho Creating initial archive
+tar -cf archive.1 -g db.1 directory
 
-# Shuffle directories:
-(cd foo
-mv a $$
-mv c a
-mv b c
-mv $$ b)
+decho Renaming
+mv directory/subdir directory/subdir.0
+mv directory dir
 
-echo "Second dump"
-echo "Second dump" >&2
-tar -g incr -cf arch.2 -v foo 2>tmperr
-sort tmperr >&2
+decho Creating incremental archive
+cp db.1 db.2
+tar -cf archive.2 -g db.2 dir
 
-tar xfg arch.1 /dev/null
+mv dir orig
 
-echo "Begin directory listing 1"
-find foo | sort
-echo "End directory listing 1"
+decho First restore
+tar -xf archive.1 -g db.1
+find directory | sort
 
-tar xfgv arch.2 /dev/null
-echo Begin directory listing 2
-find foo | sort
-echo End directory listing 2
+decho Second restore
+tar -xf archive.2 -g db.2
+find dir | sort
 ) ) >"$at_stdout" 2>"$at_stderr"
     at_status=$?
 fi
 
 at_failed=false
-echo >>"$at_stderr"; echo "First dump
-tar: foo/a: Directory is new
-tar: foo/b: Directory is new
-tar: foo/c: Directory is new
-Second dump
-tar: foo/a: Directory has been renamed from \`foo/c'
-tar: foo/b: Directory has been renamed from \`foo/a'
-tar: foo/c: Directory has been renamed from \`foo/b'
+echo >>"$at_stderr"; echo "Creating directory structure
+Creating initial archive
+Renaming
+Creating incremental archive
+First restore
+Second restore
 " | $at_diff - "$at_stderr" || at_failed=:
-echo >>"$at_stdout"; echo "First dump
-foo/
-foo/a/
-foo/b/
-foo/c/
-foo/file1
-foo/file2
-foo/a/filea
-foo/b/fileb
-foo/c/filec
-Second dump
-foo/
-foo/a/
-foo/b/
-foo/c/
-Begin directory listing 1
-foo
-foo/a
-foo/a/filea
-foo/b
-foo/b/fileb
-foo/c
-foo/c/filec
-foo/file1
-foo/file2
-End directory listing 1
-foo/
-foo/a/
-foo/b/
-foo/c/
-Begin directory listing 2
-foo
-foo/a
-foo/a/filec
-foo/b
-foo/b/filea
-foo/c
-foo/c/fileb
-foo/file1
-foo/file2
-End directory listing 2
+echo >>"$at_stdout"; echo "Creating directory structure
+Creating initial archive
+Renaming
+Creating incremental archive
+First restore
+directory
+directory/file
+directory/subdir
+Second restore
+dir
+dir/subdir.0
 " | $at_diff - "$at_stdout" || at_failed=:
 case $at_status in
    77) echo 77 > "$at_status_file"; exit 77;;
    0) ;;
-   *) echo "$at_srcdir/rename03.at:26: exit code was $at_status, expected 0"
+   *) echo "$at_srcdir/rename05.at:27: exit code was $at_status, expected 0"
       at_failed=:;;
 esac
 if $at_failed; then
@@ -16048,15 +17119,15 @@ $at_traceon
     at_status=`cat "$at_status_file"`
     ;;
 
-  36 ) # 36. chtype.at:27: changed file types in incrementals
+  38 ) # 38. chtype.at:27: changed file types in incrementals
     at_setup_line='chtype.at:27'
     at_desc="changed file types in incrementals"
-    $at_quiet $ECHO_N " 36: changed file types in incrementals             $ECHO_C"
+    $at_quiet $ECHO_N " 38: changed file types in incrementals             $ECHO_C"
     at_xfail=no
       test -f $XFAILFILE && at_xfail=yes
     echo "#                             -*- compilation -*-" >> "$at_group_log"
     (
-      echo "36. chtype.at:27: testing ..."
+      echo "38. chtype.at:27: testing ..."
       $at_traceon
 
 
@@ -16558,15 +17629,15 @@ $at_traceon
     at_status=`cat "$at_status_file"`
     ;;
 
-  37 ) # 37. ignfail.at:23: ignfail
+  39 ) # 39. ignfail.at:23: ignfail
     at_setup_line='ignfail.at:23'
     at_desc="ignfail"
-    $at_quiet $ECHO_N " 37: ignfail                                        $ECHO_C"
+    $at_quiet $ECHO_N " 39: ignfail                                        $ECHO_C"
     at_xfail=no
       test -f $XFAILFILE && at_xfail=yes
     echo "#                             -*- compilation -*-" >> "$at_group_log"
     (
-      echo "37. ignfail.at:23: testing ..."
+      echo "39. ignfail.at:23: testing ..."
       $at_traceon
 
 
 at_failed=false
 echo >>"$at_stderr"; echo "-----
 tar: file: Cannot open: Permission denied
-tar: Error exit delayed from previous errors
+tar: Exiting with failure status due to previous errors
 -----
 tar: file: Warning: Cannot open: Permission denied
 -----
 tar: directory: Cannot open: Permission denied
-tar: Error exit delayed from previous errors
+tar: Exiting with failure status due to previous errors
 -----
 tar: directory: Warning: Cannot open: Permission denied
 " | $at_diff - "$at_stderr" || at_failed=:
 at_failed=false
 echo >>"$at_stderr"; echo "-----
 tar: file: Cannot open: Permission denied
-tar: Error exit delayed from previous errors
+tar: Exiting with failure status due to previous errors
 -----
 tar: file: Warning: Cannot open: Permission denied
 -----
 tar: directory: Cannot open: Permission denied
-tar: Error exit delayed from previous errors
+tar: Exiting with failure status due to previous errors
 -----
 tar: directory: Warning: Cannot open: Permission denied
 " | $at_diff - "$at_stderr" || at_failed=:
 at_failed=false
 echo >>"$at_stderr"; echo "-----
 tar: file: Cannot open: Permission denied
-tar: Error exit delayed from previous errors
+tar: Exiting with failure status due to previous errors
 -----
 tar: file: Warning: Cannot open: Permission denied
 -----
 tar: directory: Cannot open: Permission denied
-tar: Error exit delayed from previous errors
+tar: Exiting with failure status due to previous errors
 -----
 tar: directory: Warning: Cannot open: Permission denied
 " | $at_diff - "$at_stderr" || at_failed=:
 at_failed=false
 echo >>"$at_stderr"; echo "-----
 tar: file: Cannot open: Permission denied
-tar: Error exit delayed from previous errors
+tar: Exiting with failure status due to previous errors
 -----
 tar: file: Warning: Cannot open: Permission denied
 -----
 tar: directory: Cannot open: Permission denied
-tar: Error exit delayed from previous errors
+tar: Exiting with failure status due to previous errors
 -----
 tar: directory: Warning: Cannot open: Permission denied
 " | $at_diff - "$at_stderr" || at_failed=:
 at_failed=false
 echo >>"$at_stderr"; echo "-----
 tar: file: Cannot open: Permission denied
-tar: Error exit delayed from previous errors
+tar: Exiting with failure status due to previous errors
 -----
 tar: file: Warning: Cannot open: Permission denied
 -----
 tar: directory: Cannot open: Permission denied
-tar: Error exit delayed from previous errors
+tar: Exiting with failure status due to previous errors
 -----
 tar: directory: Warning: Cannot open: Permission denied
 " | $at_diff - "$at_stderr" || at_failed=:
@@ -17562,15 +18633,15 @@ $at_traceon
     at_status=`cat "$at_status_file"`
     ;;
 
-  38 ) # 38. link01.at:33: link count gt 2
+  40 ) # 40. link01.at:33: link count gt 2
     at_setup_line='link01.at:33'
     at_desc="link count gt 2"
-    $at_quiet $ECHO_N " 38: link count gt 2                                $ECHO_C"
+    $at_quiet $ECHO_N " 40: link count gt 2                                $ECHO_C"
     at_xfail=no
       test -f $XFAILFILE && at_xfail=yes
     echo "#                             -*- compilation -*-" >> "$at_group_log"
     (
-      echo "38. link01.at:33: testing ..."
+      echo "40. link01.at:33: testing ..."
       $at_traceon
 
 
@@ -18101,15 +19172,15 @@ $at_traceon
     at_status=`cat "$at_status_file"`
     ;;
 
-  39 ) # 39. longv7.at:24: long names in V7 archives
+  41 ) # 41. longv7.at:24: long names in V7 archives
     at_setup_line='longv7.at:24'
     at_desc="long names in V7 archives"
-    $at_quiet $ECHO_N " 39: long names in V7 archives                      $ECHO_C"
+    $at_quiet $ECHO_N " 41: long names in V7 archives                      $ECHO_C"
     at_xfail=no
       test -f $XFAILFILE && at_xfail=yes
     echo "#                             -*- compilation -*-" >> "$at_group_log"
     (
-      echo "39. longv7.at:24: testing ..."
+      echo "41. longv7.at:24: testing ..."
       $at_traceon
 
 
@@ -18185,7 +19256,7 @@ fi
 
 at_failed=false
 echo >>"$at_stderr"; echo "tar: this_is_a_very_long_name_for_a_directory_which_causes_problems/this_is_a_very_long_file_name_which_raises_issues.c: file name is too long (max 99); not dumped
-tar: Error exit delayed from previous errors
+tar: Exiting with failure status due to previous errors
 " | $at_diff - "$at_stderr" || at_failed=:
 echo >>"$at_stdout"; echo "separator
 this_is_a_very_long_name_for_a_directory_which_causes_problems/
@@ -18213,15 +19284,15 @@ $at_traceon
     at_status=`cat "$at_status_file"`
     ;;
 
-  40 ) # 40. long01.at:28: long file names divisible by block size
+  42 ) # 42. long01.at:28: long file names divisible by block size
     at_setup_line='long01.at:28'
     at_desc="long file names divisible by block size"
-    $at_quiet $ECHO_N " 40: long file names divisible by block size        $ECHO_C"
+    $at_quiet $ECHO_N " 42: long file names divisible by block size        $ECHO_C"
     at_xfail=no
       test -f $XFAILFILE && at_xfail=yes
     echo "#                             -*- compilation -*-" >> "$at_group_log"
     (
-      echo "40. long01.at:28: testing ..."
+      echo "42. long01.at:28: testing ..."
       $at_traceon
 
 
@@ -18401,15 +19472,15 @@ $at_traceon
     at_status=`cat "$at_status_file"`
     ;;
 
-  41 ) # 41. lustar01.at:21: ustar: unsplittable file name
+  43 ) # 43. lustar01.at:21: ustar: unsplittable file name
     at_setup_line='lustar01.at:21'
     at_desc="ustar: unsplittable file name"
-    $at_quiet $ECHO_N " 41: ustar: unsplittable file name                  $ECHO_C"
+    $at_quiet $ECHO_N " 43: ustar: unsplittable file name                  $ECHO_C"
     at_xfail=no
       test -f $XFAILFILE && at_xfail=yes
     echo "#                             -*- compilation -*-" >> "$at_group_log"
     (
-      echo "41. lustar01.at:21: testing ..."
+      echo "43. lustar01.at:21: testing ..."
       $at_traceon
 
 
@@ -18472,7 +19543,7 @@ fi
 
 at_failed=false
 echo >>"$at_stderr"; echo "tar: this_is_a_very_long_name_for_a_file_designed_to_test_generation_of_ustar_archives_by_gnu_tar_semicolon_it_will_not_fit_the_name_field_and_cannot_be_split_between_name_and_prefix: file name is too long (cannot be split); not dumped
-tar: Error exit delayed from previous errors
+tar: Exiting with failure status due to previous errors
 " | $at_diff - "$at_stderr" || at_failed=:
 $at_diff "$at_devnull" "$at_stdout" || at_failed=:
 case $at_status in
@@ -18498,15 +19569,15 @@ $at_traceon
     at_status=`cat "$at_status_file"`
     ;;
 
-  42 ) # 42. lustar02.at:21: ustar: unsplittable path name
+  44 ) # 44. lustar02.at:21: ustar: unsplittable path name
     at_setup_line='lustar02.at:21'
     at_desc="ustar: unsplittable path name"
-    $at_quiet $ECHO_N " 42: ustar: unsplittable path name                  $ECHO_C"
+    $at_quiet $ECHO_N " 44: ustar: unsplittable path name                  $ECHO_C"
     at_xfail=no
       test -f $XFAILFILE && at_xfail=yes
     echo "#                             -*- compilation -*-" >> "$at_group_log"
     (
-      echo "42. lustar02.at:21: testing ..."
+      echo "44. lustar02.at:21: testing ..."
       $at_traceon
 
 
@@ -18576,7 +19647,7 @@ fi
 
 at_failed=false
 echo >>"$at_stderr"; echo "tar: this_is_a_very_long_name_for_a_file_designed_to_test_generation_of_ustar_archives_by_gnu_tar_semicolon_it_will_not_fit_the_name_field_and_cannot_be_split_be/: file name is too long (cannot be split); not dumped
-tar: Error exit delayed from previous errors
+tar: Exiting with failure status due to previous errors
 " | $at_diff - "$at_stderr" || at_failed=:
 $at_diff "$at_devnull" "$at_stdout" || at_failed=:
 case $at_status in
@@ -18602,15 +19673,15 @@ $at_traceon
     at_status=`cat "$at_status_file"`
     ;;
 
-  43 ) # 43. lustar03.at:21: ustar: splitting long names
+  45 ) # 45. lustar03.at:21: ustar: splitting long names
     at_setup_line='lustar03.at:21'
     at_desc="ustar: splitting long names"
-    $at_quiet $ECHO_N " 43: ustar: splitting long names                    $ECHO_C"
+    $at_quiet $ECHO_N " 45: ustar: splitting long names                    $ECHO_C"
     at_xfail=no
       test -f $XFAILFILE && at_xfail=yes
     echo "#                             -*- compilation -*-" >> "$at_group_log"
     (
-      echo "43. lustar03.at:21: testing ..."
+      echo "45. lustar03.at:21: testing ..."
       $at_traceon
 
 
@@ -18712,15 +19783,15 @@ $at_traceon
     at_status=`cat "$at_status_file"`
     ;;
 
-  44 ) # 44. multiv01.at:23: multivolume dumps from pipes
+  46 ) # 46. multiv01.at:23: multivolume dumps from pipes
     at_setup_line='multiv01.at:23'
     at_desc="multivolume dumps from pipes"
-    $at_quiet $ECHO_N " 44: multivolume dumps from pipes                   $ECHO_C"
+    $at_quiet $ECHO_N " 46: multivolume dumps from pipes                   $ECHO_C"
     at_xfail=no
       test -f $XFAILFILE && at_xfail=yes
     echo "#                             -*- compilation -*-" >> "$at_group_log"
     (
-      echo "44. multiv01.at:23: testing ..."
+      echo "46. multiv01.at:23: testing ..."
       $at_traceon
 
 
@@ -19190,15 +20261,15 @@ $at_traceon
     at_status=`cat "$at_status_file"`
     ;;
 
-  45 ) # 45. multiv02.at:28: skipping a straddling member
+  47 ) # 47. multiv02.at:28: skipping a straddling member
     at_setup_line='multiv02.at:28'
     at_desc="skipping a straddling member"
-    $at_quiet $ECHO_N " 45: skipping a straddling member                   $ECHO_C"
+    $at_quiet $ECHO_N " 47: skipping a straddling member                   $ECHO_C"
     at_xfail=no
       test -f $XFAILFILE && at_xfail=yes
     echo "#                             -*- compilation -*-" >> "$at_group_log"
     (
-      echo "45. multiv02.at:28: testing ..."
+      echo "47. multiv02.at:28: testing ..."
       $at_traceon
 
 
@@ -19499,15 +20570,15 @@ $at_traceon
     at_status=`cat "$at_status_file"`
     ;;
 
-  46 ) # 46. multiv03.at:30: MV archive & long filenames
+  48 ) # 48. multiv03.at:30: MV archive & long filenames
     at_setup_line='multiv03.at:30'
     at_desc="MV archive & long filenames"
-    $at_quiet $ECHO_N " 46: MV archive & long filenames                    $ECHO_C"
+    $at_quiet $ECHO_N " 48: MV archive & long filenames                    $ECHO_C"
     at_xfail=no
       test -f $XFAILFILE && at_xfail=yes
     echo "#                             -*- compilation -*-" >> "$at_group_log"
     (
-      echo "46. multiv03.at:30: testing ..."
+      echo "48. multiv03.at:30: testing ..."
       $at_traceon
 
 
@@ -19829,15 +20900,15 @@ $at_traceon
     at_status=`cat "$at_status_file"`
     ;;
 
-  47 ) # 47. multiv04.at:36: split directory members in a MV archive
+  49 ) # 49. multiv04.at:36: split directory members in a MV archive
     at_setup_line='multiv04.at:36'
     at_desc="split directory members in a MV archive"
-    $at_quiet $ECHO_N " 47: split directory members in a MV archive        $ECHO_C"
+    $at_quiet $ECHO_N " 49: split directory members in a MV archive        $ECHO_C"
     at_xfail=no
       test -f $XFAILFILE && at_xfail=yes
     echo "#                             -*- compilation -*-" >> "$at_group_log"
     (
-      echo "47. multiv04.at:36: testing ..."
+      echo "49. multiv04.at:36: testing ..."
       $at_traceon
 
 
@@ -20083,15 +21154,15 @@ $at_traceon
     at_status=`cat "$at_status_file"`
     ;;
 
-  48 ) # 48. multiv05.at:26: Restoring after an out of sync folume
+  50 ) # 50. multiv05.at:26: Restoring after an out of sync volume
     at_setup_line='multiv05.at:26'
-    at_desc="Restoring after an out of sync folume"
-    $at_quiet $ECHO_N " 48: Restoring after an out of sync folume          $ECHO_C"
+    at_desc="Restoring after an out of sync volume"
+    $at_quiet $ECHO_N " 50: Restoring after an out of sync volume          $ECHO_C"
     at_xfail=no
       test -f $XFAILFILE && at_xfail=yes
     echo "#                             -*- compilation -*-" >> "$at_group_log"
     (
-      echo "48. multiv05.at:26: testing ..."
+      echo "50. multiv05.at:26: testing ..."
       $at_traceon
 
 
@@ -20270,14 +21341,214 @@ $at_traceon
     at_status=`cat "$at_status_file"`
     ;;
 
-  49 ) # 49. old.at:23: old archives
+  51 ) # 51. multiv06.at:27: Multivolumes with L=record_size
+    at_setup_line='multiv06.at:27'
+    at_desc="Multivolumes with L=record_size"
+    $at_quiet $ECHO_N " 51: Multivolumes with L=record_size                $ECHO_C"
+    at_xfail=no
+      test -f $XFAILFILE && at_xfail=yes
+    echo "#                             -*- compilation -*-" >> "$at_group_log"
+    (
+      echo "51. multiv06.at:27: testing ..."
+      $at_traceon
+
+
+
+
+
+  $at_traceoff
+echo "$at_srcdir/multiv06.at:30:
+mkdir gnu
+(cd gnu
+TEST_TAR_FORMAT=gnu
+export TEST_TAR_FORMAT
+TAR_OPTIONS=\"-H gnu\"
+export TAR_OPTIONS
+rm -rf *
+
+exec <&-
+decho Creating file
+genfile --length 20139 --file file
+decho Creating archive
+tar -c -M -L10 -b20 -farc.1 -farc.2 -farc.3 file
+decho Testing archive
+tar -t -M -farc.1 -farc.2 -farc.3)"
+echo multiv06.at:30 >"$at_check_line_file"
+
+at_trace_this=
+if test -n "$at_traceon"; then
+    echo 'Not enabling shell tracing (command contains an embedded newline)'
+fi
+
+if test -n "$at_trace_this"; then
+    ( $at_traceon;
+mkdir gnu
+(cd gnu
+TEST_TAR_FORMAT=gnu
+export TEST_TAR_FORMAT
+TAR_OPTIONS="-H gnu"
+export TAR_OPTIONS
+rm -rf *
+
+exec <&-
+decho Creating file
+genfile --length 20139 --file file
+decho Creating archive
+tar -c -M -L10 -b20 -farc.1 -farc.2 -farc.3 file
+decho Testing archive
+tar -t -M -farc.1 -farc.2 -farc.3) ) >"$at_stdout" 2>"$at_stder1"
+    at_status=$?
+    grep '^ *+' "$at_stder1" >&2
+    grep -v '^ *+' "$at_stder1" >"$at_stderr"
+else
+    ( :;
+mkdir gnu
+(cd gnu
+TEST_TAR_FORMAT=gnu
+export TEST_TAR_FORMAT
+TAR_OPTIONS="-H gnu"
+export TAR_OPTIONS
+rm -rf *
+
+exec <&-
+decho Creating file
+genfile --length 20139 --file file
+decho Creating archive
+tar -c -M -L10 -b20 -farc.1 -farc.2 -farc.3 file
+decho Testing archive
+tar -t -M -farc.1 -farc.2 -farc.3) ) >"$at_stdout" 2>"$at_stderr"
+    at_status=$?
+fi
+
+at_failed=false
+echo >>"$at_stderr"; echo "Creating file
+Creating archive
+Testing archive
+" | $at_diff - "$at_stderr" || at_failed=:
+echo >>"$at_stdout"; echo "Creating file
+Creating archive
+Testing archive
+file
+" | $at_diff - "$at_stdout" || at_failed=:
+case $at_status in
+   77) echo 77 > "$at_status_file"; exit 77;;
+   0) ;;
+   *) echo "$at_srcdir/multiv06.at:30: exit code was $at_status, expected 0"
+      at_failed=:;;
+esac
+if $at_failed; then
+
+
+  echo 1 > "$at_status_file"
+  exit 1
+fi
+
+$at_traceon
+$at_traceoff
+echo "$at_srcdir/multiv06.at:30:
+mkdir pax
+(cd pax
+TEST_TAR_FORMAT=pax
+export TEST_TAR_FORMAT
+TAR_OPTIONS=\"-H pax\"
+export TAR_OPTIONS
+rm -rf *
+
+exec <&-
+decho Creating file
+genfile --length 20139 --file file
+decho Creating archive
+tar -c -M -L10 -b20 -farc.1 -farc.2 -farc.3 file
+decho Testing archive
+tar -t -M -farc.1 -farc.2 -farc.3)"
+echo multiv06.at:30 >"$at_check_line_file"
+
+at_trace_this=
+if test -n "$at_traceon"; then
+    echo 'Not enabling shell tracing (command contains an embedded newline)'
+fi
+
+if test -n "$at_trace_this"; then
+    ( $at_traceon;
+mkdir pax
+(cd pax
+TEST_TAR_FORMAT=pax
+export TEST_TAR_FORMAT
+TAR_OPTIONS="-H pax"
+export TAR_OPTIONS
+rm -rf *
+
+exec <&-
+decho Creating file
+genfile --length 20139 --file file
+decho Creating archive
+tar -c -M -L10 -b20 -farc.1 -farc.2 -farc.3 file
+decho Testing archive
+tar -t -M -farc.1 -farc.2 -farc.3) ) >"$at_stdout" 2>"$at_stder1"
+    at_status=$?
+    grep '^ *+' "$at_stder1" >&2
+    grep -v '^ *+' "$at_stder1" >"$at_stderr"
+else
+    ( :;
+mkdir pax
+(cd pax
+TEST_TAR_FORMAT=pax
+export TEST_TAR_FORMAT
+TAR_OPTIONS="-H pax"
+export TAR_OPTIONS
+rm -rf *
+
+exec <&-
+decho Creating file
+genfile --length 20139 --file file
+decho Creating archive
+tar -c -M -L10 -b20 -farc.1 -farc.2 -farc.3 file
+decho Testing archive
+tar -t -M -farc.1 -farc.2 -farc.3) ) >"$at_stdout" 2>"$at_stderr"
+    at_status=$?
+fi
+
+at_failed=false
+echo >>"$at_stderr"; echo "Creating file
+Creating archive
+Testing archive
+" | $at_diff - "$at_stderr" || at_failed=:
+echo >>"$at_stdout"; echo "Creating file
+Creating archive
+Testing archive
+file
+" | $at_diff - "$at_stdout" || at_failed=:
+case $at_status in
+   77) echo 77 > "$at_status_file"; exit 77;;
+   0) ;;
+   *) echo "$at_srcdir/multiv06.at:30: exit code was $at_status, expected 0"
+      at_failed=:;;
+esac
+if $at_failed; then
+
+
+  echo 1 > "$at_status_file"
+  exit 1
+fi
+
+$at_traceon
+
+
+
+      $at_traceoff
+      $at_times_p && times >"$at_times_file"
+    ) 5>&1 2>&1 | eval $at_tee_pipe
+    at_status=`cat "$at_status_file"`
+    ;;
+
+  52 ) # 52. old.at:23: old archives
     at_setup_line='old.at:23'
     at_desc="old archives"
-    $at_quiet $ECHO_N " 49: old archives                                   $ECHO_C"
+    $at_quiet $ECHO_N " 52: old archives                                   $ECHO_C"
     at_xfail=no
     echo "#                             -*- compilation -*-" >> "$at_group_log"
     (
-      echo "49. old.at:23: testing ..."
+      echo "52. old.at:23: testing ..."
       $at_traceon
 
 
@@ -20341,15 +21612,15 @@ $at_traceon
     at_status=`cat "$at_status_file"`
     ;;
 
-  50 ) # 50. recurse.at:21: recurse
+  53 ) # 53. recurse.at:21: recurse
     at_setup_line='recurse.at:21'
     at_desc="recurse"
-    $at_quiet $ECHO_N " 50: recurse                                        $ECHO_C"
+    $at_quiet $ECHO_N " 53: recurse                                        $ECHO_C"
     at_xfail=no
       test -f $XFAILFILE && at_xfail=yes
     echo "#                             -*- compilation -*-" >> "$at_group_log"
     (
-      echo "50. recurse.at:21: testing ..."
+      echo "53. recurse.at:21: testing ..."
       $at_traceon
 
 
@@ -20745,15 +22016,15 @@ $at_traceon
     at_status=`cat "$at_status_file"`
     ;;
 
-  51 ) # 51. same-order01.at:26: working -C with --same-order
+  54 ) # 54. same-order01.at:26: working -C with --same-order
     at_setup_line='same-order01.at:26'
     at_desc="working -C with --same-order"
-    $at_quiet $ECHO_N " 51: working -C with --same-order                   $ECHO_C"
+    $at_quiet $ECHO_N " 54: working -C with --same-order                   $ECHO_C"
     at_xfail=no
       test -f $XFAILFILE && at_xfail=yes
     echo "#                             -*- compilation -*-" >> "$at_group_log"
     (
-      echo "51. same-order01.at:26: testing ..."
+      echo "54. same-order01.at:26: testing ..."
       $at_traceon
 
 
@@ -21274,15 +22545,15 @@ $at_traceon
     at_status=`cat "$at_status_file"`
     ;;
 
-  52 ) # 52. same-order02.at:25: multiple -C options
+  55 ) # 55. same-order02.at:25: multiple -C options
     at_setup_line='same-order02.at:25'
     at_desc="multiple -C options"
-    $at_quiet $ECHO_N " 52: multiple -C options                            $ECHO_C"
+    $at_quiet $ECHO_N " 55: multiple -C options                            $ECHO_C"
     at_xfail=no
       test -f $XFAILFILE && at_xfail=yes
     echo "#                             -*- compilation -*-" >> "$at_group_log"
     (
-      echo "52. same-order02.at:25: testing ..."
+      echo "55. same-order02.at:25: testing ..."
       $at_traceon
 
 
@@ -21823,15 +23094,15 @@ $at_traceon
     at_status=`cat "$at_status_file"`
     ;;
 
-  53 ) # 53. shortrec.at:25: short records
+  56 ) # 56. shortrec.at:25: short records
     at_setup_line='shortrec.at:25'
     at_desc="short records"
-    $at_quiet $ECHO_N " 53: short records                                  $ECHO_C"
+    $at_quiet $ECHO_N " 56: short records                                  $ECHO_C"
     at_xfail=no
       test -f $XFAILFILE && at_xfail=yes
     echo "#                             -*- compilation -*-" >> "$at_group_log"
     (
-      echo "53. shortrec.at:25: testing ..."
+      echo "56. shortrec.at:25: testing ..."
       $at_traceon
 
 
@@ -22282,15 +23553,15 @@ $at_traceon
     at_status=`cat "$at_status_file"`
     ;;
 
-  54 ) # 54. sparse01.at:21: sparse files
+  57 ) # 57. sparse01.at:21: sparse files
     at_setup_line='sparse01.at:21'
     at_desc="sparse files"
-    $at_quiet $ECHO_N " 54: sparse files                                   $ECHO_C"
+    $at_quiet $ECHO_N " 57: sparse files                                   $ECHO_C"
     at_xfail=no
       test -f $XFAILFILE && at_xfail=yes
     echo "#                             -*- compilation -*-" >> "$at_group_log"
     (
-      echo "54. sparse01.at:21: testing ..."
+      echo "57. sparse01.at:21: testing ..."
       $at_traceon
 
 
@@ -22621,15 +23892,15 @@ done
     at_status=`cat "$at_status_file"`
     ;;
 
-  55 ) # 55. sparse02.at:21: extracting sparse file over a pipe
+  58 ) # 58. sparse02.at:21: extracting sparse file over a pipe
     at_setup_line='sparse02.at:21'
     at_desc="extracting sparse file over a pipe"
-    $at_quiet $ECHO_N " 55: extracting sparse file over a pipe             $ECHO_C"
+    $at_quiet $ECHO_N " 58: extracting sparse file over a pipe             $ECHO_C"
     at_xfail=no
       test -f $XFAILFILE && at_xfail=yes
     echo "#                             -*- compilation -*-" >> "$at_group_log"
     (
-      echo "55. sparse02.at:21: testing ..."
+      echo "58. sparse02.at:21: testing ..."
       $at_traceon
 
 
@@ -22895,15 +24166,15 @@ $at_traceon
     at_status=`cat "$at_status_file"`
     ;;
 
-  56 ) # 56. sparse03.at:21: storing sparse files > 8G
+  59 ) # 59. sparse03.at:21: storing sparse files > 8G
     at_setup_line='sparse03.at:21'
     at_desc="storing sparse files > 8G"
-    $at_quiet $ECHO_N " 56: storing sparse files > 8G                      $ECHO_C"
+    $at_quiet $ECHO_N " 59: storing sparse files > 8G                      $ECHO_C"
     at_xfail=no
       test -f $XFAILFILE && at_xfail=yes
     echo "#                             -*- compilation -*-" >> "$at_group_log"
     (
-      echo "56. sparse03.at:21: testing ..."
+      echo "59. sparse03.at:21: testing ..."
       $at_traceon
 
 
@@ -23041,15 +24312,15 @@ done
     at_status=`cat "$at_status_file"`
     ;;
 
-  57 ) # 57. sparsemv.at:21: sparse files in MV archives
+  60 ) # 60. sparsemv.at:21: sparse files in MV archives
     at_setup_line='sparsemv.at:21'
     at_desc="sparse files in MV archives"
-    $at_quiet $ECHO_N " 57: sparse files in MV archives                    $ECHO_C"
+    $at_quiet $ECHO_N " 60: sparse files in MV archives                    $ECHO_C"
     at_xfail=no
       test -f $XFAILFILE && at_xfail=yes
     echo "#                             -*- compilation -*-" >> "$at_group_log"
     (
-      echo "57. sparsemv.at:21: testing ..."
+      echo "60. sparsemv.at:21: testing ..."
       $at_traceon
 
 
@@ -23079,18 +24350,18 @@ echo \"Pass 1: Split between data blocks\"
 echo \"Create archive\"
 tar --sparse -c --record-size=512 -M -L6 -f arc.1 -f arc.2 sparsefile || exit 1
 echo \"Test archive\"
-tar -t -M -f arc.1 -f arc.2
+tar --record-size=512 -t -M -f arc.1 -f arc.2
 echo \"Compare archive\"
-tar -d -M -f arc.1 -f arc.2
+tar --record-size=512 -d -M -f arc.1 -f arc.2
 
 echo \"Pass 2: Split within a data block\"
 genfile --sparse --file sparsefile 0 ABCDEFGHIJ 1M ABCDEFGHI || exit 77
 echo \"Create archive\"
 tar --sparse -c --record-size=512 -M -L6 -f arc.1 -f arc.2 sparsefile || exit 1
 echo \"Test archive\"
-tar -t -M -f arc.1 -f arc.2
+tar --record-size=512 -t -M -f arc.1 -f arc.2
 echo \"Compare archive\"
-tar -d -M -f arc.1 -f arc.2
+tar --record-size=512 -d -M -f arc.1 -f arc.2
 )"
 echo sparsemv.at:31 >"$at_check_line_file"
 
@@ -23115,18 +24386,18 @@ echo "Pass 1: Split between data blocks"
 echo "Create archive"
 tar --sparse -c --record-size=512 -M -L6 -f arc.1 -f arc.2 sparsefile || exit 1
 echo "Test archive"
-tar -t -M -f arc.1 -f arc.2
+tar --record-size=512 -t -M -f arc.1 -f arc.2
 echo "Compare archive"
-tar -d -M -f arc.1 -f arc.2
+tar --record-size=512 -d -M -f arc.1 -f arc.2
 
 echo "Pass 2: Split within a data block"
 genfile --sparse --file sparsefile 0 ABCDEFGHIJ 1M ABCDEFGHI || exit 77
 echo "Create archive"
 tar --sparse -c --record-size=512 -M -L6 -f arc.1 -f arc.2 sparsefile || exit 1
 echo "Test archive"
-tar -t -M -f arc.1 -f arc.2
+tar --record-size=512 -t -M -f arc.1 -f arc.2
 echo "Compare archive"
-tar -d -M -f arc.1 -f arc.2
+tar --record-size=512 -d -M -f arc.1 -f arc.2
 ) ) >"$at_stdout" 2>"$at_stder1"
     at_status=$?
     grep '^ *+' "$at_stder1" >&2
@@ -23147,18 +24418,18 @@ echo "Pass 1: Split between data blocks"
 echo "Create archive"
 tar --sparse -c --record-size=512 -M -L6 -f arc.1 -f arc.2 sparsefile || exit 1
 echo "Test archive"
-tar -t -M -f arc.1 -f arc.2
+tar --record-size=512 -t -M -f arc.1 -f arc.2
 echo "Compare archive"
-tar -d -M -f arc.1 -f arc.2
+tar --record-size=512 -d -M -f arc.1 -f arc.2
 
 echo "Pass 2: Split within a data block"
 genfile --sparse --file sparsefile 0 ABCDEFGHIJ 1M ABCDEFGHI || exit 77
 echo "Create archive"
 tar --sparse -c --record-size=512 -M -L6 -f arc.1 -f arc.2 sparsefile || exit 1
 echo "Test archive"
-tar -t -M -f arc.1 -f arc.2
+tar --record-size=512 -t -M -f arc.1 -f arc.2
 echo "Compare archive"
-tar -d -M -f arc.1 -f arc.2
+tar --record-size=512 -d -M -f arc.1 -f arc.2
 ) ) >"$at_stdout" 2>"$at_stderr"
     at_status=$?
 fi
@@ -23206,18 +24477,18 @@ echo \"Pass 1: Split between data blocks\"
 echo \"Create archive\"
 tar --sparse -c --record-size=512 -M -L6 -f arc.1 -f arc.2 sparsefile || exit 1
 echo \"Test archive\"
-tar -t -M -f arc.1 -f arc.2
+tar --record-size=512 -t -M -f arc.1 -f arc.2
 echo \"Compare archive\"
-tar -d -M -f arc.1 -f arc.2
+tar --record-size=512 -d -M -f arc.1 -f arc.2
 
 echo \"Pass 2: Split within a data block\"
 genfile --sparse --file sparsefile 0 ABCDEFGHIJ 1M ABCDEFGHI || exit 77
 echo \"Create archive\"
 tar --sparse -c --record-size=512 -M -L6 -f arc.1 -f arc.2 sparsefile || exit 1
 echo \"Test archive\"
-tar -t -M -f arc.1 -f arc.2
+tar --record-size=512 -t -M -f arc.1 -f arc.2
 echo \"Compare archive\"
-tar -d -M -f arc.1 -f arc.2
+tar --record-size=512 -d -M -f arc.1 -f arc.2
 )"
 echo sparsemv.at:31 >"$at_check_line_file"
 
@@ -23242,18 +24513,18 @@ echo "Pass 1: Split between data blocks"
 echo "Create archive"
 tar --sparse -c --record-size=512 -M -L6 -f arc.1 -f arc.2 sparsefile || exit 1
 echo "Test archive"
-tar -t -M -f arc.1 -f arc.2
+tar --record-size=512 -t -M -f arc.1 -f arc.2
 echo "Compare archive"
-tar -d -M -f arc.1 -f arc.2
+tar --record-size=512 -d -M -f arc.1 -f arc.2
 
 echo "Pass 2: Split within a data block"
 genfile --sparse --file sparsefile 0 ABCDEFGHIJ 1M ABCDEFGHI || exit 77
 echo "Create archive"
 tar --sparse -c --record-size=512 -M -L6 -f arc.1 -f arc.2 sparsefile || exit 1
 echo "Test archive"
-tar -t -M -f arc.1 -f arc.2
+tar --record-size=512 -t -M -f arc.1 -f arc.2
 echo "Compare archive"
-tar -d -M -f arc.1 -f arc.2
+tar --record-size=512 -d -M -f arc.1 -f arc.2
 ) ) >"$at_stdout" 2>"$at_stder1"
     at_status=$?
     grep '^ *+' "$at_stder1" >&2
@@ -23274,18 +24545,18 @@ echo "Pass 1: Split between data blocks"
 echo "Create archive"
 tar --sparse -c --record-size=512 -M -L6 -f arc.1 -f arc.2 sparsefile || exit 1
 echo "Test archive"
-tar -t -M -f arc.1 -f arc.2
+tar --record-size=512 -t -M -f arc.1 -f arc.2
 echo "Compare archive"
-tar -d -M -f arc.1 -f arc.2
+tar --record-size=512 -d -M -f arc.1 -f arc.2
 
 echo "Pass 2: Split within a data block"
 genfile --sparse --file sparsefile 0 ABCDEFGHIJ 1M ABCDEFGHI || exit 77
 echo "Create archive"
 tar --sparse -c --record-size=512 -M -L6 -f arc.1 -f arc.2 sparsefile || exit 1
 echo "Test archive"
-tar -t -M -f arc.1 -f arc.2
+tar --record-size=512 -t -M -f arc.1 -f arc.2
 echo "Compare archive"
-tar -d -M -f arc.1 -f arc.2
+tar --record-size=512 -d -M -f arc.1 -f arc.2
 ) ) >"$at_stdout" 2>"$at_stderr"
     at_status=$?
 fi
@@ -23326,15 +24597,15 @@ $at_traceon
     at_status=`cat "$at_status_file"`
     ;;
 
-  58 ) # 58. spmvp00.at:21: sparse files in PAX MV archives, v.0.0
+  61 ) # 61. spmvp00.at:21: sparse files in PAX MV archives, v.0.0
     at_setup_line='spmvp00.at:21'
     at_desc="sparse files in PAX MV archives, v.0.0"
-    $at_quiet $ECHO_N " 58: sparse files in PAX MV archives, v.0.0         $ECHO_C"
+    $at_quiet $ECHO_N " 61: sparse files in PAX MV archives, v.0.0         $ECHO_C"
     at_xfail=no
       test -f $XFAILFILE && at_xfail=yes
     echo "#                             -*- compilation -*-" >> "$at_group_log"
     (
-      echo "58. spmvp00.at:21: testing ..."
+      echo "61. spmvp00.at:21: testing ..."
       $at_traceon
 
 
@@ -23443,7 +24714,9 @@ tar -d -M -f arc.1 -f arc.2 -f arc.3
 fi
 
 at_failed=false
-$at_diff "$at_devnull" "$at_stderr" || at_failed=:
+echo >>"$at_stderr"; echo "tar: Record size = 12 blocks
+tar: Record size = 12 blocks
+" | $at_diff - "$at_stderr" || at_failed=:
 echo >>"$at_stdout"; echo "Pass 1: Split between data blocks
 Create archive
 Test archive
@@ -23478,15 +24751,15 @@ $at_traceon
     at_status=`cat "$at_status_file"`
     ;;
 
-  59 ) # 59. spmvp01.at:21: sparse files in PAX MV archives, v.0.1
+  62 ) # 62. spmvp01.at:21: sparse files in PAX MV archives, v.0.1
     at_setup_line='spmvp01.at:21'
     at_desc="sparse files in PAX MV archives, v.0.1"
-    $at_quiet $ECHO_N " 59: sparse files in PAX MV archives, v.0.1         $ECHO_C"
+    $at_quiet $ECHO_N " 62: sparse files in PAX MV archives, v.0.1         $ECHO_C"
     at_xfail=no
       test -f $XFAILFILE && at_xfail=yes
     echo "#                             -*- compilation -*-" >> "$at_group_log"
     (
-      echo "59. spmvp01.at:21: testing ..."
+      echo "62. spmvp01.at:21: testing ..."
       $at_traceon
 
 
@@ -23595,7 +24868,9 @@ tar -d -M -f arc.1 -f arc.2 -f arc.3
 fi
 
 at_failed=false
-$at_diff "$at_devnull" "$at_stderr" || at_failed=:
+echo >>"$at_stderr"; echo "tar: Record size = 12 blocks
+tar: Record size = 12 blocks
+" | $at_diff - "$at_stderr" || at_failed=:
 echo >>"$at_stdout"; echo "Pass 1: Split between data blocks
 Create archive
 Test archive
@@ -23630,15 +24905,15 @@ $at_traceon
     at_status=`cat "$at_status_file"`
     ;;
 
-  60 ) # 60. spmvp10.at:21: sparse files in PAX MV archives, v.1.0
+  63 ) # 63. spmvp10.at:21: sparse files in PAX MV archives, v.1.0
     at_setup_line='spmvp10.at:21'
     at_desc="sparse files in PAX MV archives, v.1.0"
-    $at_quiet $ECHO_N " 60: sparse files in PAX MV archives, v.1.0         $ECHO_C"
+    $at_quiet $ECHO_N " 63: sparse files in PAX MV archives, v.1.0         $ECHO_C"
     at_xfail=no
       test -f $XFAILFILE && at_xfail=yes
     echo "#                             -*- compilation -*-" >> "$at_group_log"
     (
-      echo "60. spmvp10.at:21: testing ..."
+      echo "63. spmvp10.at:21: testing ..."
       $at_traceon
 
 
@@ -23747,7 +25022,9 @@ tar -d -M -f arc.1 -f arc.2 -f arc.3
 fi
 
 at_failed=false
-$at_diff "$at_devnull" "$at_stderr" || at_failed=:
+echo >>"$at_stderr"; echo "tar: Record size = 12 blocks
+tar: Record size = 12 blocks
+" | $at_diff - "$at_stderr" || at_failed=:
 echo >>"$at_stdout"; echo "Pass 1: Split between data blocks
 Create archive
 Test archive
@@ -23782,15 +25059,15 @@ $at_traceon
     at_status=`cat "$at_status_file"`
     ;;
 
-  61 ) # 61. update.at:27: update unchanged directories
+  64 ) # 64. update.at:27: update unchanged directories
     at_setup_line='update.at:27'
     at_desc="update unchanged directories"
-    $at_quiet $ECHO_N " 61: update unchanged directories                   $ECHO_C"
+    $at_quiet $ECHO_N " 64: update unchanged directories                   $ECHO_C"
     at_xfail=no
       test -f $XFAILFILE && at_xfail=yes
     echo "#                             -*- compilation -*-" >> "$at_group_log"
     (
-      echo "61. update.at:27: testing ..."
+      echo "64. update.at:27: testing ..."
       $at_traceon
 
 
@@ -24326,15 +25603,15 @@ $at_traceon
     at_status=`cat "$at_status_file"`
     ;;
 
-  62 ) # 62. volume.at:23: volume
+  65 ) # 65. volume.at:23: volume
     at_setup_line='volume.at:23'
     at_desc="volume"
-    $at_quiet $ECHO_N " 62: volume                                         $ECHO_C"
+    $at_quiet $ECHO_N " 65: volume                                         $ECHO_C"
     at_xfail=no
       test -f $XFAILFILE && at_xfail=yes
     echo "#                             -*- compilation -*-" >> "$at_group_log"
     (
-      echo "62. volume.at:23: testing ..."
+      echo "65. volume.at:23: testing ..."
       $at_traceon
 
 
@@ -24584,15 +25861,15 @@ $at_traceon
     at_status=`cat "$at_status_file"`
     ;;
 
-  63 ) # 63. volsize.at:29: volume header size
+  66 ) # 66. volsize.at:29: volume header size
     at_setup_line='volsize.at:29'
     at_desc="volume header size"
-    $at_quiet $ECHO_N " 63: volume header size                             $ECHO_C"
+    $at_quiet $ECHO_N " 66: volume header size                             $ECHO_C"
     at_xfail=no
       test -f $XFAILFILE && at_xfail=yes
     echo "#                             -*- compilation -*-" >> "$at_group_log"
     (
-      echo "63. volsize.at:29: testing ..."
+      echo "66. volsize.at:29: testing ..."
       $at_traceon
 
 
@@ -24619,7 +25896,7 @@ tarball_prereq abc.tar 540f196ceddcad9e7bd2f2d7533d0474 $TEST_DATA_DIR $TEST_DAT
 echo Short Listing
 tar tf \$TEST_DATA_DIR/abc.tar
 echo Verbose Listing
-tar tfv \$TEST_DATA_DIR/abc.tar
+tar --utc -tvf \$TEST_DATA_DIR/abc.tar
 echo Extracted directory
 tar xf \$TEST_DATA_DIR/abc.tar
 find abc|sort
@@ -24651,7 +25928,7 @@ tarball_prereq abc.tar 540f196ceddcad9e7bd2f2d7533d0474 $TEST_DATA_DIR $TEST_DAT
 echo Short Listing
 tar tf $TEST_DATA_DIR/abc.tar
 echo Verbose Listing
-tar tfv $TEST_DATA_DIR/abc.tar
+tar --utc -tvf $TEST_DATA_DIR/abc.tar
 echo Extracted directory
 tar xf $TEST_DATA_DIR/abc.tar
 find abc|sort
@@ -24679,7 +25956,7 @@ tarball_prereq abc.tar 540f196ceddcad9e7bd2f2d7533d0474 $TEST_DATA_DIR $TEST_DAT
 echo Short Listing
 tar tf $TEST_DATA_DIR/abc.tar
 echo Verbose Listing
-tar tfv $TEST_DATA_DIR/abc.tar
+tar --utc -tvf $TEST_DATA_DIR/abc.tar
 echo Extracted directory
 tar xf $TEST_DATA_DIR/abc.tar
 find abc|sort
@@ -24688,13 +25965,15 @@ find abc|sort
 fi
 
 at_failed=false
-$at_diff "$at_devnull" "$at_stderr" || at_failed=:
+echo >>"$at_stderr"; echo "tar: Record size = 5 blocks
+tar: Record size = 5 blocks
+" | $at_diff - "$at_stderr" || at_failed=:
 echo >>"$at_stdout"; echo "Short Listing
 abc/not-a-file.gif
 abc/CCC
 Verbose Listing
-V--------- 0/0            1536 2006-05-09 01:07 abc/not-a-file.gif--Volume Header--
--rw-r--r-- tom/users         0 2006-04-22 22:52 abc/CCC
+V--------- 0/0            1536 2006-05-08 22:07 abc/not-a-file.gif--Volume Header--
+-rw-r--r-- tom/users         0 2006-04-22 19:52 abc/CCC
 Extracted directory
 abc
 abc/CCC
@@ -24733,7 +26012,7 @@ tarball_prereq abc.tar 540f196ceddcad9e7bd2f2d7533d0474 $TEST_DATA_DIR $TEST_DAT
 echo Short Listing
 tar tf \$TEST_DATA_DIR/abc.tar
 echo Verbose Listing
-tar tfv \$TEST_DATA_DIR/abc.tar
+tar --utc -tvf \$TEST_DATA_DIR/abc.tar
 echo Extracted directory
 tar xf \$TEST_DATA_DIR/abc.tar
 find abc|sort
@@ -24765,7 +26044,7 @@ tarball_prereq abc.tar 540f196ceddcad9e7bd2f2d7533d0474 $TEST_DATA_DIR $TEST_DAT
 echo Short Listing
 tar tf $TEST_DATA_DIR/abc.tar
 echo Verbose Listing
-tar tfv $TEST_DATA_DIR/abc.tar
+tar --utc -tvf $TEST_DATA_DIR/abc.tar
 echo Extracted directory
 tar xf $TEST_DATA_DIR/abc.tar
 find abc|sort
@@ -24793,7 +26072,7 @@ tarball_prereq abc.tar 540f196ceddcad9e7bd2f2d7533d0474 $TEST_DATA_DIR $TEST_DAT
 echo Short Listing
 tar tf $TEST_DATA_DIR/abc.tar
 echo Verbose Listing
-tar tfv $TEST_DATA_DIR/abc.tar
+tar --utc -tvf $TEST_DATA_DIR/abc.tar
 echo Extracted directory
 tar xf $TEST_DATA_DIR/abc.tar
 find abc|sort
@@ -24802,13 +26081,15 @@ find abc|sort
 fi
 
 at_failed=false
-$at_diff "$at_devnull" "$at_stderr" || at_failed=:
+echo >>"$at_stderr"; echo "tar: Record size = 5 blocks
+tar: Record size = 5 blocks
+" | $at_diff - "$at_stderr" || at_failed=:
 echo >>"$at_stdout"; echo "Short Listing
 abc/not-a-file.gif
 abc/CCC
 Verbose Listing
-V--------- 0/0            1536 2006-05-09 01:07 abc/not-a-file.gif--Volume Header--
--rw-r--r-- tom/users         0 2006-04-22 22:52 abc/CCC
+V--------- 0/0            1536 2006-05-08 22:07 abc/not-a-file.gif--Volume Header--
+-rw-r--r-- tom/users         0 2006-04-22 19:52 abc/CCC
 Extracted directory
 abc
 abc/CCC
@@ -24847,7 +26128,7 @@ tarball_prereq abc.tar 540f196ceddcad9e7bd2f2d7533d0474 $TEST_DATA_DIR $TEST_DAT
 echo Short Listing
 tar tf \$TEST_DATA_DIR/abc.tar
 echo Verbose Listing
-tar tfv \$TEST_DATA_DIR/abc.tar
+tar --utc -tvf \$TEST_DATA_DIR/abc.tar
 echo Extracted directory
 tar xf \$TEST_DATA_DIR/abc.tar
 find abc|sort
@@ -24879,7 +26160,7 @@ tarball_prereq abc.tar 540f196ceddcad9e7bd2f2d7533d0474 $TEST_DATA_DIR $TEST_DAT
 echo Short Listing
 tar tf $TEST_DATA_DIR/abc.tar
 echo Verbose Listing
-tar tfv $TEST_DATA_DIR/abc.tar
+tar --utc -tvf $TEST_DATA_DIR/abc.tar
 echo Extracted directory
 tar xf $TEST_DATA_DIR/abc.tar
 find abc|sort
@@ -24907,7 +26188,7 @@ tarball_prereq abc.tar 540f196ceddcad9e7bd2f2d7533d0474 $TEST_DATA_DIR $TEST_DAT
 echo Short Listing
 tar tf $TEST_DATA_DIR/abc.tar
 echo Verbose Listing
-tar tfv $TEST_DATA_DIR/abc.tar
+tar --utc -tvf $TEST_DATA_DIR/abc.tar
 echo Extracted directory
 tar xf $TEST_DATA_DIR/abc.tar
 find abc|sort
@@ -24916,13 +26197,15 @@ find abc|sort
 fi
 
 at_failed=false
-$at_diff "$at_devnull" "$at_stderr" || at_failed=:
+echo >>"$at_stderr"; echo "tar: Record size = 5 blocks
+tar: Record size = 5 blocks
+" | $at_diff - "$at_stderr" || at_failed=:
 echo >>"$at_stdout"; echo "Short Listing
 abc/not-a-file.gif
 abc/CCC
 Verbose Listing
-V--------- 0/0            1536 2006-05-09 01:07 abc/not-a-file.gif--Volume Header--
--rw-r--r-- tom/users         0 2006-04-22 22:52 abc/CCC
+V--------- 0/0            1536 2006-05-08 22:07 abc/not-a-file.gif--Volume Header--
+-rw-r--r-- tom/users         0 2006-04-22 19:52 abc/CCC
 Extracted directory
 abc
 abc/CCC
@@ -24961,7 +26244,7 @@ tarball_prereq abc.tar 540f196ceddcad9e7bd2f2d7533d0474 $TEST_DATA_DIR $TEST_DAT
 echo Short Listing
 tar tf \$TEST_DATA_DIR/abc.tar
 echo Verbose Listing
-tar tfv \$TEST_DATA_DIR/abc.tar
+tar --utc -tvf \$TEST_DATA_DIR/abc.tar
 echo Extracted directory
 tar xf \$TEST_DATA_DIR/abc.tar
 find abc|sort
@@ -24993,7 +26276,7 @@ tarball_prereq abc.tar 540f196ceddcad9e7bd2f2d7533d0474 $TEST_DATA_DIR $TEST_DAT
 echo Short Listing
 tar tf $TEST_DATA_DIR/abc.tar
 echo Verbose Listing
-tar tfv $TEST_DATA_DIR/abc.tar
+tar --utc -tvf $TEST_DATA_DIR/abc.tar
 echo Extracted directory
 tar xf $TEST_DATA_DIR/abc.tar
 find abc|sort
@@ -25021,7 +26304,7 @@ tarball_prereq abc.tar 540f196ceddcad9e7bd2f2d7533d0474 $TEST_DATA_DIR $TEST_DAT
 echo Short Listing
 tar tf $TEST_DATA_DIR/abc.tar
 echo Verbose Listing
-tar tfv $TEST_DATA_DIR/abc.tar
+tar --utc -tvf $TEST_DATA_DIR/abc.tar
 echo Extracted directory
 tar xf $TEST_DATA_DIR/abc.tar
 find abc|sort
@@ -25030,13 +26313,15 @@ find abc|sort
 fi
 
 at_failed=false
-$at_diff "$at_devnull" "$at_stderr" || at_failed=:
+echo >>"$at_stderr"; echo "tar: Record size = 5 blocks
+tar: Record size = 5 blocks
+" | $at_diff - "$at_stderr" || at_failed=:
 echo >>"$at_stdout"; echo "Short Listing
 abc/not-a-file.gif
 abc/CCC
 Verbose Listing
-V--------- 0/0            1536 2006-05-09 01:07 abc/not-a-file.gif--Volume Header--
--rw-r--r-- tom/users         0 2006-04-22 22:52 abc/CCC
+V--------- 0/0            1536 2006-05-08 22:07 abc/not-a-file.gif--Volume Header--
+-rw-r--r-- tom/users         0 2006-04-22 19:52 abc/CCC
 Extracted directory
 abc
 abc/CCC
@@ -25075,7 +26360,7 @@ tarball_prereq abc.tar 540f196ceddcad9e7bd2f2d7533d0474 $TEST_DATA_DIR $TEST_DAT
 echo Short Listing
 tar tf \$TEST_DATA_DIR/abc.tar
 echo Verbose Listing
-tar tfv \$TEST_DATA_DIR/abc.tar
+tar --utc -tvf \$TEST_DATA_DIR/abc.tar
 echo Extracted directory
 tar xf \$TEST_DATA_DIR/abc.tar
 find abc|sort
@@ -25107,7 +26392,7 @@ tarball_prereq abc.tar 540f196ceddcad9e7bd2f2d7533d0474 $TEST_DATA_DIR $TEST_DAT
 echo Short Listing
 tar tf $TEST_DATA_DIR/abc.tar
 echo Verbose Listing
-tar tfv $TEST_DATA_DIR/abc.tar
+tar --utc -tvf $TEST_DATA_DIR/abc.tar
 echo Extracted directory
 tar xf $TEST_DATA_DIR/abc.tar
 find abc|sort
@@ -25135,7 +26420,7 @@ tarball_prereq abc.tar 540f196ceddcad9e7bd2f2d7533d0474 $TEST_DATA_DIR $TEST_DAT
 echo Short Listing
 tar tf $TEST_DATA_DIR/abc.tar
 echo Verbose Listing
-tar tfv $TEST_DATA_DIR/abc.tar
+tar --utc -tvf $TEST_DATA_DIR/abc.tar
 echo Extracted directory
 tar xf $TEST_DATA_DIR/abc.tar
 find abc|sort
@@ -25144,13 +26429,15 @@ find abc|sort
 fi
 
 at_failed=false
-$at_diff "$at_devnull" "$at_stderr" || at_failed=:
+echo >>"$at_stderr"; echo "tar: Record size = 5 blocks
+tar: Record size = 5 blocks
+" | $at_diff - "$at_stderr" || at_failed=:
 echo >>"$at_stdout"; echo "Short Listing
 abc/not-a-file.gif
 abc/CCC
 Verbose Listing
-V--------- 0/0            1536 2006-05-09 01:07 abc/not-a-file.gif--Volume Header--
--rw-r--r-- tom/users         0 2006-04-22 22:52 abc/CCC
+V--------- 0/0            1536 2006-05-08 22:07 abc/not-a-file.gif--Volume Header--
+-rw-r--r-- tom/users         0 2006-04-22 19:52 abc/CCC
 Extracted directory
 abc
 abc/CCC
@@ -25178,15 +26465,15 @@ $at_traceon
     at_status=`cat "$at_status_file"`
     ;;
 
-  64 ) # 64. comprec.at:21: compressed format recognition
+  67 ) # 67. comprec.at:21: compressed format recognition
     at_setup_line='comprec.at:21'
     at_desc="compressed format recognition"
-    $at_quiet $ECHO_N " 64: compressed format recognition                  $ECHO_C"
+    $at_quiet $ECHO_N " 67: compressed format recognition                  $ECHO_C"
     at_xfail=no
       test -f $XFAILFILE && at_xfail=yes
     echo "#                             -*- compilation -*-" >> "$at_group_log"
     (
-      echo "64. comprec.at:21: testing ..."
+      echo "67. comprec.at:21: testing ..."
       $at_traceon
 
 
@@ -25683,15 +26970,15 @@ $at_traceon
     at_status=`cat "$at_status_file"`
     ;;
 
-  65 ) # 65. shortfile.at:26: short input files
+  68 ) # 68. shortfile.at:26: short input files
     at_setup_line='shortfile.at:26'
     at_desc="short input files"
-    $at_quiet $ECHO_N " 65: short input files                              $ECHO_C"
+    $at_quiet $ECHO_N " 68: short input files                              $ECHO_C"
     at_xfail=no
       test -f $XFAILFILE && at_xfail=yes
     echo "#                             -*- compilation -*-" >> "$at_group_log"
     (
-      echo "65. shortfile.at:26: testing ..."
+      echo "68. shortfile.at:26: testing ..."
       $at_traceon
 
 
@@ -25752,7 +27039,7 @@ fi
 
 at_failed=false
 echo >>"$at_stderr"; echo "tar: This does not look like a tar archive
-tar: Error exit delayed from previous errors
+tar: Exiting with failure status due to previous errors
 " | $at_diff - "$at_stderr" || at_failed=:
 $at_diff "$at_devnull" "$at_stdout" || at_failed=:
 case $at_status in
@@ -25778,15 +27065,15 @@ $at_traceon
     at_status=`cat "$at_status_file"`
     ;;
 
-  66 ) # 66. shortupd.at:29: updating short archives
+  69 ) # 69. shortupd.at:29: updating short archives
     at_setup_line='shortupd.at:29'
     at_desc="updating short archives"
-    $at_quiet $ECHO_N " 66: updating short archives                        $ECHO_C"
+    $at_quiet $ECHO_N " 69: updating short archives                        $ECHO_C"
     at_xfail=no
       test -f $XFAILFILE && at_xfail=yes
     echo "#                             -*- compilation -*-" >> "$at_group_log"
     (
-      echo "66. shortupd.at:29: testing ..."
+      echo "69. shortupd.at:29: testing ..."
       $at_traceon
 
 
@@ -26147,15 +27434,15 @@ $at_traceon
     at_status=`cat "$at_status_file"`
     ;;
 
-  67 ) # 67. truncate.at:29: truncate
+  70 ) # 70. truncate.at:29: truncate
     at_setup_line='truncate.at:29'
     at_desc="truncate"
-    $at_quiet $ECHO_N " 67: truncate                                       $ECHO_C"
+    $at_quiet $ECHO_N " 70: truncate                                       $ECHO_C"
     at_xfail=no
       test -f $XFAILFILE && at_xfail=yes
     echo "#                             -*- compilation -*-" >> "$at_group_log"
     (
-      echo "67. truncate.at:29: testing ..."
+      echo "70. truncate.at:29: testing ..."
       $at_traceon
 
 
@@ -26631,15 +27918,15 @@ $at_traceon
     at_status=`cat "$at_status_file"`
     ;;
 
-  68 ) # 68. grow.at:24: grow
+  71 ) # 71. grow.at:24: grow
     at_setup_line='grow.at:24'
     at_desc="grow"
-    $at_quiet $ECHO_N " 68: grow                                           $ECHO_C"
+    $at_quiet $ECHO_N " 71: grow                                           $ECHO_C"
     at_xfail=no
       test -f $XFAILFILE && at_xfail=yes
     echo "#                             -*- compilation -*-" >> "$at_group_log"
     (
-      echo "68. grow.at:24: testing ..."
+      echo "71. grow.at:24: testing ..."
       $at_traceon
 
 
@@ -27045,14 +28332,14 @@ $at_traceon
     at_status=`cat "$at_status_file"`
     ;;
 
-  69 ) # 69. gtarfail.at:21: gtarfail
+  72 ) # 72. gtarfail.at:21: gtarfail
     at_setup_line='gtarfail.at:21'
     at_desc="gtarfail"
-    $at_quiet $ECHO_N " 69: gtarfail                                       $ECHO_C"
+    $at_quiet $ECHO_N " 72: gtarfail                                       $ECHO_C"
     at_xfail=no
     echo "#                             -*- compilation -*-" >> "$at_group_log"
     (
-      echo "69. gtarfail.at:21: testing ..."
+      echo "72. gtarfail.at:21: testing ..."
       $at_traceon
 
 
@@ -27130,14 +28417,14 @@ $at_traceon
     at_status=`cat "$at_status_file"`
     ;;
 
-  70 ) # 70. gtarfail2.at:21: gtarfail2
+  73 ) # 73. gtarfail2.at:21: gtarfail2
     at_setup_line='gtarfail2.at:21'
     at_desc="gtarfail2"
-    $at_quiet $ECHO_N " 70: gtarfail2                                      $ECHO_C"
+    $at_quiet $ECHO_N " 73: gtarfail2                                      $ECHO_C"
     at_xfail=no
     echo "#                             -*- compilation -*-" >> "$at_group_log"
     (
-      echo "70. gtarfail2.at:21: testing ..."
+      echo "73. gtarfail2.at:21: testing ..."
       $at_traceon
 
 
@@ -27216,14 +28503,14 @@ $at_traceon
     at_status=`cat "$at_status_file"`
     ;;
 
-  71 ) # 71. multi-fail.at:21: multi-fail
+  74 ) # 74. multi-fail.at:21: multi-fail
     at_setup_line='multi-fail.at:21'
     at_desc="multi-fail"
-    $at_quiet $ECHO_N " 71: multi-fail                                     $ECHO_C"
+    $at_quiet $ECHO_N " 74: multi-fail                                     $ECHO_C"
     at_xfail=no
     echo "#                             -*- compilation -*-" >> "$at_group_log"
     (
-      echo "71. multi-fail.at:21: testing ..."
+      echo "74. multi-fail.at:21: testing ..."
       $at_traceon
 
 
@@ -27362,14 +28649,14 @@ $at_traceon
     at_status=`cat "$at_status_file"`
     ;;
 
-  72 ) # 72. ustar-big-2g.at:21: ustar-big-2g
+  75 ) # 75. ustar-big-2g.at:21: ustar-big-2g
     at_setup_line='ustar-big-2g.at:21'
     at_desc="ustar-big-2g"
-    $at_quiet $ECHO_N " 72: ustar-big-2g                                   $ECHO_C"
+    $at_quiet $ECHO_N " 75: ustar-big-2g                                   $ECHO_C"
     at_xfail=no
     echo "#                             -*- compilation -*-" >> "$at_group_log"
     (
-      echo "72. ustar-big-2g.at:21: testing ..."
+      echo "75. ustar-big-2g.at:21: testing ..."
       $at_traceon
 
 
@@ -27465,14 +28752,14 @@ done
     at_status=`cat "$at_status_file"`
     ;;
 
-  73 ) # 73. ustar-big-8g.at:21: ustar-big-8g
+  76 ) # 76. ustar-big-8g.at:21: ustar-big-8g
     at_setup_line='ustar-big-8g.at:21'
     at_desc="ustar-big-8g"
-    $at_quiet $ECHO_N " 73: ustar-big-8g                                   $ECHO_C"
+    $at_quiet $ECHO_N " 76: ustar-big-8g                                   $ECHO_C"
     at_xfail=no
     echo "#                             -*- compilation -*-" >> "$at_group_log"
     (
-      echo "73. ustar-big-8g.at:21: testing ..."
+      echo "76. ustar-big-8g.at:21: testing ..."
       $at_traceon
 
 
@@ -27568,14 +28855,14 @@ done
     at_status=`cat "$at_status_file"`
     ;;
 
-  74 ) # 74. pax-big-10g.at:21: pax-big-10g
+  77 ) # 77. pax-big-10g.at:21: pax-big-10g
     at_setup_line='pax-big-10g.at:21'
     at_desc="pax-big-10g"
-    $at_quiet $ECHO_N " 74: pax-big-10g                                    $ECHO_C"
+    $at_quiet $ECHO_N " 77: pax-big-10g                                    $ECHO_C"
     at_xfail=no
     echo "#                             -*- compilation -*-" >> "$at_group_log"
     (
-      echo "74. pax-big-10g.at:21: testing ..."
+      echo "77. pax-big-10g.at:21: testing ..."
       $at_traceon
 
 
@@ -27961,7 +29248,7 @@ _ASBOX
   echo "Please send \`${at_testdir+${at_testdir}/}$as_me.log' and all information you think might help:"
   echo
   echo "   To: <bug-tar@gnu.org>"
-  echo "   Subject: [GNU tar 1.20] $as_me:$at_fail_list${at_fail_list:+ failed${at_xpass_list:+,}}$at_xpass_list${at_xpass_list:+ passed unexpectedly}"
+  echo "   Subject: [GNU tar 1.21] $as_me:$at_fail_list${at_fail_list:+ failed${at_xpass_list:+,}}$at_xpass_list${at_xpass_list:+ passed unexpectedly}"
   echo
   if test $at_debug_p = false; then
     echo