File libtool-dont_load_from_current_dir.patch of Package libtool

Index: libltdl/ltdl.c
===================================================================
--- libltdl/ltdl.c.orig	2008-09-05 13:54:41.000000000 +0200
+++ libltdl/ltdl.c	2009-11-18 16:09:06.826056240 +0100
@@ -529,7 +529,8 @@ find_module (lt_dlhandle *handle, const
   /* Try to open the old library first; if it was dlpreopened,
      we want the preopened version of it, even if a dlopenable
      module is available.  */
-  if (old_name && tryall_dlopen (handle, old_name, advise, 0) == 0)
+  if (old_name && tryall_dlopen (handle, old_name,
+             advise, lt_dlloader_find ("lt_preopen") ) == 0)
     {
       return 0;
     }
@@ -1345,7 +1346,7 @@ try_dlopen (lt_dlhandle *phandle, const
 	    }
 #endif
 	}
-      if (!file)
+      else
 	{
 	  file = fopen (attempt, LT_READTEXT_MODE);
 	}

--- Makefile.am	2008-09-05 13:54:41.000000000 +0200
+++ Makefile.am	2009-11-16 14:11:59.000000000 +0100
@@ -454,6 +454,7 @@ TESTSUITE_AT	= tests/testsuite.at \
 		  tests/am-subdir.at \
 		  tests/lt_dlexit.at \
 		  tests/lt_dladvise.at \
+		  tests/lt_dlopen_a.at \
 		  tests/ltdl-api.at \
 		  tests/need_lib_prefix.at \
 		  tests/standalone.at \

--- tests/lt_dlopen_a.at	1970-01-01 01:00:00.000000000 +0100
+++ tests/lt_dlopen_a.at	2009-11-16 14:11:59.000000000 +0100
@@ -0,0 +1,97 @@
+# lt_dlopen_a.at -- test libltdl functionality                -*- Autotest -*-
+#
+#   Copyright (C) 2009 Free Software Foundation, Inc.
+#   This file is part of GNU Libtool.
+#
+# GNU Libtool is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License as
+# published by the Free Software Foundation; either version 2 of
+# the License, or (at your option) any later version.
+#
+# GNU Libtool is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with GNU Libtool; see the file COPYING.  If not, a copy
+# can be downloaded from  http://www.gnu.org/licenses/gpl.html,
+# or obtained by writing to the Free Software Foundation, Inc.,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+####
+
+AT_SETUP([lt_dlopen archive])
+AT_KEYWORDS([libltdl lt_dlopen_a])
+
+AT_DATA([main.c],
+[[#include <ltdl.h>
+#include <stdio.h>
+
+/* This dlopen() in the main executable should override any dlopen()s in
+   shared libraries etc.
+
+   If that is not the case (or the platform does not use dlopen()) then this
+   test should exit 77, causing the test to SKIP.
+*/
+static int retcde = 77;
+
+void * dlopen(const char *path, int mode) {
+  if (!(strcmp(path,"plugin.a") && strcmp(path,"plugin.lib")))
+    {
+      fprintf(stderr,"Tried to open archive %s\n",path);
+      retcde = 1;
+    }
+  else
+    {
+      fprintf(stderr,"Opening ... %s\n", path);
+      if (retcde == 77) retcde = 0;
+    }
+  return NULL;
+}
+
+int
+main (int argc, char* argv[])
+{
+  int err = 0;
+  lt_dlhandle plugin_handle;
+
+  lt_dlinit ();
+  plugin_handle = lt_dlopenext (argv[1]);
+  lt_dlexit ();
+  return retcde;
+}
+]])
+
+AT_DATA([plugin.c],
+[[
+int i = 1;
+]])
+
+: ${LTDLINCL="-I$abs_top_srcdir/libltdl"}
+: ${LIBLTDL="$abs_builddir/../libltdl/libltdlc.la"}
+
+CPPFLAGS="$LTDLINCL $CPPFLAGS"
+inst=`pwd`/inst
+libdir=$inst/lib
+bindir=$inst/bin
+
+AT_CHECK([$CC $CPPFLAGS $CFLAGS -c main.c || exit 77],[],[ignore],[ignore])
+AT_CHECK([$LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c plugin.c || exit 77],
+	 [], [ignore], [ignore])
+AT_CHECK([$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o plugin.la -rpath ]dnl
+	 [$libdir -module -no-undefined -avoid-version plugin.lo || exit 77],
+	 [], [ignore], [ignore])
+
+AT_CHECK([$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main$EXEEXT ]dnl
+	 [main.$OBJEXT -dlopen plugin.la $LIBLTDL || exit 77],
+	 [], [ignore], [ignore])
+
+mkdir -p $libdir
+mkdir -p $bindir
+
+AT_CHECK([$LIBTOOL --mode=install cp plugin.la $libdir],[], [ignore], [ignore])
+AT_CHECK([$LIBTOOL --mode=install cp main$EXEEXT $bindir],[], [ignore], [ignore])
+AT_CHECK([test -f $libdir/plugin.a || exit 77])
+LT_AT_EXEC_CHECK([$bindir/main $libdir/plugin.la], [], [ignore], [ignore])
+
+AT_CLEANUP

--- tests/testsuite	2008-09-07 19:52:24.000000000 +0200
+++ tests/testsuite	2009-11-16 14:14:40.000000000 +0100
@@ -1,17 +1,18 @@
 #! /bin/sh
-# Generated from testsuite.at by GNU Autoconf 2.62.
+# Generated from testsuite.at by GNU Autoconf 2.64.
+#
+# Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008,
+# 2009 Free Software Foundation, Inc.
 #
-# Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
-# Free Software Foundation, Inc.
 # This test suite is free software; the Free Software Foundation gives
 # unlimited permission to copy, distribute and modify it.
-## --------------------- ##
-## M4sh Initialization.  ##
-## --------------------- ##
+## -------------------- ##
+## M4sh Initialization. ##
+## -------------------- ##
 
 # Be more Bourne compatible
 DUALCASE=1; export DUALCASE # for MKS sh
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
   emulate sh
   NULLCMD=:
   # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
@@ -19,23 +20,15 @@ if test -n "${ZSH_VERSION+set}" && (emul
   alias -g '${1+"$@"}'='"$@"'
   setopt NO_GLOB_SUBST
 else
-  case `(set -o) 2>/dev/null` in
-  *posix*) set -o posix ;;
+  case `(set -o) 2>/dev/null` in #(
+  *posix*) :
+    set -o posix ;; #(
+  *) :
+     ;;
 esac
-
 fi
 
 
-
-
-# PATH needs CR
-# Avoid depending upon Character Ranges.
-as_cr_letters='abcdefghijklmnopqrstuvwxyz'
-as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
-as_cr_Letters=$as_cr_letters$as_cr_LETTERS
-as_cr_digits='0123456789'
-as_cr_alnum=$as_cr_Letters$as_cr_digits
-
 as_nl='
 '
 export as_nl
@@ -43,7 +36,13 @@ export as_nl
 as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
 as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
 as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
-if (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
+# Prefer a ksh shell builtin over an external printf program on Solaris,
+# but without wasting forks for bash or zsh.
+if test -z "$BASH_VERSION$ZSH_VERSION" \
+    && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
+  as_echo='print -r --'
+  as_echo_n='print -rn --'
+elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
   as_echo='printf %s\n'
   as_echo_n='printf %s'
 else
@@ -54,7 +53,7 @@ else
     as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
     as_echo_n_body='eval
       arg=$1;
-      case $arg in
+      case $arg in #(
       *"$as_nl"*)
 	expr "X$arg" : "X\\(.*\\)$as_nl";
 	arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
@@ -77,13 +76,6 @@ if test "${PATH_SEPARATOR+set}" != set;
   }
 fi
 
-# Support unset when possible.
-if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
-  as_unset=unset
-else
-  as_unset=false
-fi
-
 
 # IFS
 # We need space, tab and new line, in precisely that order.  Quoting is
@@ -93,15 +85,15 @@ fi
 IFS=" ""	$as_nl"
 
 # Find who we are.  Look in the path if we contain no directory separator.
-case $0 in
+case $0 in #((
   *[\\/]* ) as_myself=$0 ;;
   *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
-done
+    test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
+  done
 IFS=$as_save_IFS
 
      ;;
@@ -113,12 +105,16 @@ if test "x$as_myself" = x; then
 fi
 if test ! -f "$as_myself"; then
   $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
-  { (exit 1); exit 1; }
+  exit 1
 fi
 
-# Work around bugs in pre-3.0 UWIN ksh.
-for as_var in ENV MAIL MAILPATH
-do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
+# Unset variables that we do not need and which cause bugs (e.g. in
+# pre-3.0 UWIN ksh).  But do not cause bugs in bash 2.01; the "|| exit 1"
+# suppresses any "Segmentation fault" message there.  '((' could
+# trigger a bug in pdksh 5.2.14.
+for as_var in BASH_ENV ENV MAIL MAILPATH
+do eval test x\${$as_var+set} = xset \
+  && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
 done
 PS1='$ '
 PS2='> '
@@ -130,330 +126,299 @@ export LC_ALL
 LANGUAGE=C
 export LANGUAGE
 
-# Required to use basename.
-if expr a : '\(a\)' >/dev/null 2>&1 &&
-   test "X`expr 00001 : '.*\(...\)'`" = X001; then
-  as_expr=expr
-else
-  as_expr=false
-fi
-
-if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
-  as_basename=basename
-else
-  as_basename=false
-fi
-
-
-# Name of the executable.
-as_me=`$as_basename -- "$0" ||
-$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
-	 X"$0" : 'X\(//\)$' \| \
-	 X"$0" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X/"$0" |
-    sed '/^.*\/\([^/][^/]*\)\/*$/{
-	    s//\1/
-	    q
-	  }
-	  /^X\/\(\/\/\)$/{
-	    s//\1/
-	    q
-	  }
-	  /^X\/\(\/\).*/{
-	    s//\1/
-	    q
-	  }
-	  s/.*/./; q'`
-
 # CDPATH.
-$as_unset CDPATH
-
+(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
 
 if test "x$CONFIG_SHELL" = x; then
-  if (eval ":") 2>/dev/null; then
-  as_have_required=yes
+  as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then :
+  emulate sh
+  NULLCMD=:
+  # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which
+  # is contrary to our usage.  Disable this feature.
+  alias -g '\${1+\"\$@\"}'='\"\$@\"'
+  setopt NO_GLOB_SUBST
 else
-  as_have_required=no
+  case \`(set -o) 2>/dev/null\` in #(
+  *posix*) :
+    set -o posix ;; #(
+  *) :
+     ;;
+esac
 fi
-
-  if test $as_have_required = yes &&	 (eval ":
-(as_func_return () {
-  (exit \$1)
-}
-as_func_success () {
-  as_func_return 0
-}
-as_func_failure () {
-  as_func_return 1
-}
-as_func_ret_success () {
-  return 0
-}
-as_func_ret_failure () {
-  return 1
-}
+"
+  as_required="as_fn_return () { (exit \$1); }
+as_fn_success () { as_fn_return 0; }
+as_fn_failure () { as_fn_return 1; }
+as_fn_ret_success () { return 0; }
+as_fn_ret_failure () { return 1; }
 
 exitcode=0
-if as_func_success; then
-  :
-else
-  exitcode=1
-  echo as_func_success failed.
-fi
-
-if as_func_failure; then
-  exitcode=1
-  echo as_func_failure succeeded.
-fi
-
-if as_func_ret_success; then
-  :
-else
-  exitcode=1
-  echo as_func_ret_success failed.
-fi
-
-if as_func_ret_failure; then
-  exitcode=1
-  echo as_func_ret_failure succeeded.
-fi
-
-if ( set x; as_func_ret_success y && test x = \"\$1\" ); then
-  :
+as_fn_success || { exitcode=1; echo as_fn_success failed.; }
+as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; }
+as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; }
+as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; }
+if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then :
+
+else
+  exitcode=1; echo positional parameters were not saved.
+fi
+test x\$exitcode = x0 || exit 1"
+  as_suggested="  as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO
+  as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO
+  eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" &&
+  test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1
+test \$(( 1 + 1 )) = 2 || exit 1"
+  if (eval "$as_required") 2>/dev/null; then :
+  as_have_required=yes
 else
-  exitcode=1
-  echo positional parameters were not saved.
+  as_have_required=no
 fi
+  if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then :
 
-test \$exitcode = 0) || { (exit 1); exit 1; }
-
-(
-  as_lineno_1=\$LINENO
-  as_lineno_2=\$LINENO
-  test \"x\$as_lineno_1\" != \"x\$as_lineno_2\" &&
-  test \"x\`expr \$as_lineno_1 + 1\`\" = \"x\$as_lineno_2\") || { (exit 1); exit 1; }
-") 2> /dev/null; then
-  :
 else
-  as_candidate_shells=
-    as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+as_found=false
 for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  case $as_dir in
+  as_found=:
+  case $as_dir in #(
 	 /*)
 	   for as_base in sh bash ksh sh5; do
-	     as_candidate_shells="$as_candidate_shells $as_dir/$as_base"
+	     # Try only shells that exist, to save several forks.
+	     as_shell=$as_dir/$as_base
+	     if { test -f "$as_shell" || test -f "$as_shell.exe"; } &&
+		    { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then :
+  CONFIG_SHELL=$as_shell as_have_required=yes
+		   if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then :
+  break 2
+fi
+fi
 	   done;;
        esac
+  as_found=false
 done
+$as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } &&
+	      { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then :
+  CONFIG_SHELL=$SHELL as_have_required=yes
+fi; }
 IFS=$as_save_IFS
 
 
-      for as_shell in $as_candidate_shells $SHELL; do
-	 # Try only shells that exist, to save several forks.
-	 if { test -f "$as_shell" || test -f "$as_shell.exe"; } &&
-		{ ("$as_shell") 2> /dev/null <<\_ASEOF
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
-  emulate sh
-  NULLCMD=:
-  # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
-  # is contrary to our usage.  Disable this feature.
-  alias -g '${1+"$@"}'='"$@"'
-  setopt NO_GLOB_SUBST
-else
-  case `(set -o) 2>/dev/null` in
-  *posix*) set -o posix ;;
-esac
-
-fi
-
-
-:
-_ASEOF
-}; then
-  CONFIG_SHELL=$as_shell
-	       as_have_required=yes
-	       if { "$as_shell" 2> /dev/null <<\_ASEOF
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
-  emulate sh
-  NULLCMD=:
-  # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
-  # is contrary to our usage.  Disable this feature.
-  alias -g '${1+"$@"}'='"$@"'
-  setopt NO_GLOB_SUBST
-else
-  case `(set -o) 2>/dev/null` in
-  *posix*) set -o posix ;;
-esac
-
-fi
-
-
-:
-(as_func_return () {
-  (exit $1)
-}
-as_func_success () {
-  as_func_return 0
-}
-as_func_failure () {
-  as_func_return 1
-}
-as_func_ret_success () {
-  return 0
-}
-as_func_ret_failure () {
-  return 1
-}
-
-exitcode=0
-if as_func_success; then
-  :
-else
-  exitcode=1
-  echo as_func_success failed.
-fi
-
-if as_func_failure; then
-  exitcode=1
-  echo as_func_failure succeeded.
-fi
-
-if as_func_ret_success; then
-  :
-else
-  exitcode=1
-  echo as_func_ret_success failed.
-fi
-
-if as_func_ret_failure; then
-  exitcode=1
-  echo as_func_ret_failure succeeded.
+      if test "x$CONFIG_SHELL" != x; then :
+  # We cannot yet assume a decent shell, so we have to provide a
+	# neutralization value for shells without unset; and this also
+	# works around shells that cannot unset nonexistent variables.
+	BASH_ENV=/dev/null
+	ENV=/dev/null
+	(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
+	export CONFIG_SHELL
+	exec "$CONFIG_SHELL" "$as_myself" ${1+"$@"}
 fi
 
-if ( set x; as_func_ret_success y && test x = "$1" ); then
-  :
-else
-  exitcode=1
-  echo positional parameters were not saved.
+    if test x$as_have_required = xno; then :
+  $as_echo "$0: This script requires a shell more modern than all"
+  $as_echo "$0: the shells that I found on your system."
+  if test x${ZSH_VERSION+set} = xset ; then
+    $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should"
+    $as_echo "$0: be upgraded to zsh 4.3.4 or later."
+  else
+    $as_echo "$0: Please tell bug-autoconf@gnu.org about your system,
+$0: including any error possibly output before this
+$0: message. Then install a modern shell, or manually run
+$0: the script under such a shell if you do have one."
+  fi
+  exit 1
 fi
-
-test $exitcode = 0) || { (exit 1); exit 1; }
-
-(
-  as_lineno_1=$LINENO
-  as_lineno_2=$LINENO
-  test "x$as_lineno_1" != "x$as_lineno_2" &&
-  test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2") || { (exit 1); exit 1; }
-
-_ASEOF
-}; then
-  break
 fi
-
 fi
+SHELL=${CONFIG_SHELL-/bin/sh}
+export SHELL
+# Unset more variables known to interfere with behavior of common tools.
+CLICOLOR_FORCE= GREP_OPTIONS=
+unset CLICOLOR_FORCE GREP_OPTIONS
 
-      done
+## --------------------- ##
+## M4sh Shell Functions. ##
+## --------------------- ##
+# as_fn_unset VAR
+# ---------------
+# Portably unset VAR.
+as_fn_unset ()
+{
+  { eval $1=; unset $1;}
+}
+as_unset=as_fn_unset
 
-      if test "x$CONFIG_SHELL" != x; then
-  for as_var in BASH_ENV ENV
-	do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
-	done
-	export CONFIG_SHELL
-	exec "$CONFIG_SHELL" "$as_myself" ${1+"$@"}
-fi
+# as_fn_set_status STATUS
+# -----------------------
+# Set $? to STATUS, without forking.
+as_fn_set_status ()
+{
+  return $1
+} # as_fn_set_status
 
+# as_fn_exit STATUS
+# -----------------
+# Exit the shell with STATUS, even in a "trap 0" or "set -e" context.
+as_fn_exit ()
+{
+  set +e
+  as_fn_set_status $1
+  exit $1
+} # as_fn_exit
 
-    if test $as_have_required = no; then
-  echo This script requires a shell more modern than all the
-      echo shells that I found on your system.  Please install a
-      echo modern shell, or manually run the script under such a
-      echo shell if you do have one.
-      { (exit 1); exit 1; }
-fi
+# as_fn_mkdir_p
+# -------------
+# Create "$as_dir" as a directory, including parents if necessary.
+as_fn_mkdir_p ()
+{
 
+  case $as_dir in #(
+  -*) as_dir=./$as_dir;;
+  esac
+  test -d "$as_dir" || eval $as_mkdir_p || {
+    as_dirs=
+    while :; do
+      case $as_dir in #(
+      *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
+      *) as_qdir=$as_dir;;
+      esac
+      as_dirs="'$as_qdir' $as_dirs"
+      as_dir=`$as_dirname -- "$as_dir" ||
+$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+	 X"$as_dir" : 'X\(//\)[^/]' \| \
+	 X"$as_dir" : 'X\(//\)$' \| \
+	 X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
+$as_echo X"$as_dir" |
+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
+	    s//\1/
+	    q
+	  }
+	  /^X\(\/\/\)[^/].*/{
+	    s//\1/
+	    q
+	  }
+	  /^X\(\/\/\)$/{
+	    s//\1/
+	    q
+	  }
+	  /^X\(\/\).*/{
+	    s//\1/
+	    q
+	  }
+	  s/.*/./; q'`
+      test -d "$as_dir" && break
+    done
+    test -z "$as_dirs" || eval "mkdir $as_dirs"
+  } || test -d "$as_dir" || as_fn_error "cannot create directory $as_dir"
 
-fi
 
-fi
+} # as_fn_mkdir_p
+# as_fn_append VAR VALUE
+# ----------------------
+# Append the text in VALUE to the end of the definition contained in VAR. Take
+# advantage of any shell optimizations that allow amortized linear growth over
+# repeated appends, instead of the typical quadratic growth present in naive
+# implementations.
+if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
+  eval 'as_fn_append ()
+  {
+    eval $1+=\$2
+  }'
+else
+  as_fn_append ()
+  {
+    eval $1=\$$1\$2
+  }
+fi # as_fn_append
 
+# as_fn_arith ARG...
+# ------------------
+# Perform arithmetic evaluation on the ARGs, and store the result in the
+# global $as_val. Take advantage of shells that can avoid forks. The arguments
+# must be portable across $(()) and expr.
+if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
+  eval 'as_fn_arith ()
+  {
+    as_val=$(( $* ))
+  }'
+else
+  as_fn_arith ()
+  {
+    as_val=`expr "$@" || test $? -eq 1`
+  }
+fi # as_fn_arith
 
 
-(eval "as_func_return () {
-  (exit \$1)
-}
-as_func_success () {
-  as_func_return 0
-}
-as_func_failure () {
-  as_func_return 1
-}
-as_func_ret_success () {
-  return 0
-}
-as_func_ret_failure () {
-  return 1
-}
+# as_fn_error ERROR [LINENO LOG_FD]
+# ---------------------------------
+# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are
+# provided, also output the error to LOG_FD, referencing LINENO. Then exit the
+# script with status $?, using 1 if that was 0.
+as_fn_error ()
+{
+  as_status=$?; test $as_status -eq 0 && as_status=1
+  if test "$3"; then
+    as_lineno=${as_lineno-"$2"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+    $as_echo "$as_me:${as_lineno-$LINENO}: error: $1" >&$3
+  fi
+  $as_echo "$as_me: error: $1" >&2
+  as_fn_exit $as_status
+} # as_fn_error
 
-exitcode=0
-if as_func_success; then
-  :
+if expr a : '\(a\)' >/dev/null 2>&1 &&
+   test "X`expr 00001 : '.*\(...\)'`" = X001; then
+  as_expr=expr
 else
-  exitcode=1
-  echo as_func_success failed.
-fi
-
-if as_func_failure; then
-  exitcode=1
-  echo as_func_failure succeeded.
+  as_expr=false
 fi
 
-if as_func_ret_success; then
-  :
+if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
+  as_basename=basename
 else
-  exitcode=1
-  echo as_func_ret_success failed.
+  as_basename=false
 fi
 
-if as_func_ret_failure; then
-  exitcode=1
-  echo as_func_ret_failure succeeded.
-fi
+as_me=`$as_basename -- "$0" ||
+$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
+	 X"$0" : 'X\(//\)$' \| \
+	 X"$0" : 'X\(/\)' \| . 2>/dev/null ||
+$as_echo X/"$0" |
+    sed '/^.*\/\([^/][^/]*\)\/*$/{
+	    s//\1/
+	    q
+	  }
+	  /^X\/\(\/\/\)$/{
+	    s//\1/
+	    q
+	  }
+	  /^X\/\(\/\).*/{
+	    s//\1/
+	    q
+	  }
+	  s/.*/./; q'`
 
-if ( set x; as_func_ret_success y && test x = \"\$1\" ); then
-  :
+if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
+  as_dirname=dirname
 else
-  exitcode=1
-  echo positional parameters were not saved.
+  as_dirname=false
 fi
 
-test \$exitcode = 0") || {
-  echo No shell found that supports shell functions.
-  echo Please tell bug-autoconf@gnu.org about your system,
-  echo including any error possibly output before this message.
-  echo This can help us improve future autoconf versions.
-  echo Configuration will now proceed without shell functions.
-}
-
+# Avoid depending upon Character Ranges.
+as_cr_letters='abcdefghijklmnopqrstuvwxyz'
+as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
+as_cr_Letters=$as_cr_letters$as_cr_LETTERS
+as_cr_digits='0123456789'
+as_cr_alnum=$as_cr_Letters$as_cr_digits
 
 
-  as_lineno_1=$LINENO
-  as_lineno_2=$LINENO
-  test "x$as_lineno_1" != "x$as_lineno_2" &&
-  test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2" || {
-
-  # Create $as_me.lineno as a copy of $as_myself, but with $LINENO
-  # uniformly replaced by the line number.  The first 'sed' inserts a
-  # line-number line after each line using $LINENO; the second 'sed'
-  # does the real work.  The second script uses 'N' to pair each
-  # line-number line with the line containing $LINENO, and appends
-  # trailing '-' during substitution so that $LINENO is not a special
-  # case at line end.
-  # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the
-  # scripts with optimization help from Paolo Bonzini.  Blame Lee
-  # E. McMahon (1931-1989) for sed's syntax.  :-)
+  as_lineno_1=$LINENO as_lineno_1a=$LINENO
+  as_lineno_2=$LINENO as_lineno_2a=$LINENO
+  eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" &&
+  test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || {
+  # Blame Lee E. McMahon (1931-1989) for sed's syntax.  :-)
   sed -n '
     p
     /[$]LINENO/=
@@ -470,8 +435,7 @@ test \$exitcode = 0") || {
       s/-\n.*//
     ' >$as_me.lineno &&
   chmod +x "$as_me.lineno" ||
-    { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2
-   { (exit 1); exit 1; }; }
+    { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }
 
   # Don't try to exec as it changes $[0], causing all sort of problems
   # (the dirname of $[0] is not the place where we might find the
@@ -481,29 +445,18 @@ test \$exitcode = 0") || {
   exit
 }
 
-
-if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
-  as_dirname=dirname
-else
-  as_dirname=false
-fi
-
 ECHO_C= ECHO_N= ECHO_T=
-case `echo -n x` in
+case `echo -n x` in #(((((
 -n*)
-  case `echo 'x\c'` in
+  case `echo 'xy\c'` in
   *c*) ECHO_T='	';;	# ECHO_T is single tab character.
-  *)   ECHO_C='\c';;
+  xy)  ECHO_C='\c';;
+  *)   echo `echo ksh88 bug on AIX 6.1` > /dev/null
+       ECHO_T='	';;
   esac;;
 *)
   ECHO_N='-n';;
 esac
-if expr a : '\(a\)' >/dev/null 2>&1 &&
-   test "X`expr 00001 : '.*\(...\)'`" = X001; then
-  as_expr=expr
-else
-  as_expr=false
-fi
 
 rm -f conf$$ conf$$.exe conf$$.file
 if test -d conf$$.dir; then
@@ -533,7 +486,7 @@ rm -f conf$$ conf$$.exe conf$$.dir/conf$
 rmdir conf$$.dir 2>/dev/null
 
 if mkdir -p . 2>/dev/null; then
-  as_mkdir_p=:
+  as_mkdir_p='mkdir -p "$as_dir"'
 else
   test -d ./-p && rmdir ./-p
   as_mkdir_p=false
@@ -552,10 +505,10 @@ else
       if test -d "$1"; then
 	test -d "$1/.";
       else
-	case $1 in
+	case $1 in #(
 	-*)set "./$1";;
 	esac;
-	case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in
+	case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #((
 	???[sx]*):;;*)false;;esac;fi
     '\'' sh
   '
@@ -590,6 +543,11 @@ at_errexit_p=false
 # Shall we be verbose?  ':' means no, empty means yes.
 at_verbose=:
 at_quiet=
+# Running several jobs in parallel, 0 means as many as test groups.
+at_jobs=1
+at_traceon=:
+at_trace_echo=:
+at_check_filter_trace=:
 
 # Shall we keep the debug scripts?  Must be `:' when the suite is
 # run by a debug script, so that the script doesn't remove itself.
@@ -620,7 +578,7 @@ at_change_dir=false
 # List of the tested programs.
 at_tested=''
 # 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'
 # 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.
@@ -671,48 +629,59 @@ at_help_all="1;libtoolize.at:83;libtooli
 43;am-subdir.at:93;C++ subdir-objects;cxx libtoolize automake autoconf;
 44;lt_dlexit.at:30;lt_dlexit unloading libs;libltdl;
 45;lt_dladvise.at:28;lt_dlopenadvise library loading;libltdl;
-46;ltdl-api.at:25;ltdl API;libltdl;
-47;need_lib_prefix.at:25;enforced lib prefix;libltdl libtool;
-48;standalone.at:31;compiling softlinked libltdl;libtoolize;
-49;standalone.at:46;compiling copied libltdl;libtoolize;
-50;standalone.at:61;installable libltdl;libtoolize;
-51;standalone.at:79;linking libltdl without autotools;libtoolize;
-52;subproject.at:57;compiling softlinked libltdl;libtoolize automake autoconf;
-53;subproject.at:73;compiling copied libltdl;libtoolize automake autoconf;
-54;subproject.at:89;installable libltdl;libtoolize automake autoconf;
-55;subproject.at:109;linking libltdl without autotools;libtoolize;
-56;nonrecursive.at:78;compiling softlinked libltdl;libtoolize automake autoconf;
-57;nonrecursive.at:102;compiling copied libltdl;libtoolize automake autoconf;
-58;nonrecursive.at:126;installable libltdl;libtoolize automake autoconf;
-59;recursive.at:60;compiling softlinked libltdl;libtoolize autoconf automake;
-60;recursive.at:80;compiling copied libltdl;libtoolize autoconf automake;
-61;recursive.at:100;installable libltdl;libtoolize autoconf automake;
-62;template.at:27;simple template test;cxx libtool;
-63;template.at:126;template test with subdirs;cxx libtool;
-64;ctor.at:27;C++ static constructors;cxx libtool;
-65;early-libtool.at:32;config.status;libtoolize automake autoconf;
-66;early-libtool.at:126;config.lt;libtoolize automake autoconf;
-67;deplibs-ident.at:32;build tree relpaths;libtool;
-68;configure-iface.at:102;installable libltdl;libltdl libtoolize automake autoconf;
-69;configure-iface.at:159;--with-ltdl-include/lib;libltdl libtoolize automake autoconf;
-70;configure-iface.at:225;--with-included-ltdl;libltdl libtoolize automake autoconf;
-71;configure-iface.at:283;convenience libltdl;libtoolize automake autoconf;
-72;stresstest.at:31;Link option thorough search test;libtool;
-73;cmdline_wrap.at:28;Run tests with low max_cmd_len;recursive;
-74;darwin.at:26;darwin fat compile;;
+46;lt_dlopen_a.at:23;lt_dlopen archive;libltdl lt_dlopen_a;
+47;ltdl-api.at:25;ltdl API;libltdl;
+48;need_lib_prefix.at:25;enforced lib prefix;libltdl libtool;
+49;standalone.at:31;compiling softlinked libltdl;libtoolize;
+50;standalone.at:46;compiling copied libltdl;libtoolize;
+51;standalone.at:61;installable libltdl;libtoolize;
+52;standalone.at:79;linking libltdl without autotools;libtoolize;
+53;subproject.at:57;compiling softlinked libltdl;libtoolize automake autoconf;
+54;subproject.at:73;compiling copied libltdl;libtoolize automake autoconf;
+55;subproject.at:89;installable libltdl;libtoolize automake autoconf;
+56;subproject.at:109;linking libltdl without autotools;libtoolize;
+57;nonrecursive.at:78;compiling softlinked libltdl;libtoolize automake autoconf;
+58;nonrecursive.at:102;compiling copied libltdl;libtoolize automake autoconf;
+59;nonrecursive.at:126;installable libltdl;libtoolize automake autoconf;
+60;recursive.at:60;compiling softlinked libltdl;libtoolize autoconf automake;
+61;recursive.at:80;compiling copied libltdl;libtoolize autoconf automake;
+62;recursive.at:100;installable libltdl;libtoolize autoconf automake;
+63;template.at:27;simple template test;cxx libtool;
+64;template.at:126;template test with subdirs;cxx libtool;
+65;ctor.at:27;C++ static constructors;cxx libtool;
+66;early-libtool.at:32;config.status;libtoolize automake autoconf;
+67;early-libtool.at:126;config.lt;libtoolize automake autoconf;
+68;deplibs-ident.at:32;build tree relpaths;libtool;
+69;configure-iface.at:102;installable libltdl;libltdl libtoolize automake autoconf;
+70;configure-iface.at:159;--with-ltdl-include/lib;libltdl libtoolize automake autoconf;
+71;configure-iface.at:225;--with-included-ltdl;libltdl libtoolize automake autoconf;
+72;configure-iface.at:283;convenience libltdl;libtoolize automake autoconf;
+73;stresstest.at:31;Link option thorough search test;libtool;
+74;cmdline_wrap.at:28;Run tests with low max_cmd_len;recursive;
+75;darwin.at:26;darwin fat compile;;
 "
 
-# at_func_validate_ranges [N...]
-# ------------------------------
-# validate test group ranges
-at_func_validate_ranges ()
+# at_fn_validate_ranges NAME...
+# -----------------------------
+# Validate and normalize the test group number contained in each variable
+# NAME. Leading zeroes are treated as decimal.
+at_fn_validate_ranges ()
 {
   for at_grp
   do
-    if test $at_grp -lt 1 || test $at_grp -gt 74; then
-      $as_echo "invalid test group: $at_grp" >&2
+    eval at_value=\$$at_grp
+    if test $at_value -lt 1 || test $at_value -gt 75; then
+      $as_echo "invalid test group: $at_value" >&2
       exit 1
     fi
+    case $at_value in
+      0*) # We want to treat leading 0 as decimal, like expr and test, but
+	  # AS_VAR_ARITH treats it as octal if it uses $(( )).
+	  # With XSI shells, ${at_value#${at_value%%[1-9]*}} avoids the
+	  # expr fork, but it is not worth the effort to determine if the
+	  # shell supports XSI when the user can just avoid leading 0.
+	  eval $at_grp='`expr $at_value + 0`' ;;
+    esac
   done
 }
 
@@ -763,29 +732,31 @@ do
 	;;
 
     --trace | -x )
-	at_traceon='set -x'; at_traceoff='set +x'
+	at_traceon='set -x'
+	at_trace_echo=echo
+	at_check_filter_trace=at_fn_filter_trace
 	;;
 
     [0-9] | [0-9][0-9] | [0-9][0-9][0-9] | [0-9][0-9][0-9][0-9])
-	at_func_validate_ranges $at_option
-	at_groups="$at_groups$at_option "
+	at_fn_validate_ranges at_option
+	as_fn_append at_groups "$at_option "
 	;;
 
     # Ranges
     [0-9]- | [0-9][0-9]- | [0-9][0-9][0-9]- | [0-9][0-9][0-9][0-9]-)
 	at_range_start=`echo $at_option |tr -d X-`
-	at_func_validate_ranges $at_range_start
+	at_fn_validate_ranges at_range_start
 	at_range=`$as_echo " $at_groups_all " | \
 	  sed -e 's/^.* \('$at_range_start' \)/\1/'`
-	at_groups="$at_groups$at_range "
+	as_fn_append at_groups "$at_range "
 	;;
 
     -[0-9] | -[0-9][0-9] | -[0-9][0-9][0-9] | -[0-9][0-9][0-9][0-9])
 	at_range_end=`echo $at_option |tr -d X-`
-	at_func_validate_ranges $at_range_end
+	at_fn_validate_ranges at_range_end
 	at_range=`$as_echo " $at_groups_all " | \
 	  sed -e 's/\( '$at_range_end'\) .*$/\1/'`
-	at_groups="$at_groups$at_range "
+	as_fn_append at_groups "$at_range "
 	;;
 
     [0-9]-[0-9] | [0-9]-[0-9][0-9] | [0-9]-[0-9][0-9][0-9] | \
@@ -801,11 +772,11 @@ do
 	  at_range_end=$at_range_start
 	  at_range_start=$at_tmp
 	fi
-	at_func_validate_ranges $at_range_start $at_range_end
+	at_fn_validate_ranges at_range_start at_range_end
 	at_range=`$as_echo " $at_groups_all " | \
 	  sed -e 's/^.*\( '$at_range_start' \)/\1/' \
 	      -e 's/\( '$at_range_end'\) .*$/\1/'`
-	at_groups="$at_groups$at_range "
+	as_fn_append at_groups "$at_range "
 	;;
 
     # Directory selection.
@@ -817,6 +788,22 @@ do
 	at_dir=$at_optarg
 	;;
 
+    # Parallel execution.
+    --jobs | -j )
+	at_jobs=0
+	;;
+    --jobs=* | -j[0-9]* )
+	if test -n "$at_optarg"; then
+	  at_jobs=$at_optarg
+	else
+	  at_jobs=`expr X$at_option : 'X-j\(.*\)'`
+	fi
+	case $at_jobs in *[!0-9]*)
+	  at_optname=`echo " $at_option" | sed 's/^ //; s/[0-9=].*//'`
+	  as_fn_error "non-numeric argument to $at_optname: $at_jobs" ;;
+	esac
+	;;
+
     # Keywords.
     --keywords | -k )
 	at_prev=--keywords
@@ -845,7 +832,7 @@ do
 	at_groups_selected=`$as_echo "$at_groups_selected" | sed 's/;.*//' |
 	  tr "$as_nl" ' '
 	`
-	at_groups="$at_groups$at_groups_selected "
+	as_fn_append at_groups "$at_groups_selected "
 	;;
 
     *=*)
@@ -853,13 +840,12 @@ do
 	# Reject names that are not valid shell variable names.
 	case $at_envvar in
 	  '' | [0-9]* | *[!_$as_cr_alnum]* )
-	    { $as_echo "$as_me: error: invalid variable name: $at_envvar" >&2
-   { (exit 1); exit 1; }; } ;;
+	    as_fn_error "invalid variable name: \`$at_envvar'" ;;
 	esac
 	at_value=`$as_echo "$at_optarg" | sed "s/'/'\\\\\\\\''/g"`
 	# Export now, but save eval for later and for debug scripts.
 	export $at_envvar
-	at_debug_args="$at_debug_args $at_envvar='$at_value'"
+	as_fn_append at_debug_args " $at_envvar='$at_value'"
 	;;
 
      *) $as_echo "$as_me: invalid option: $at_option" >&2
@@ -870,12 +856,10 @@ do
 done
 
 # Verify our last option didn't require an argument
-if test -n "$at_prev"; then
-  { $as_echo "$as_me: error: \`$at_prev' requires an argument." >&2
-   { (exit 1); exit 1; }; }
+if test -n "$at_prev"; then :
+  as_fn_error "\`$at_prev' requires an argument."
 fi
 
-
 # Selected test groups.
 if test -z "$at_groups"; then
   at_groups=$at_groups_all
@@ -892,16 +876,17 @@ Usage: $0 [OPTION]... [VARIABLE=VALUE]..
 Run all the tests, or the selected TESTS, given by numeric ranges, and
 save a detailed log file.  Upon failure, create debugging scripts.
 
-You should not change environment variables unless explicitly passed
-as command line arguments.  Set \`AUTOTEST_PATH' to select the executables
+Do not change environment variables directly.  Instead, set them via
+command line arguments.  Set \`AUTOTEST_PATH' to select the executables
 to exercise.  Each relative directory is expanded as build and source
-directories relatively to the top level of this distribution.  E.g.,
+directories relative to the top level of this distribution.
+E.g., from within the build directory /tmp/foo-1.0, invoking this:
 
   $ $0 AUTOTEST_PATH=bin
 
-possibly amounts into
+is equivalent to the following, assuming the source directory is /src/foo-1.0:
 
-  PATH=/tmp/foo-1.0/bin:/src/foo-1.0/bin:\$PATH
+  PATH=/tmp/foo-1.0/bin:/src/foo-1.0/bin:\$PATH $0
 _ATEOF
 cat <<_ATEOF || at_write_fail=1
 
@@ -916,6 +901,8 @@ cat <<_ATEOF || at_write_fail=1
 Execution tuning:
   -C, --directory=DIR
                  change to directory DIR before starting
+  -j, --jobs[=N]
+                 Allow N jobs at once; infinite jobs with no arg (default 1)
   -k, --keywords=KEYWORDS
                  select the tests matching all the comma-separated KEYWORDS
                  multiple \`-k' accumulate; prefixed \`!' negates a KEYWORD
@@ -936,7 +923,7 @@ fi
 # List of tests.
 if $at_list_p; then
   cat <<_ATEOF || at_write_fail=1
-libtool 2.2.6 test suite test groups:
+libtool 2.2.6b test suite test groups:
 
  NUM: FILE-NAME:LINE     TEST-GROUP-NAME
       KEYWORDS
@@ -953,26 +940,45 @@ _ATEOF
   $as_echo "$at_groups$as_nl$at_help_all" |
     awk 'BEGIN { FS = ";" }
 	 NR == 1 {
-	   for (n = split($ 0, a, " "); n; n--) selected[a[n]] = 1
+	   for (n = split ($ 0, a, " "); n; n--)
+	     selected[a[n]] = 1
 	   next
 	 }
-	 {
+	 NF > 0 {
 	   if (selected[$ 1]) {
 	     printf " %3d: %-18s %s\n", $ 1, $ 2, $ 3
-	     if ($ 4) printf "      %s\n", $ 4
+	     if ($ 4) {
+	       lmax = 79
+	       indent = "     "
+	       line = indent
+	       len = length (line)
+	       n = split ($ 4, a, " ")
+	       for (i = 1; i <= n; i++) {
+		 l = length (a[i]) + 1
+		 if (i > 1 && len + l > lmax) {
+		   print line
+		   line = indent " " a[i]
+		   len = length (line)
+		 } else {
+		   line = line " " a[i]
+		   len += l
+		 }
+	       }
+	       if (n)
+		 print line
+	     }
 	   }
 	 }' || at_write_fail=1
   exit $at_write_fail
 fi
 if $at_version_p; then
-  $as_echo "$as_me (libtool 2.2.6)" &&
-  cat <<\_ACEOF || at_write_fail=1
+  $as_echo "$as_me (libtool 2.2.6b)" &&
+  cat <<\_ATEOF || at_write_fail=1
 
-Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
-Free Software Foundation, Inc.
+Copyright (C) 2009 Free Software Foundation, Inc.
 This test suite is free software; the Free Software Foundation gives
 unlimited permission to copy, distribute and modify it.
-_ACEOF
+_ATEOF
   exit $at_write_fail
 fi
 
@@ -1003,37 +1009,37 @@ at_banner_text_5="Libtool subdir-objects
 # Category starts at test group 44.
 at_banner_text_6="Libltdl functionality."
 # Banner 7. standalone.at:25
-# Category starts at test group 48.
+# Category starts at test group 49.
 at_banner_text_7="Standalone Libltdl."
 # Banner 8. subproject.at:25
-# Category starts at test group 52.
+# Category starts at test group 53.
 at_banner_text_8="Subproject Libltdl."
 # Banner 9. nonrecursive.at:26
-# Category starts at test group 56.
+# Category starts at test group 57.
 at_banner_text_9="Nonrecursive Automake Libltdl."
 # Banner 10. recursive.at:25
-# Category starts at test group 59.
+# Category starts at test group 60.
 at_banner_text_10="Recursive Automake Libltdl."
 # Banner 11. template.at:25
-# Category starts at test group 62.
+# Category starts at test group 63.
 at_banner_text_11="C++ template tests."
 # Banner 12. ctor.at:25
-# Category starts at test group 64.
+# Category starts at test group 65.
 at_banner_text_12="Constructors."
 # Banner 13. early-libtool.at:25
-# Category starts at test group 65.
+# Category starts at test group 66.
 at_banner_text_13="libtool script generation."
 # Banner 14. deplibs-ident.at:25
-# Category starts at test group 67.
+# Category starts at test group 68.
 at_banner_text_14="Detecting identical deplibs."
 # Banner 15. configure-iface.at:25
-# Category starts at test group 68.
+# Category starts at test group 69.
 at_banner_text_15="configure interface to libltdl."
 # Banner 16. stresstest.at:30
-# Category starts at test group 72.
+# Category starts at test group 73.
 at_banner_text_16="Libtool stress test."
 # Banner 17. darwin.at:25
-# Category starts at test group 74.
+# Category starts at test group 75.
 at_banner_text_17="Mac OS X tests"
 
 # Take any -C into account.
@@ -1042,8 +1048,7 @@ if $at_change_dir ; then
     at_dir=./-
   fi
   test x != "x$at_dir" && cd "$at_dir" \
-    || { $as_echo "$as_me: error: unable to change directory" >&2
-   { (exit 1); exit 1; }; }
+    || as_fn_error "unable to change directory"
   at_dir=`pwd`
 fi
 
@@ -1051,8 +1056,7 @@ fi
 for at_file in atconfig atlocal
 do
   test -r $at_file || continue
-  . ./$at_file || { $as_echo "$as_me: error: invalid content: $at_file" >&2
-   { (exit 1); exit 1; }; }
+  . ./$at_file || as_fn_error "invalid content: $at_file"
 done
 
 # Autoconf <=2.59b set at_top_builddir instead of at_top_build_prefix:
@@ -1067,8 +1071,7 @@ if test -n "$at_top_srcdir"; then
   builddir=../..
   for at_dir_var in srcdir top_srcdir top_build_prefix
   do
-    at_val=`eval 'as_val=${'at_$at_dir_var'}
-		 $as_echo "$as_val"'`
+    eval at_val=\$at_$at_dir_var
     case $at_val in
       [\\/$]* | ?:[\\/]* ) at_prefix= ;;
       *) at_prefix=../../ ;;
@@ -1077,23 +1080,47 @@ if test -n "$at_top_srcdir"; then
   done
 fi
 
+## -------------------- ##
+## Directory structure. ##
+## -------------------- ##
+
+# This is the set of directories and files used by this script
+# (non-literals are capitalized):
+#
+# TESTSUITE         - the testsuite
+# TESTSUITE.log     - summarizes the complete testsuite run
+# TESTSUITE.dir/    - created during a run, remains after -d or failed test
+# + at-groups/      - during a run: status of all groups in run
+# | + NNN/          - during a run: meta-data about test group NNN
+# | | + check-line  - location (source file and line) of current AT_CHECK
+# | | + status      - exit status of current AT_CHECK
+# | | + stdout      - stdout of current AT_CHECK
+# | | + stder1      - stderr, including trace
+# | | + stderr      - stderr, with trace filtered out
+# | | + test-source - portion of testsuite that defines group
+# | | + times       - timestamps for computing duration
+# | | + pass        - created if group passed
+# | | + xpass       - created if group xpassed
+# | | + fail        - created if group failed
+# | | + xfail       - created if group xfailed
+# | | + skip        - created if group skipped
+# + at-stop         - during a run: end the run if this file exists
+# + at-source-lines - during a run: cache of TESTSUITE line numbers for extraction
+# + 0..NNN/         - created for each group NNN, remains after -d or failed test
+# | + TESTSUITE.log - summarizes the group results
+# | + ...           - files created during the group
+
 # The directory the whole suite works in.
 # Should be absolute to let the user `cd' at will.
 at_suite_dir=$at_dir/$as_me.dir
 # The file containing the suite.
 at_suite_log=$at_dir/$as_me.log
-# The file containing the location of the last AT_CHECK.
-at_check_line_file=$at_suite_dir/at-check-line
-# The file containing the exit status of the last command.
-at_status_file=$at_suite_dir/at-status
-# The files containing the output of the tested commands.
-at_stdout=$at_suite_dir/at-stdout
-at_stder1=$at_suite_dir/at-stder1
-at_stderr=$at_suite_dir/at-stderr
-# The file containing the function to run a test group.
-at_test_source=$at_suite_dir/at-test-source
-# The file containing dates.
-at_times_file=$at_suite_dir/at-times
+# The directory containing helper files per test group.
+at_helper_dir=$at_suite_dir/at-groups
+# Stop file: if it exists, do not start new jobs.
+at_stop_file=$at_suite_dir/at-stop
+# The fifo used for the job dispatcher.
+at_job_fifo=$at_suite_dir/at-job-fifo
 
 if $at_clean; then
   test -d "$at_suite_dir" &&
@@ -1117,23 +1144,23 @@ for as_dir in $AUTOTEST_PATH $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  test -n "$at_path" && at_path=$at_path$PATH_SEPARATOR
+    test -n "$at_path" && as_fn_append at_path $PATH_SEPARATOR
 case $as_dir in
   [\\/]* | ?:[\\/]* )
-    at_path=$at_path$as_dir
+    as_fn_append at_path "$as_dir"
     ;;
   * )
     if test -z "$at_top_build_prefix"; then
       # Stand-alone test suite.
-      at_path=$at_path$as_dir
+      as_fn_append at_path "$as_dir"
     else
       # Embedded test suite.
-      at_path=$at_path$at_top_build_prefix$as_dir$PATH_SEPARATOR
-      at_path=$at_path$at_top_srcdir/$as_dir
+      as_fn_append at_path "$at_top_build_prefix$as_dir$PATH_SEPARATOR"
+      as_fn_append at_path "$at_top_srcdir/$as_dir"
     fi
     ;;
 esac
-done
+  done
 IFS=$as_save_IFS
 
 
@@ -1147,7 +1174,7 @@ for as_dir in $at_path
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  test -d "$as_dir" || continue
+    test -d "$as_dir" || continue
 case $as_dir in
   [\\/]* | ?:[\\/]* ) ;;
   * ) as_dir=`(cd "$as_dir" && pwd) 2>/dev/null` ;;
@@ -1155,17 +1182,18 @@ esac
 case $PATH_SEPARATOR$at_new_path$PATH_SEPARATOR in
   *$PATH_SEPARATOR$as_dir$PATH_SEPARATOR*) ;;
   $PATH_SEPARATOR$PATH_SEPARATOR) at_new_path=$as_dir ;;
-  *) at_new_path=$at_new_path$PATH_SEPARATOR$as_dir ;;
+  *) as_fn_append at_new_path "$PATH_SEPARATOR$as_dir" ;;
 esac
-done
+  done
 IFS=$as_save_IFS
 
 PATH=$at_new_path
 export PATH
 
 # Setting up the FDs.
-# 5 is the log file.  Not to be overwritten if `-d'.
 
+
+# 5 is the log file.  Not to be overwritten if `-d'.
 if $at_debug_p; then
   at_suite_log=/dev/null
 else
@@ -1175,15 +1203,15 @@ exec 5>>"$at_suite_log"
 
 # Banners and logs.
 cat <<\_ASBOX
-## ------------------------- ##
-## libtool 2.2.6 test suite. ##
-## ------------------------- ##
+## -------------------------- ##
+## libtool 2.2.6b test suite. ##
+## -------------------------- ##
 _ASBOX
 {
   cat <<\_ASBOX
-## ------------------------- ##
-## libtool 2.2.6 test suite. ##
-## ------------------------- ##
+## -------------------------- ##
+## libtool 2.2.6b test suite. ##
+## -------------------------- ##
 _ASBOX
   echo
 
@@ -1243,8 +1271,8 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  $as_echo "PATH: $as_dir"
-done
+    $as_echo "PATH: $as_dir"
+  done
 IFS=$as_save_IFS
 
 }
@@ -1295,53 +1323,76 @@ case $host_os in
 aix*) umask o-rwx ;;
 esac
 
-## --------------- ##
-## Shell functions ##
-## --------------- ##
-
-# at_func_banner NUMBER
-# ---------------------
-# Output banner NUMBER, provided the testsuite is running multiple groups
-# and this particular banner has not yet been printed.
-at_func_banner ()
+## ------------------------- ##
+## Autotest shell functions. ##
+## ------------------------- ##
+
+# at_fn_banner NUMBER
+# -------------------
+# Output banner NUMBER, provided the testsuite is running multiple groups and
+# this particular banner has not yet been printed.
+at_fn_banner ()
 {
   $at_print_banners || return 0
   eval at_banner_text=\$at_banner_text_$1
   test "x$at_banner_text" = x && return 0
   eval at_banner_text_$1=
   $as_echo "$as_nl$at_banner_text$as_nl"
-} # at_func_banner
+} # at_fn_banner
 
-# at_func_check_newline COMMAND
-# -----------------------------
-# Test if COMMAND includes a newline and, if so, print a message and return
-# exit code 1
-at_func_check_newline ()
-{
-  case "$1" in
- *'
-'*) echo 'Not enabling shell tracing (command contains an embedded newline)'
-    return 1 ;;
- *) return 0 ;;
-  esac
+# at_fn_check_prepare_notrace REASON LINE
+# ---------------------------------------
+# Perform AT_CHECK preparations for the command at LINE for an untraceable
+# command; REASON is the reason for disabling tracing.
+at_fn_check_prepare_notrace ()
+{
+  $at_trace_echo "Not enabling shell tracing (command contains $1)"
+  $as_echo "$2" >"$at_check_line_file"
+  at_check_trace=: at_check_filter=:
+  : >"$at_stdout"; : >"$at_stderr"
 }
 
-# at_func_filter_trace EXIT-CODE
+# at_fn_check_prepare_trace LINE
 # ------------------------------
-# Split the contents of file "$at_stder1" into the "set -x" trace (on stderr)
-# and the other lines (on file "$at_stderr").  Return the exit code EXIT-CODE.
-at_func_filter_trace ()
+# Perform AT_CHECK preparations for the command at LINE for a traceable
+# command.
+at_fn_check_prepare_trace ()
 {
+  $as_echo "$1" >"$at_check_line_file"
+  at_check_trace=$at_traceon at_check_filter=$at_check_filter_trace
+  : >"$at_stdout"; : >"$at_stderr"
+}
+
+# at_fn_check_prepare_dynamic COMMAND LINE
+# ----------------------------------------
+# Decide if COMMAND at LINE is traceable at runtime, and call the appropriate
+# preparation function.
+at_fn_check_prepare_dynamic ()
+{
+  case $1 in
+    *$as_nl*)
+      at_fn_check_prepare_notrace 'an embedded newline' "$2" ;;
+    *)
+      at_fn_check_prepare_trace "$2" ;;
+  esac
+}
+
+# at_fn_filter_trace
+# ------------------
+# Remove the lines in the file "$at_stderr" generated by "set -x" and print
+# them to stderr.
+at_fn_filter_trace ()
+{
+  mv "$at_stderr" "$at_stder1"
   grep '^ *+' "$at_stder1" >&2
   grep -v '^ *+' "$at_stder1" >"$at_stderr"
-  return $1
 }
 
-# at_func_log_failure FILE-LIST
-# -----------------------------
+# at_fn_log_failure FILE-LIST
+# ---------------------------
 # Copy the files in the list on stdout with a "> " prefix, and exit the shell
 # with a failure exit code.
-at_func_log_failure ()
+at_fn_log_failure ()
 {
   for file
     do $as_echo "$file:"; sed 's/^/> /' "$file"; done
@@ -1349,56 +1400,62 @@ at_func_log_failure ()
   exit 1
 }
 
-# at_func_check_skip EXIT-CODE
-# ----------------------------
-# Check whether EXIT-CODE is the special exit code 77, and if so exit the shell
-# with that same exit code.
-at_func_check_skip ()
+# at_fn_check_skip EXIT-CODE LINE
+# -------------------------------
+# Check whether EXIT-CODE is a special exit code (77 or 99), and if so exit
+# the test group subshell with that same exit code. Use LINE in any report
+# about test failure.
+at_fn_check_skip ()
 {
   case $1 in
+    99) echo 99 > "$at_status_file"; at_failed=:
+	$as_echo "$2: hard failure"; exit 99;;
     77) echo 77 > "$at_status_file"; exit 77;;
   esac
 }
 
-# at_func_check_status EXPECTED EXIT-CODE LINE
-# --------------------------------------------
-# Check whether EXIT-CODE is the expected exit code, and if so do nothing.
-# Otherwise, if it is 77 exit the shell with that same exit code; if it is
-# anything else print an error message and fail the test.
-at_func_check_status ()
+# at_fn_check_status EXPECTED EXIT-CODE LINE
+# ------------------------------------------
+# Check whether EXIT-CODE is the EXPECTED exit code, and if so do nothing.
+# Otherwise, if it is 77 or 99, exit the test group subshell with that same
+# exit code; if it is anything else print an error message referring to LINE,
+# and fail the test.
+at_fn_check_status ()
 {
   case $2 in
     $1 ) ;;
     77) echo 77 > "$at_status_file"; exit 77;;
+    99) echo 99 > "$at_status_file"; at_failed=:
+	$as_echo "$3: hard failure"; exit 99;;
     *) $as_echo "$3: exit code was $2, expected $1"
       at_failed=:;;
   esac
 }
 
-# at_func_diff_devnull FILE
-# -------------------------
-# Emit a diff between /dev/null and FILE.  Uses "test -s" to avoid useless
-# diff invocations.
-at_func_diff_devnull ()
+# at_fn_diff_devnull FILE
+# -----------------------
+# Emit a diff between /dev/null and FILE. Uses "test -s" to avoid useless diff
+# invocations.
+at_fn_diff_devnull ()
 {
   test -s "$1" || return 0
   $at_diff "$at_devnull" "$1"
 }
 
-# at_func_test NUMBER
-# -------------------
+# at_fn_test NUMBER
+# -----------------
 # Parse out test NUMBER from the tail of this file.
-at_func_test ()
+at_fn_test ()
 {
   eval at_sed=\$at_sed$1
   sed "$at_sed" "$at_myself" > "$at_test_source"
 }
 
-# at_func_create_debugging_script
-# -------------------------------
+# at_fn_create_debugging_script
+# -----------------------------
 # Create the debugging script $at_group_dir/run which will reproduce the
 # current test group.
-at_func_create_debugging_script ()
+at_fn_create_debugging_script ()
 {
   {
     echo "#! /bin/sh" &&
@@ -1410,27 +1467,9 @@ at_func_create_debugging_script ()
   chmod +x "$at_group_dir/run"
 }
 
-# at_func_arith
-# -------------
-# Arithmetic evaluation, avoids expr if the shell is sane.
-#
-# subshell and eval are needed to keep Solaris sh from bailing out:
-if ( eval 'test $(( 1 + 1 )) = 2' ) 2>/dev/null; then
-  # With "$@", bash does not split positional parameters:
-  eval 'at_func_arith ()
-  {
-    at_func_arith_result=$(( $* ))
-  }'
-else
-  at_func_arith ()
-  {
-    at_func_arith_result=`expr "$@"`
-  }
-fi
-
-## ---------------------- ##
-## End of shell functions ##
-## ---------------------- ##
+## -------------------------------- ##
+## End of autotest shell functions. ##
+## -------------------------------- ##
 {
   cat <<\_ASBOX
 ## ---------------- ##
@@ -1449,8 +1488,8 @@ for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
-  test -f "$as_dir/$at_program" && break
-done
+    test -f "$as_dir/$at_program" && break
+  done
 IFS=$as_save_IFS
 
   if test -f "$as_dir/$at_program"; then
@@ -1460,9 +1499,7 @@ IFS=$as_save_IFS
       echo
     } >&5 2>&1
   else
-    { { $as_echo "$as_me:$LINENO: error: cannot find $at_program" >&5
-$as_echo "$as_me: error: cannot find $at_program" >&2;}
-   { (exit 1); exit 1; }; }
+    as_fn_error "cannot find $at_program" "$LINENO" 5
   fi
 done
 
@@ -1477,19 +1514,10 @@ _ASBOX
 at_start_date=`date`
 at_start_time=`date +%s 2>/dev/null`
 $as_echo "$as_me: starting at: $at_start_date" >&5
-at_xpass_list=
-at_xfail_list=
-at_pass_list=
-at_fail_list=
-at_skip_list=
-at_group_count=0
 
 # Create the master directory if it doesn't already exist.
-test -d "$at_suite_dir" ||
-  mkdir "$at_suite_dir" ||
-  { { $as_echo "$as_me:$LINENO: error: cannot create '$at_suite_dir'" >&5
-$as_echo "$as_me: error: cannot create '$at_suite_dir'" >&2;}
-   { (exit 1); exit 1; }; }
+as_dir="$at_suite_dir"; as_fn_mkdir_p ||
+  as_fn_error "cannot create \`$at_suite_dir'" "$LINENO" 5
 
 # Can we diff with `/dev/null'?  DU 5.0 refuses.
 if diff /dev/null /dev/null >/dev/null 2>&1; then
@@ -1521,23 +1549,63 @@ BEGIN { FS="" }
   test = substr ($ 0, 10)
   print "at_sed" test "=\"1," start "d;" (NR-1) "q\""
   if (test == "'"$at_group"'") exit
-}' "$at_myself" > "$at_test_source" &&
-. "$at_test_source" ||
-  { { $as_echo "$as_me:$LINENO: error: cannot create test line number cache" >&5
-$as_echo "$as_me: error: cannot create test line number cache" >&2;}
-   { (exit 1); exit 1; }; }
+}' "$at_myself" > "$at_suite_dir/at-source-lines" &&
+. "$at_suite_dir/at-source-lines" ||
+  as_fn_error "cannot create test line number cache" "$LINENO" 5
+rm -f "$at_suite_dir/at-source-lines"
+
+# Set number of jobs for `-j'; avoid more jobs than test groups.
+set X $at_groups; shift; at_max_jobs=$#
+if test $at_max_jobs -eq 0; then
+  at_jobs=1
+fi
+if test $at_jobs -ne 1 &&
+   { test $at_jobs -eq 0 || test $at_jobs -gt $at_max_jobs; }; then
+  at_jobs=$at_max_jobs
+fi
+
+# If parallel mode, don't output banners, don't split summary lines.
+if test $at_jobs -ne 1; then
+  at_print_banners=false
+  at_quiet=:
+fi
+
+# Set up helper dirs.
+rm -rf "$at_helper_dir" &&
+mkdir "$at_helper_dir" &&
+cd "$at_helper_dir" &&
+{ test -z "$at_groups" || mkdir $at_groups; } ||
+as_fn_error "testsuite directory setup failed" "$LINENO" 5
+
+# Functions for running a test group.  We leave the actual
+# test group execution outside of a shell function in order
+# to avoid hitting zsh 4.x exit status bugs.
 
+# at_fn_group_prepare
+# -------------------
+# Prepare running a test group.
+at_fn_group_prepare ()
+{
+  # The directory for additional per-group helper files.
+  at_job_dir=$at_helper_dir/$at_group
+  # The file containing the location of the last AT_CHECK.
+  at_check_line_file=$at_job_dir/check-line
+  # The file containing the exit status of the last command.
+  at_status_file=$at_job_dir/status
+  # The files containing the output of the tested commands.
+  at_stdout=$at_job_dir/stdout
+  at_stder1=$at_job_dir/stder1
+  at_stderr=$at_job_dir/stderr
+  # The file containing the code for a test group.
+  at_test_source=$at_job_dir/test-source
+  # The file containing dates.
+  at_times_file=$at_job_dir/times
 
-## ------------ ##
-## Driver loop. ##
-## ------------ ##
-for at_group in $at_groups
-do
   # Be sure to come back to the top test directory.
   cd "$at_suite_dir"
 
   # Clearly separate the test groups when verbose.
-  test $at_group_count != 0 && $at_verbose echo
+  $at_first || $at_verbose echo
 
   at_group_normalized=$at_group
 
@@ -1550,118 +1618,92 @@ do
 
 
   # Create a fresh directory for the next test group, and enter.
+  # If one already exists, the user may have invoked ./run from
+  # within that directory; we remove the contents, but not the
+  # directory itself, so that we aren't pulling the rug out from
+  # under the shell's notion of the current directory.
   at_group_dir=$at_suite_dir/$at_group_normalized
   at_group_log=$at_group_dir/$as_me.log
   if test -d "$at_group_dir"; then
-    find "$at_group_dir" -type d ! -perm -700 -exec chmod u+rwx \{\} \;
-    rm -fr "$at_group_dir" ||
-      { $as_echo "$as_me:$LINENO: WARNING: test directory could not be cleaned." >&5
-$as_echo "$as_me: WARNING: test directory could not be cleaned." >&2;}
-  fi
+  find "$at_group_dir" -type d ! -perm -700 -exec chmod u+rwx {} \;
+  rm -fr "$at_group_dir"/* "$at_group_dir"/.[!.] "$at_group_dir"/.??*
+fi ||
+    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: test directory for $at_group_normalized could not be cleaned." >&5
+$as_echo "$as_me: WARNING: test directory for $at_group_normalized could not be cleaned." >&2;}
   # Be tolerant if the above `rm' was not able to remove the directory.
-  { as_dir="$at_group_dir"
-  case $as_dir in #(
-  -*) as_dir=./$as_dir;;
-  esac
-  test -d "$as_dir" || { $as_mkdir_p && mkdir -p "$as_dir"; } || {
-    as_dirs=
-    while :; do
-      case $as_dir in #(
-      *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
-      *) as_qdir=$as_dir;;
-      esac
-      as_dirs="'$as_qdir' $as_dirs"
-      as_dir=`$as_dirname -- "$as_dir" ||
-$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-	 X"$as_dir" : 'X\(//\)[^/]' \| \
-	 X"$as_dir" : 'X\(//\)$' \| \
-	 X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$as_dir" |
-    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
-	    s//\1/
-	    q
-	  }
-	  /^X\(\/\/\)[^/].*/{
-	    s//\1/
-	    q
-	  }
-	  /^X\(\/\/\)$/{
-	    s//\1/
-	    q
-	  }
-	  /^X\(\/\).*/{
-	    s//\1/
-	    q
-	  }
-	  s/.*/./; q'`
-      test -d "$as_dir" && break
-    done
-    test -z "$as_dirs" || eval "mkdir $as_dirs"
-  } || test -d "$as_dir" || { { $as_echo "$as_me:$LINENO: error: cannot create directory $as_dir" >&5
-$as_echo "$as_me: error: cannot create directory $as_dir" >&2;}
-   { (exit 1); exit 1; }; }; }
-  cd "$at_group_dir"
+  as_dir="$at_group_dir"; as_fn_mkdir_p
 
   echo 0 > "$at_status_file"
 
   # In verbose mode, append to the log file *and* show on
-  # the standard output; in quiet mode only write to the log
+  # the standard output; in quiet mode only write to the log.
   if test -z "$at_verbose"; then
     at_tee_pipe='tee -a "$at_group_log"'
   else
     at_tee_pipe='cat >> "$at_group_log"'
   fi
+}
 
-  if at_func_test $at_group && . "$at_test_source"; then :; else
-    $as_echo "$as_me: unable to parse test group: $at_group" >&2
-    at_failed=:
-  fi
-
+# at_fn_group_postprocess
+# -----------------------
+# Perform cleanup after running a test group.
+at_fn_group_postprocess ()
+{
   # Be sure to come back to the suite directory, in particular
   # since below we might `rm' the group directory we are in currently.
   cd "$at_suite_dir"
 
   if test ! -f "$at_check_line_file"; then
-    sed "s/^ */$as_me: warning: /" <<_ATEOF
-	A failure happened in a test group before any test could be
-	run. This means that test suite is improperly designed.  Please
-	report this failure to <bug-libtool@gnu.org>.
+    sed "s/^ */$as_me: WARNING: /" <<_ATEOF
+      A failure happened in a test group before any test could be
+      run. This means that test suite is improperly designed.  Please
+      report this failure to <bug-libtool@gnu.org>.
 _ATEOF
     $as_echo "$at_setup_line" >"$at_check_line_file"
+    at_status=99
   fi
-  at_func_arith 1 + $at_group_count
-  at_group_count=$at_func_arith_result
   $at_verbose $as_echo_n "$at_group. $at_setup_line: "
   $as_echo_n "$at_group. $at_setup_line: " >> "$at_group_log"
   case $at_xfail:$at_status in
+    *:99)
+	at_msg='FAILED ('`cat "$at_check_line_file"`')'
+	at_res=fail
+	at_errexit=$at_errexit_p
+	;;
     yes:0)
 	at_msg="UNEXPECTED PASS"
-	at_xpass_list="$at_xpass_list $at_group"
+	at_res=xpass
 	at_errexit=$at_errexit_p
 	;;
     no:0)
 	at_msg="ok"
-	at_pass_list="$at_pass_list $at_group"
+	at_res=pass
 	at_errexit=false
 	;;
     *:77)
 	at_msg='skipped ('`cat "$at_check_line_file"`')'
-	at_skip_list="$at_skip_list $at_group"
+	at_res=skip
 	at_errexit=false
 	;;
     yes:*)
 	at_msg='expected failure ('`cat "$at_check_line_file"`')'
-	at_xfail_list="$at_xfail_list $at_group"
+	at_res=xfail
 	at_errexit=false
 	;;
     no:*)
 	at_msg='FAILED ('`cat "$at_check_line_file"`')'
-	at_fail_list="$at_fail_list $at_group"
+	at_res=fail
 	at_errexit=$at_errexit_p
 	;;
   esac
-  # Make sure there is a separator even with long titles.
-  $as_echo " $at_msg"
+  echo "$at_res" > "$at_job_dir/$at_res"
+  # In parallel mode, output the summary line only afterwards.
+  if test $at_jobs -ne 1 && test -n "$at_verbose"; then
+    $as_echo "$at_desc_line $at_msg"
+  else
+    # Make sure there is a separator even with long titles.
+    $as_echo " $at_msg"
+  fi
   at_log_msg="$at_group. $at_desc ($at_setup_line): $at_msg"
   case $at_status in
     0|77)
@@ -1676,33 +1718,189 @@ _ATEOF
       $as_echo "$at_log_msg" >> "$at_group_log"
       $as_echo "$at_log_msg" >&5
 
-      # Cleanup the group directory, unless the user wants the files.
-      if $at_debug_p ; then
-	at_func_create_debugging_script
-      else
-	if test -d "$at_group_dir"; then
-	  find "$at_group_dir" -type d ! -perm -700 -exec chmod u+rwx \{\} \;
-	  rm -fr "$at_group_dir"
+      # Cleanup the group directory, unless the user wants the files.
+      if $at_debug_p; then
+	at_fn_create_debugging_script
+      else
+	if test -d "$at_group_dir"; then
+	  find "$at_group_dir" -type d ! -perm -700 -exec chmod u+rwx \{\} \;
+	  rm -fr "$at_group_dir"
+	fi
+	rm -f "$at_test_source"
+      fi
+      ;;
+    *)
+      # Upon failure, include the log into the testsuite's global
+      # log.  The failure message is written in the group log.  It
+      # is later included in the global log.
+      $as_echo "$at_log_msg" >> "$at_group_log"
+
+      # Upon failure, keep the group directory for autopsy, and create
+      # the debugging script.  With -e, do not start any further tests.
+      at_fn_create_debugging_script
+      if $at_errexit; then
+	echo stop > "$at_stop_file"
+      fi
+      ;;
+  esac
+}
+
+
+## ------------ ##
+## Driver loop. ##
+## ------------ ##
+
+
+if (set -m && set +m && set +b) >/dev/null 2>&1; then
+  set +b
+  at_job_control_on='set -m' at_job_control_off='set +m' at_job_group=-
+else
+  at_job_control_on=: at_job_control_off=: at_job_group=
+fi
+
+for at_signal in 1 2 15; do
+  trap 'set +x; set +e
+	$at_job_control_off
+	at_signal='"$at_signal"'
+	echo stop > "$at_stop_file"
+	trap "" $at_signal
+	at_pgids=
+	for at_pgid in `jobs -p 2>/dev/null`; do
+	  at_pgids="$at_pgids $at_job_group$at_pgid"
+	done
+	test -z "$at_pgids" || kill -$at_signal $at_pgids 2>/dev/null
+	wait
+	if test "$at_jobs" -eq 1 || test -z "$at_verbose"; then
+	  echo >&2
+	fi
+	at_signame=`kill -l $at_signal 2>&1 || echo $at_signal`
+	set x $at_signame
+	test 0 -gt 2 && at_signame=$at_signal
+	{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: caught signal $at_signame, bailing out" >&5
+$as_echo "$as_me: WARNING: caught signal $at_signame, bailing out" >&2;}
+	as_fn_arith 128 + $at_signal && exit_status=$as_val
+	as_fn_exit $exit_status' $at_signal
+done
+
+rm -f "$at_stop_file"
+at_first=:
+
+if test $at_jobs -ne 1 &&
+     rm -f "$at_job_fifo" &&
+     test -n "$at_job_group" &&
+     ( mkfifo "$at_job_fifo" && trap 'exit 1' PIPE STOP TSTP ) 2>/dev/null
+then
+  # FIFO job dispatcher.
+
+  trap 'at_pids=
+	for at_pid in `jobs -p`; do
+	  at_pids="$at_pids $at_job_group$at_pid"
+	done
+	if test -n "$at_pids"; then
+	  at_sig=TSTP
+	  test "${TMOUT+set}" = set && at_sig=STOP
+	  kill -$at_sig $at_pids 2>/dev/null
 	fi
-	rm -f "$at_test_source"
+	kill -STOP $$
+	test -z "$at_pids" || kill -CONT $at_pids 2>/dev/null' TSTP
+
+  echo
+  # Turn jobs into a list of numbers, starting from 1.
+  at_joblist=`$as_echo " $at_groups_all " | \
+    sed 's/\( '$at_jobs'\) .*/\1/'`
+
+  set X $at_joblist
+  shift
+  for at_group in $at_groups; do
+    $at_job_control_on 2>/dev/null
+    (
+      # Start one test group.
+      $at_job_control_off
+      exec 6>"$at_job_fifo"
+      trap 'set +x; set +e
+	    trap "" PIPE
+	    echo stop > "$at_stop_file"
+	    echo token >&6
+	    as_fn_exit 141' PIPE
+      at_fn_group_prepare
+      if cd "$at_group_dir" &&
+	 at_fn_test $at_group &&
+	 . "$at_test_source" # AT_JOB_FIFO_FD>&-
+      then :; else
+	{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unable to parse test group: $at_group" >&5
+$as_echo "$as_me: WARNING: unable to parse test group: $at_group" >&2;}
+	at_failed=:
       fi
-      ;;
-    *)
-      # Upon failure, include the log into the testsuite's global
-      # log.  The failure message is written in the group log.  It
-      # is later included in the global log.
-      $as_echo "$at_log_msg" >> "$at_group_log"
+      at_fn_group_postprocess
+      echo token >&6
+    ) &
+    $at_job_control_off
+    if $at_first; then
+      at_first=false
+      exec 6<"$at_job_fifo"
+    fi
+    shift # Consume one token.
+    if test $# -gt 0; then :; else
+      read at_token <&6 || break
+      set x $*
+    fi
+    test -f "$at_stop_file" && break
+  done
+  # Read back the remaining ($at_jobs - 1) tokens.
+  set X $at_joblist
+  shift
+  if test $# -gt 0; then
+    shift
+    for at_job
+    do
+      read at_token
+    done <&6
+  fi
+  exec 6<&-
+  wait
+else
+  # Run serially, avoid forks and other potential surprises.
+  for at_group in $at_groups; do
+    at_fn_group_prepare
+    if cd "$at_group_dir" &&
+       at_fn_test $at_group &&
+       . "$at_test_source"; then :; else
+      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unable to parse test group: $at_group" >&5
+$as_echo "$as_me: WARNING: unable to parse test group: $at_group" >&2;}
+      at_failed=:
+    fi
+    at_fn_group_postprocess
+    test -f "$at_stop_file" && break
+    at_first=false
+  done
+fi
 
-      # Upon failure, keep the group directory for autopsy, and
-      # create the debugging script.
-      at_func_create_debugging_script
-      $at_errexit && break
-      ;;
-  esac
-done
+# Wrap up the test suite with summary statistics.
+cd "$at_helper_dir"
+
+# Use ?..???? when the list must remain sorted, the faster * otherwise.
+at_pass_list=`for f in */pass; do echo $f; done | sed '/\*/d; s,/pass,,'`
+at_skip_list=`for f in */skip; do echo $f; done | sed '/\*/d; s,/skip,,'`
+at_xfail_list=`for f in */xfail; do echo $f; done | sed '/\*/d; s,/xfail,,'`
+at_xpass_list=`for f in ?/xpass ??/xpass ???/xpass ????/xpass; do
+		 echo $f; done | sed '/?/d; s,/xpass,,'`
+at_fail_list=`for f in ?/fail ??/fail ???/fail ????/fail; do
+		echo $f; done | sed '/?/d; s,/fail,,'`
+
+set X $at_pass_list $at_xpass_list $at_xfail_list $at_fail_list $at_skip_list
+shift; at_group_count=$#
+set X $at_xpass_list; shift; at_xpass_count=$#; at_xpass_list=$*
+set X $at_xfail_list; shift; at_xfail_count=$#
+set X $at_fail_list; shift; at_fail_count=$#; at_fail_list=$*
+set X $at_skip_list; shift; at_skip_count=$#
+
+as_fn_arith $at_group_count - $at_skip_count && at_run_count=$as_val
+as_fn_arith $at_xpass_count + $at_fail_count && at_unexpected_count=$as_val
+as_fn_arith $at_xfail_count + $at_fail_count && at_total_fail_count=$as_val
 
 # Back to the top directory.
 cd "$at_dir"
+rm -rf "$at_helper_dir"
 
 # Compute the duration of the suite.
 at_stop_date=`date`
@@ -1710,34 +1908,16 @@ at_stop_time=`date +%s 2>/dev/null`
 $as_echo "$as_me: ending at: $at_stop_date" >&5
 case $at_start_time,$at_stop_time in
   [0-9]*,[0-9]*)
-    at_func_arith $at_stop_time - $at_start_time
-    at_duration_s=$at_func_arith_result
-    at_func_arith $at_duration_s / 60
-    at_duration_m=$at_func_arith_result
-    at_func_arith $at_duration_m / 60
-    at_duration_h=$at_func_arith_result
-    at_func_arith $at_duration_s % 60
-    at_duration_s=$at_func_arith_result
-    at_func_arith $at_duration_m % 60
-    at_duration_m=$at_func_arith_result
+    as_fn_arith $at_stop_time - $at_start_time && at_duration_s=$as_val
+    as_fn_arith $at_duration_s / 60 && at_duration_m=$as_val
+    as_fn_arith $at_duration_m / 60 && at_duration_h=$as_val
+    as_fn_arith $at_duration_s % 60 && at_duration_s=$as_val
+    as_fn_arith $at_duration_m % 60 && at_duration_m=$as_val
     at_duration="${at_duration_h}h ${at_duration_m}m ${at_duration_s}s"
     $as_echo "$as_me: test suite duration: $at_duration" >&5
     ;;
 esac
 
-# Wrap up the test suite with summary statistics.
-set X $at_skip_list; shift; at_skip_count=$#
-set X $at_fail_list; shift; at_fail_count=$#
-set X $at_xpass_list; shift; at_xpass_count=$#
-set X $at_xfail_list; shift; at_xfail_count=$#
-
-at_func_arith $at_group_count - $at_skip_count
-at_run_count=$at_func_arith_result
-at_func_arith $at_xpass_count + $at_fail_count
-at_unexpected_count=$at_func_arith_result
-at_func_arith $at_xfail_count + $at_fail_count
-at_total_fail_count=$at_func_arith_result
-
 echo
 cat <<\_ASBOX
 ## ------------- ##
@@ -1889,7 +2069,7 @@ _ASBOX
   $as_echo "Please send \`${at_testdir+${at_testdir}/}$as_me.log' and all information you think might help:
 
    To: <bug-libtool@gnu.org>
-   Subject: [libtool 2.2.6] $as_me:$at_fail_list${at_fail_list:+ failed${at_xpass_list:+,}}$at_xpass_list${at_xpass_list:+ passed unexpectedly}
+   Subject: [libtool 2.2.6b] $as_me: $at_fail_list${at_fail_list:+ failed${at_xpass_list:+, }}$at_xpass_list${at_xpass_list:+ passed unexpectedly}
 "
   if test $at_debug_p = false; then
     echo
@@ -1909,9 +2089,10 @@ exit 0
 #AT_START_1
 # 1. libtoolize.at:83: libtoolize macro installation
 at_setup_line='libtoolize.at:83'
-at_func_banner 1
+at_fn_banner 1
 at_desc="libtoolize macro installation"
-$at_quiet $as_echo_n "  1: $at_desc                  "
+at_desc_line="  1: $at_desc                  "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
@@ -1920,7 +2101,7 @@ echo "#                             -*-
 
 
 cat >configure.ac <<'_ATEOF'
-AC_INIT([libtoolize-demo], 2.2.6, bug-libtool@gnu.org)
+AC_INIT([libtoolize-demo], 2.2.6b, bug-libtool@gnu.org)
 AC_CONFIG_AUX_DIR([build-aux])
 AC_CONFIG_MACRO_DIR([m4])
 LT_INIT
@@ -1946,44 +2127,37 @@ lt_name=`$ECHO "$LIBTOOLIZE" | sed "s,^.
 sed "s/libtoolize/$lt_name/g
 s|/usr/local/share/aclocal/|${tst_aclocaldir-$abs_top_srcdir/libltdl/m4}/|" < expout > expout.t
 mv -f expout.t expout
-{ $at_traceoff
-$as_echo "$at_srcdir/libtoolize.at:99: $LIBTOOLIZE --copy
+{ set +x
+$as_echo "$at_srcdir/libtoolize.at:99: \$LIBTOOLIZE --copy
 
 "
-echo libtoolize.at:99 >"$at_check_line_file"
+at_fn_check_prepare_notrace 'an embedded newline' "libtoolize.at:99"
+( $at_check_trace; $LIBTOOLIZE --copy
 
-if test -n "$at_traceon"; then
-  ( $at_traceon; $LIBTOOLIZE --copy
-
- ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOLIZE --copy
 
- ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 $at_diff expout "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/libtoolize.at:99"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/libtoolize.at:99"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
+read at_status <"$at_status_file"
 #AT_STOP_1
 #AT_START_2
 # 2. libtoolize.at:108: libtoolize macro directory mismatch error
 at_setup_line='libtoolize.at:108'
-at_func_banner 1
+at_fn_banner 1
 at_desc="libtoolize macro directory mismatch error"
-$at_quiet $as_echo_n "  2: $at_desc      "
+at_desc_line="  2: $at_desc      "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
@@ -1992,7 +2166,7 @@ echo "#                             -*-
 
 
 cat >configure.ac <<'_ATEOF'
-AC_INIT([libtoolize-demo], 2.2.6, bug-libtool@gnu.org)
+AC_INIT([libtoolize-demo], 2.2.6b, bug-libtool@gnu.org)
 AC_CONFIG_AUX_DIR([build-aux])
 AC_CONFIG_MACRO_DIR([m4])
 LT_INIT
@@ -2015,44 +2189,37 @@ lt_name=`$ECHO "$LIBTOOLIZE" | sed "s,^.
 sed "s/libtoolize/$lt_name/g
 s|/usr/local/share/aclocal/|${tst_aclocaldir-$abs_top_srcdir/libltdl/m4}/|" < experr > experr.t
 mv -f experr.t experr
-{ $at_traceoff
-$as_echo "$at_srcdir/libtoolize.at:120: $LIBTOOLIZE --copy
+{ set +x
+$as_echo "$at_srcdir/libtoolize.at:120: \$LIBTOOLIZE --copy
 
 "
-echo libtoolize.at:120 >"$at_check_line_file"
+at_fn_check_prepare_notrace 'an embedded newline' "libtoolize.at:120"
+( $at_check_trace; $LIBTOOLIZE --copy
 
-if test -n "$at_traceon"; then
-  ( $at_traceon; $LIBTOOLIZE --copy
-
- ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOLIZE --copy
 
- ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 $at_diff experr "$at_stderr" || at_failed=:
 echo stdout:; cat "$at_stdout"
-at_func_check_status 1 $at_status "$at_srcdir/libtoolize.at:120"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 1 $at_status "$at_srcdir/libtoolize.at:120"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
+read at_status <"$at_status_file"
 #AT_STOP_2
 #AT_START_3
 # 3. libtoolize.at:128: libtoolize macro serial update
 at_setup_line='libtoolize.at:128'
-at_func_banner 1
+at_fn_banner 1
 at_desc="libtoolize macro serial update"
-$at_quiet $as_echo_n "  3: $at_desc                 "
+at_desc_line="  3: $at_desc                 "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
@@ -2061,7 +2228,7 @@ echo "#                             -*-
 
 
 cat >configure.ac <<'_ATEOF'
-AC_INIT([libtoolize-demo], 2.2.6, bug-libtool@gnu.org)
+AC_INIT([libtoolize-demo], 2.2.6b, bug-libtool@gnu.org)
 AC_CONFIG_AUX_DIR([build-aux])
 AC_CONFIG_MACRO_DIR([m4])
 LT_INIT
@@ -2141,29 +2308,21 @@ lt_name=`$ECHO "$LIBTOOLIZE" | sed "s,^.
 sed "s/libtoolize/$lt_name/g
 s|/usr/local/share/aclocal/|${tst_aclocaldir-$abs_top_srcdir/libltdl/m4}/|" < experr > experr.t
 mv -f experr.t experr
-{ $at_traceoff
-$as_echo "$at_srcdir/libtoolize.at:151: $LIBTOOLIZE --copy
+{ set +x
+$as_echo "$at_srcdir/libtoolize.at:151: \$LIBTOOLIZE --copy
 
 "
-echo libtoolize.at:151 >"$at_check_line_file"
+at_fn_check_prepare_notrace 'an embedded newline' "libtoolize.at:151"
+( $at_check_trace; $LIBTOOLIZE --copy
 
-if test -n "$at_traceon"; then
-  ( $at_traceon; $LIBTOOLIZE --copy
-
- ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOLIZE --copy
 
- ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 $at_diff experr "$at_stderr" || at_failed=:
 $at_diff expout "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/libtoolize.at:151"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/libtoolize.at:151"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -2191,29 +2350,21 @@ lt_name=`$ECHO "$LIBTOOLIZE" | sed "s,^.
 sed "s/libtoolize/$lt_name/g
 s|/usr/local/share/aclocal/|${tst_aclocaldir-$abs_top_srcdir/libltdl/m4}/|" < experr > experr.t
 mv -f experr.t experr
-{ $at_traceoff
-$as_echo "$at_srcdir/libtoolize.at:165: $LIBTOOLIZE --copy
+{ set +x
+$as_echo "$at_srcdir/libtoolize.at:165: \$LIBTOOLIZE --copy
 
 "
-echo libtoolize.at:165 >"$at_check_line_file"
+at_fn_check_prepare_notrace 'an embedded newline' "libtoolize.at:165"
+( $at_check_trace; $LIBTOOLIZE --copy
 
-if test -n "$at_traceon"; then
-  ( $at_traceon; $LIBTOOLIZE --copy
-
- ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOLIZE --copy
 
- ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 $at_diff experr "$at_stderr" || at_failed=:
 $at_diff expout "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/libtoolize.at:165"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/libtoolize.at:165"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -2239,29 +2390,21 @@ lt_name=`$ECHO "$LIBTOOLIZE" | sed "s,^.
 sed "s/libtoolize/$lt_name/g
 s|/usr/local/share/aclocal/|${tst_aclocaldir-$abs_top_srcdir/libltdl/m4}/|" < expout > expout.t
 mv -f expout.t expout
-{ $at_traceoff
-$as_echo "$at_srcdir/libtoolize.at:183: $LIBTOOLIZE --copy --force
+{ set +x
+$as_echo "$at_srcdir/libtoolize.at:183: \$LIBTOOLIZE --copy --force
 
 "
-echo libtoolize.at:183 >"$at_check_line_file"
+at_fn_check_prepare_notrace 'an embedded newline' "libtoolize.at:183"
+( $at_check_trace; $LIBTOOLIZE --copy --force
 
-if test -n "$at_traceon"; then
-  ( $at_traceon; $LIBTOOLIZE --copy --force
-
- ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOLIZE --copy --force
 
- ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 $at_diff expout "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/libtoolize.at:183"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/libtoolize.at:183"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -2279,44 +2422,37 @@ lt_name=`$ECHO "$LIBTOOLIZE" | sed "s,^.
 sed "s/libtoolize/$lt_name/g
 s|/usr/local/share/aclocal/|${tst_aclocaldir-$abs_top_srcdir/libltdl/m4}/|" < expout > expout.t
 mv -f expout.t expout
-{ $at_traceoff
-$as_echo "$at_srcdir/libtoolize.at:192: $LIBTOOLIZE --copy
+{ set +x
+$as_echo "$at_srcdir/libtoolize.at:192: \$LIBTOOLIZE --copy
 
 "
-echo libtoolize.at:192 >"$at_check_line_file"
+at_fn_check_prepare_notrace 'an embedded newline' "libtoolize.at:192"
+( $at_check_trace; $LIBTOOLIZE --copy
 
-if test -n "$at_traceon"; then
-  ( $at_traceon; $LIBTOOLIZE --copy
-
- ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOLIZE --copy
 
- ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 $at_diff expout "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/libtoolize.at:192"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/libtoolize.at:192"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
+read at_status <"$at_status_file"
 #AT_STOP_3
 #AT_START_4
 # 4. libtoolize.at:201: libtoolize config files serial update
 at_setup_line='libtoolize.at:201'
-at_func_banner 1
+at_fn_banner 1
 at_desc="libtoolize config files serial update"
-$at_quiet $as_echo_n "  4: $at_desc          "
+at_desc_line="  4: $at_desc          "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
@@ -2325,7 +2461,7 @@ echo "#                             -*-
 
 
 cat >configure.ac <<'_ATEOF'
-AC_INIT([libtoolize-demo], 2.2.6, bug-libtool@gnu.org)
+AC_INIT([libtoolize-demo], 2.2.6b, bug-libtool@gnu.org)
 AC_CONFIG_AUX_DIR([build-aux])
 AC_CONFIG_MACRO_DIR([m4])
 LT_INIT
@@ -2409,29 +2545,21 @@ lt_name=`$ECHO "$LIBTOOLIZE" | sed "s,^.
 sed "s/libtoolize/$lt_name/g
 s|/usr/local/share/aclocal/|${tst_aclocaldir-$abs_top_srcdir/libltdl/m4}/|" < experr > experr.t
 mv -f experr.t experr
-{ $at_traceoff
-$as_echo "$at_srcdir/libtoolize.at:228: $LIBTOOLIZE --copy --install
+{ set +x
+$as_echo "$at_srcdir/libtoolize.at:228: \$LIBTOOLIZE --copy --install
 
 "
-echo libtoolize.at:228 >"$at_check_line_file"
+at_fn_check_prepare_notrace 'an embedded newline' "libtoolize.at:228"
+( $at_check_trace; $LIBTOOLIZE --copy --install
 
-if test -n "$at_traceon"; then
-  ( $at_traceon; $LIBTOOLIZE --copy --install
-
- ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOLIZE --copy --install
 
- ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 $at_diff experr "$at_stderr" || at_failed=:
 $at_diff expout "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/libtoolize.at:228"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/libtoolize.at:228"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -2459,29 +2587,21 @@ lt_name=`$ECHO "$LIBTOOLIZE" | sed "s,^.
 sed "s/libtoolize/$lt_name/g
 s|/usr/local/share/aclocal/|${tst_aclocaldir-$abs_top_srcdir/libltdl/m4}/|" < experr > experr.t
 mv -f experr.t experr
-{ $at_traceoff
-$as_echo "$at_srcdir/libtoolize.at:242: $LIBTOOLIZE --copy --install
+{ set +x
+$as_echo "$at_srcdir/libtoolize.at:242: \$LIBTOOLIZE --copy --install
 
 "
-echo libtoolize.at:242 >"$at_check_line_file"
+at_fn_check_prepare_notrace 'an embedded newline' "libtoolize.at:242"
+( $at_check_trace; $LIBTOOLIZE --copy --install
 
-if test -n "$at_traceon"; then
-  ( $at_traceon; $LIBTOOLIZE --copy --install
-
- ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOLIZE --copy --install
 
- ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 $at_diff experr "$at_stderr" || at_failed=:
 $at_diff expout "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/libtoolize.at:242"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/libtoolize.at:242"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -2510,29 +2630,21 @@ lt_name=`$ECHO "$LIBTOOLIZE" | sed "s,^.
 sed "s/libtoolize/$lt_name/g
 s|/usr/local/share/aclocal/|${tst_aclocaldir-$abs_top_srcdir/libltdl/m4}/|" < expout > expout.t
 mv -f expout.t expout
-{ $at_traceoff
-$as_echo "$at_srcdir/libtoolize.at:263: $LIBTOOLIZE --copy --force --install
+{ set +x
+$as_echo "$at_srcdir/libtoolize.at:263: \$LIBTOOLIZE --copy --force --install
 
 "
-echo libtoolize.at:263 >"$at_check_line_file"
+at_fn_check_prepare_notrace 'an embedded newline' "libtoolize.at:263"
+( $at_check_trace; $LIBTOOLIZE --copy --force --install
 
-if test -n "$at_traceon"; then
-  ( $at_traceon; $LIBTOOLIZE --copy --force --install
-
- ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOLIZE --copy --force --install
 
- ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 $at_diff expout "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/libtoolize.at:263"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/libtoolize.at:263"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -2550,44 +2662,37 @@ lt_name=`$ECHO "$LIBTOOLIZE" | sed "s,^.
 sed "s/libtoolize/$lt_name/g
 s|/usr/local/share/aclocal/|${tst_aclocaldir-$abs_top_srcdir/libltdl/m4}/|" < expout > expout.t
 mv -f expout.t expout
-{ $at_traceoff
-$as_echo "$at_srcdir/libtoolize.at:272: $LIBTOOLIZE --copy --install
+{ set +x
+$as_echo "$at_srcdir/libtoolize.at:272: \$LIBTOOLIZE --copy --install
 
 "
-echo libtoolize.at:272 >"$at_check_line_file"
+at_fn_check_prepare_notrace 'an embedded newline' "libtoolize.at:272"
+( $at_check_trace; $LIBTOOLIZE --copy --install
 
-if test -n "$at_traceon"; then
-  ( $at_traceon; $LIBTOOLIZE --copy --install
-
- ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOLIZE --copy --install
 
- ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 $at_diff expout "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/libtoolize.at:272"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/libtoolize.at:272"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
+read at_status <"$at_status_file"
 #AT_STOP_4
 #AT_START_5
 # 5. libtoolize.at:281: diagnose missing LT_CONFIG_LTDL_DIR
 at_setup_line='libtoolize.at:281'
-at_func_banner 1
+at_fn_banner 1
 at_desc="diagnose missing LT_CONFIG_LTDL_DIR"
-$at_quiet $as_echo_n "  5: $at_desc            "
+at_desc_line="  5: $at_desc            "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
@@ -2645,7 +2750,7 @@ _ATEOF
 
 
 cat >configure.ac <<'_ATEOF'
-AC_INIT([libtoolize-demo], 2.2.6, bug-libtool@gnu.org)
+AC_INIT([libtoolize-demo], 2.2.6b, bug-libtool@gnu.org)
 AC_CONFIG_AUX_DIR([build-aux])
 AC_CONFIG_MACRO_DIR([m4])
 LT_INIT
@@ -2658,44 +2763,37 @@ lt_name=`$ECHO "$LIBTOOLIZE" | sed "s,^.
 sed "s/libtoolize/$lt_name/g
 s|/usr/local/share/aclocal/|${tst_aclocaldir-$abs_top_srcdir/libltdl/m4}/|" < expout > expout.t
 mv -f expout.t expout
-{ $at_traceoff
-$as_echo "$at_srcdir/libtoolize.at:340: $LIBTOOLIZE --copy --install --ltdl=ltdl
+{ set +x
+$as_echo "$at_srcdir/libtoolize.at:340: \$LIBTOOLIZE --copy --install --ltdl=ltdl
 
 "
-echo libtoolize.at:340 >"$at_check_line_file"
+at_fn_check_prepare_notrace 'an embedded newline' "libtoolize.at:340"
+( $at_check_trace; $LIBTOOLIZE --copy --install --ltdl=ltdl
 
-if test -n "$at_traceon"; then
-  ( $at_traceon; $LIBTOOLIZE --copy --install --ltdl=ltdl
-
- ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOLIZE --copy --install --ltdl=ltdl
 
- ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 $at_diff expout "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/libtoolize.at:340"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/libtoolize.at:340"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
+read at_status <"$at_status_file"
 #AT_STOP_5
 #AT_START_6
 # 6. libtoolize.at:426: copy ltdl.m4 with shared macro directory
 at_setup_line='libtoolize.at:426'
-at_func_banner 1
+at_fn_banner 1
 at_desc="copy ltdl.m4 with shared macro directory"
-$at_quiet $as_echo_n "  6: $at_desc       "
+at_desc_line="  6: $at_desc       "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
@@ -2759,7 +2857,7 @@ _ATEOF
 
 
 cat >configure.ac <<'_ATEOF'
-AC_INIT([libtoolize-demo], 2.2.6, bug-libtool@gnu.org)
+AC_INIT([libtoolize-demo], 2.2.6b, bug-libtool@gnu.org)
 LT_CONFIG_LTDL_DIR([ltdl])
 AC_CONFIG_AUX_DIR([ltdl/config])
 AC_CONFIG_MACRO_DIR([ltdl/m4])
@@ -2779,44 +2877,37 @@ lt_name=`$ECHO "$LIBTOOLIZE" | sed "s,^.
 sed "s/libtoolize/$lt_name/g
 s|/usr/local/share/aclocal/|${tst_aclocaldir-$abs_top_srcdir/libltdl/m4}/|" < expout > expout.t
 mv -f expout.t expout
-{ $at_traceoff
-$as_echo "$at_srcdir/libtoolize.at:430: $LIBTOOLIZE --ltdl
+{ set +x
+$as_echo "$at_srcdir/libtoolize.at:430: \$LIBTOOLIZE --ltdl
 
 "
-echo libtoolize.at:430 >"$at_check_line_file"
+at_fn_check_prepare_notrace 'an embedded newline' "libtoolize.at:430"
+( $at_check_trace; $LIBTOOLIZE --ltdl
 
-if test -n "$at_traceon"; then
-  ( $at_traceon; $LIBTOOLIZE --ltdl
-
- ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOLIZE --ltdl
 
- ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 $at_diff expout "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/libtoolize.at:430"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/libtoolize.at:430"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
+read at_status <"$at_status_file"
 #AT_STOP_6
 #AT_START_7
 # 7. libtoolize.at:438: correctly parse LTDL_INIT from configure.ac
 at_setup_line='libtoolize.at:438'
-at_func_banner 1
+at_fn_banner 1
 at_desc="correctly parse LTDL_INIT from configure.ac"
-$at_quiet $as_echo_n "  7: $at_desc    "
+at_desc_line="  7: $at_desc    "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
@@ -2880,7 +2971,7 @@ _ATEOF
 
 
 cat >configure.ac <<'_ATEOF'
-AC_INIT([libtoolize-demo], 2.2.6, bug-libtool@gnu.org)
+AC_INIT([libtoolize-demo], 2.2.6b, bug-libtool@gnu.org)
 LT_CONFIG_LTDL_DIR([ltdl])
 AC_CONFIG_AUX_DIR([ltdl/config])
 AC_CONFIG_MACRO_DIR([ltdl/m4])
@@ -2900,44 +2991,37 @@ lt_name=`$ECHO "$LIBTOOLIZE" | sed "s,^.
 sed "s/libtoolize/$lt_name/g
 s|/usr/local/share/aclocal/|${tst_aclocaldir-$abs_top_srcdir/libltdl/m4}/|" < expout > expout.t
 mv -f expout.t expout
-{ $at_traceoff
-$as_echo "$at_srcdir/libtoolize.at:442: $LIBTOOLIZE
+{ set +x
+$as_echo "$at_srcdir/libtoolize.at:442: \$LIBTOOLIZE
 
 "
-echo libtoolize.at:442 >"$at_check_line_file"
+at_fn_check_prepare_notrace 'an embedded newline' "libtoolize.at:442"
+( $at_check_trace; $LIBTOOLIZE
 
-if test -n "$at_traceon"; then
-  ( $at_traceon; $LIBTOOLIZE
-
- ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOLIZE
 
- ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 $at_diff expout "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/libtoolize.at:442"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/libtoolize.at:442"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
+read at_status <"$at_status_file"
 #AT_STOP_7
 #AT_START_8
 # 8. libtoolize.at:450: diagnose missing LTDL_INIT invocation
 at_setup_line='libtoolize.at:450'
-at_func_banner 1
+at_fn_banner 1
 at_desc="diagnose missing LTDL_INIT invocation"
-$at_quiet $as_echo_n "  8: $at_desc          "
+at_desc_line="  8: $at_desc          "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
@@ -3003,7 +3087,7 @@ _ATEOF
 
 
 cat >configure.ac <<'_ATEOF'
-AC_INIT([libtoolize-demo], 2.2.6, bug-libtool@gnu.org)
+AC_INIT([libtoolize-demo], 2.2.6b, bug-libtool@gnu.org)
 LT_CONFIG_LTDL_DIR([ltdl])
 AC_CONFIG_AUX_DIR([ltdl/config])
 AC_CONFIG_MACRO_DIR([ltdl/m4])
@@ -3016,44 +3100,37 @@ lt_name=`$ECHO "$LIBTOOLIZE" | sed "s,^.
 sed "s/libtoolize/$lt_name/g
 s|/usr/local/share/aclocal/|${tst_aclocaldir-$abs_top_srcdir/libltdl/m4}/|" < expout > expout.t
 mv -f expout.t expout
-{ $at_traceoff
-$as_echo "$at_srcdir/libtoolize.at:517: $LIBTOOLIZE --ltdl --copy
+{ set +x
+$as_echo "$at_srcdir/libtoolize.at:517: \$LIBTOOLIZE --ltdl --copy
 
 "
-echo libtoolize.at:517 >"$at_check_line_file"
+at_fn_check_prepare_notrace 'an embedded newline' "libtoolize.at:517"
+( $at_check_trace; $LIBTOOLIZE --ltdl --copy
 
-if test -n "$at_traceon"; then
-  ( $at_traceon; $LIBTOOLIZE --ltdl --copy
-
- ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOLIZE --ltdl --copy
 
- ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 $at_diff expout "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/libtoolize.at:517"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/libtoolize.at:517"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
+read at_status <"$at_status_file"
 #AT_STOP_8
 #AT_START_9
 # 9. libtoolize.at:527: upgrading verbatim style aclocal.m4
 at_setup_line='libtoolize.at:527'
-at_func_banner 1
+at_fn_banner 1
 at_desc="upgrading verbatim style aclocal.m4"
-$at_quiet $as_echo_n "  9: $at_desc            "
+at_desc_line="  9: $at_desc            "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
       test "$ACLOCAL" = no && at_xfail=yes
 echo "#                             -*- compilation -*-" >> "$at_group_log"
@@ -3063,7 +3140,7 @@ echo "#                             -*-
 
 
 cat >configure.ac <<'_ATEOF'
-AC_INIT([libtoolize-demo], 2.2.6, bug-libtool@gnu.org)
+AC_INIT([libtoolize-demo], 2.2.6b, bug-libtool@gnu.org)
 AC_CONFIG_AUX_DIR([build-aux])
 LT_INIT
 AC_OUTPUT
@@ -3089,29 +3166,21 @@ lt_name=`$ECHO "$LIBTOOLIZE" | sed "s,^.
 sed "s/libtoolize/$lt_name/g
 s|/usr/local/share/aclocal/|${tst_aclocaldir-$abs_top_srcdir/libltdl/m4}/|" < expout > expout.t
 mv -f expout.t expout
-{ $at_traceoff
-$as_echo "$at_srcdir/libtoolize.at:550: $LIBTOOLIZE --copy
+{ set +x
+$as_echo "$at_srcdir/libtoolize.at:550: \$LIBTOOLIZE --copy
 
 "
-echo libtoolize.at:550 >"$at_check_line_file"
+at_fn_check_prepare_notrace 'an embedded newline' "libtoolize.at:550"
+( $at_check_trace; $LIBTOOLIZE --copy
 
-if test -n "$at_traceon"; then
-  ( $at_traceon; $LIBTOOLIZE --copy
-
- ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOLIZE --copy
 
- ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 $at_diff expout "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/libtoolize.at:550"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/libtoolize.at:550"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -3122,7 +3191,7 @@ $at_traceon; }
 ## --------------------------------------- ##
 
 cat >configure.ac <<'_ATEOF'
-AC_INIT([libtoolize-demo], 2.2.6, bug-libtool@gnu.org)
+AC_INIT([libtoolize-demo], 2.2.6b, bug-libtool@gnu.org)
 AC_CONFIG_AUX_DIR([build-aux])
 AC_CONFIG_MACRO_DIR([m4])
 LT_INIT
@@ -3166,29 +3235,21 @@ lt_name=`$ECHO "$LIBTOOLIZE" | sed "s,^.
 sed "s/libtoolize/$lt_name/g
 s|/usr/local/share/aclocal/|${tst_aclocaldir-$abs_top_srcdir/libltdl/m4}/|" < expout > expout.t
 mv -f expout.t expout
-{ $at_traceoff
-$as_echo "$at_srcdir/libtoolize.at:594: $LIBTOOLIZE --copy
+{ set +x
+$as_echo "$at_srcdir/libtoolize.at:594: \$LIBTOOLIZE --copy
 
 "
-echo libtoolize.at:594 >"$at_check_line_file"
+at_fn_check_prepare_notrace 'an embedded newline' "libtoolize.at:594"
+( $at_check_trace; $LIBTOOLIZE --copy
 
-if test -n "$at_traceon"; then
-  ( $at_traceon; $LIBTOOLIZE --copy
-
- ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOLIZE --copy
 
- ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 $at_diff expout "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/libtoolize.at:594"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/libtoolize.at:594"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -3198,24 +3259,17 @@ $at_traceon; }
 ## Upgrading an aclocal maintained aclocal.m4. ##
 ## ------------------------------------------- ##
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/libtoolize.at:601: \$ACLOCAL -I m4"
-echo libtoolize.at:601 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$ACLOCAL -I m4"; then
-  ( $at_traceon; $ACLOCAL -I m4 ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $ACLOCAL -I m4 ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$ACLOCAL -I m4" "libtoolize.at:601"
+( $at_check_trace; $ACLOCAL -I m4
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/libtoolize.at:601"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/libtoolize.at:601"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -3258,29 +3312,21 @@ lt_name=`$ECHO "$LIBTOOLIZE" | sed "s,^.
 sed "s/libtoolize/$lt_name/g
 s|/usr/local/share/aclocal/|${tst_aclocaldir-$abs_top_srcdir/libltdl/m4}/|" < experr > experr.t
 mv -f experr.t experr
-{ $at_traceoff
-$as_echo "$at_srcdir/libtoolize.at:625: $LIBTOOLIZE --copy
+{ set +x
+$as_echo "$at_srcdir/libtoolize.at:625: \$LIBTOOLIZE --copy
 
 "
-echo libtoolize.at:625 >"$at_check_line_file"
+at_fn_check_prepare_notrace 'an embedded newline' "libtoolize.at:625"
+( $at_check_trace; $LIBTOOLIZE --copy
 
-if test -n "$at_traceon"; then
-  ( $at_traceon; $LIBTOOLIZE --copy
-
- ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOLIZE --copy
 
- ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 $at_diff experr "$at_stderr" || at_failed=:
 $at_diff expout "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/libtoolize.at:625"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/libtoolize.at:625"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -3305,44 +3351,37 @@ lt_name=`$ECHO "$LIBTOOLIZE" | sed "s,^.
 sed "s/libtoolize/$lt_name/g
 s|/usr/local/share/aclocal/|${tst_aclocaldir-$abs_top_srcdir/libltdl/m4}/|" < expout > expout.t
 mv -f expout.t expout
-{ $at_traceoff
-$as_echo "$at_srcdir/libtoolize.at:642: $LIBTOOLIZE --copy --force
+{ set +x
+$as_echo "$at_srcdir/libtoolize.at:642: \$LIBTOOLIZE --copy --force
 
 "
-echo libtoolize.at:642 >"$at_check_line_file"
+at_fn_check_prepare_notrace 'an embedded newline' "libtoolize.at:642"
+( $at_check_trace; $LIBTOOLIZE --copy --force
 
-if test -n "$at_traceon"; then
-  ( $at_traceon; $LIBTOOLIZE --copy --force
-
- ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOLIZE --copy --force
 
- ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 $at_diff expout "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/libtoolize.at:642"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/libtoolize.at:642"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
+read at_status <"$at_status_file"
 #AT_STOP_9
 #AT_START_10
 # 10. libtoolize.at:651: verbatim aclocal.m4 w/o AC_CONFIG_MACRO_DIR
 at_setup_line='libtoolize.at:651'
-at_func_banner 1
+at_fn_banner 1
 at_desc="verbatim aclocal.m4 w/o AC_CONFIG_MACRO_DIR"
-$at_quiet $as_echo_n " 10: $at_desc    "
+at_desc_line=" 10: $at_desc    "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
       test "$ACLOCAL" = no && at_xfail=yes
 echo "#                             -*- compilation -*-" >> "$at_group_log"
@@ -3352,7 +3391,7 @@ echo "#                             -*-
 
 
 cat >configure.ac <<'_ATEOF'
-AC_INIT([libtoolize-demo], 2.2.6, bug-libtool@gnu.org)
+AC_INIT([libtoolize-demo], 2.2.6b, bug-libtool@gnu.org)
 LT_INIT
 AC_OUTPUT
 _ATEOF
@@ -3390,29 +3429,21 @@ lt_name=`$ECHO "$LIBTOOLIZE" | sed "s,^.
 sed "s/libtoolize/$lt_name/g
 s|/usr/local/share/aclocal/|${tst_aclocaldir-$abs_top_srcdir/libltdl/m4}/|" < expout > expout.t
 mv -f expout.t expout
-{ $at_traceoff
-$as_echo "$at_srcdir/libtoolize.at:685: $LIBTOOLIZE --copy
+{ set +x
+$as_echo "$at_srcdir/libtoolize.at:685: \$LIBTOOLIZE --copy
 
 "
-echo libtoolize.at:685 >"$at_check_line_file"
+at_fn_check_prepare_notrace 'an embedded newline' "libtoolize.at:685"
+( $at_check_trace; $LIBTOOLIZE --copy
 
-if test -n "$at_traceon"; then
-  ( $at_traceon; $LIBTOOLIZE --copy
-
- ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOLIZE --copy
 
- ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 $at_diff expout "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/libtoolize.at:685"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/libtoolize.at:685"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -3422,24 +3453,17 @@ $at_traceon; }
 ## Upgrading an aclocal maintained aclocal.m4 without AC_CONFIG_MACRO_DIR. ##
 ## ----------------------------------------------------------------------- ##
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/libtoolize.at:692: \$ACLOCAL -I \$abs_top_srcdir/libltdl/m4"
-echo libtoolize.at:692 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$ACLOCAL -I $abs_top_srcdir/libltdl/m4"; then
-  ( $at_traceon; $ACLOCAL -I $abs_top_srcdir/libltdl/m4 ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $ACLOCAL -I $abs_top_srcdir/libltdl/m4 ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$ACLOCAL -I $abs_top_srcdir/libltdl/m4" "libtoolize.at:692"
+( $at_check_trace; $ACLOCAL -I $abs_top_srcdir/libltdl/m4
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/libtoolize.at:692"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/libtoolize.at:692"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -3516,29 +3540,21 @@ lt_name=`$ECHO "$LIBTOOLIZE" | sed "s,^.
 sed "s/libtoolize/$lt_name/g
 s|/usr/local/share/aclocal/|${tst_aclocaldir-$abs_top_srcdir/libltdl/m4}/|" < expout > expout.t
 mv -f expout.t expout
-{ $at_traceoff
-$as_echo "$at_srcdir/libtoolize.at:759: $LIBTOOLIZE --copy
+{ set +x
+$as_echo "$at_srcdir/libtoolize.at:759: \$LIBTOOLIZE --copy
 
 "
-echo libtoolize.at:759 >"$at_check_line_file"
+at_fn_check_prepare_notrace 'an embedded newline' "libtoolize.at:759"
+( $at_check_trace; $LIBTOOLIZE --copy
 
-if test -n "$at_traceon"; then
-  ( $at_traceon; $LIBTOOLIZE --copy
-
- ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOLIZE --copy
 
- ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 $at_diff expout "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/libtoolize.at:759"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/libtoolize.at:759"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -3561,44 +3577,37 @@ lt_name=`$ECHO "$LIBTOOLIZE" | sed "s,^.
 sed "s/libtoolize/$lt_name/g
 s|/usr/local/share/aclocal/|${tst_aclocaldir-$abs_top_srcdir/libltdl/m4}/|" < expout > expout.t
 mv -f expout.t expout
-{ $at_traceoff
-$as_echo "$at_srcdir/libtoolize.at:774: $LIBTOOLIZE --copy --force
+{ set +x
+$as_echo "$at_srcdir/libtoolize.at:774: \$LIBTOOLIZE --copy --force
 
 "
-echo libtoolize.at:774 >"$at_check_line_file"
+at_fn_check_prepare_notrace 'an embedded newline' "libtoolize.at:774"
+( $at_check_trace; $LIBTOOLIZE --copy --force
 
-if test -n "$at_traceon"; then
-  ( $at_traceon; $LIBTOOLIZE --copy --force
-
- ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOLIZE --copy --force
 
- ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 $at_diff expout "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/libtoolize.at:774"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/libtoolize.at:774"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
+read at_status <"$at_status_file"
 #AT_STOP_10
 #AT_START_11
 # 11. libtoolize.at:783: nonrecursive ltdl with AC_CONFIG_MACRO_DIR
 at_setup_line='libtoolize.at:783'
-at_func_banner 1
+at_fn_banner 1
 at_desc="nonrecursive ltdl with AC_CONFIG_MACRO_DIR"
-$at_quiet $as_echo_n " 11: $at_desc     "
+at_desc_line=" 11: $at_desc     "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
@@ -3654,7 +3663,7 @@ _ATEOF
 
 
 cat >configure.ac <<'_ATEOF'
-AC_INIT([libtoolize-demo], 2.2.6, bug-libtool@gnu.org)
+AC_INIT([libtoolize-demo], 2.2.6b, bug-libtool@gnu.org)
 LT_CONFIG_LTDL_DIR([ltdl])
 AC_CONFIG_AUX_DIR([build-aux])
 AC_CONFIG_MACRO_DIR([m4])
@@ -3673,44 +3682,37 @@ lt_name=`$ECHO "$LIBTOOLIZE" | sed "s,^.
 sed "s/libtoolize/$lt_name/g
 s|/usr/local/share/aclocal/|${tst_aclocaldir-$abs_top_srcdir/libltdl/m4}/|" < expout > expout.t
 mv -f expout.t expout
-{ $at_traceoff
-$as_echo "$at_srcdir/libtoolize.at:845: $LIBTOOLIZE --copy --install --ltdl=ltdl
+{ set +x
+$as_echo "$at_srcdir/libtoolize.at:845: \$LIBTOOLIZE --copy --install --ltdl=ltdl
 
 "
-echo libtoolize.at:845 >"$at_check_line_file"
+at_fn_check_prepare_notrace 'an embedded newline' "libtoolize.at:845"
+( $at_check_trace; $LIBTOOLIZE --copy --install --ltdl=ltdl
 
-if test -n "$at_traceon"; then
-  ( $at_traceon; $LIBTOOLIZE --copy --install --ltdl=ltdl
-
- ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOLIZE --copy --install --ltdl=ltdl
 
- ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 $at_diff expout "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/libtoolize.at:845"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/libtoolize.at:845"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
+read at_status <"$at_status_file"
 #AT_STOP_11
 #AT_START_12
 # 12. libtoolize.at:854: subproject ltdl with non-shared directories
 at_setup_line='libtoolize.at:854'
-at_func_banner 1
+at_fn_banner 1
 at_desc="subproject ltdl with non-shared directories"
-$at_quiet $as_echo_n " 12: $at_desc    "
+at_desc_line=" 12: $at_desc    "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
@@ -3790,7 +3792,7 @@ _ATEOF
 
 
 cat >configure.ac <<'_ATEOF'
-AC_INIT([libtoolize-demo], 2.2.6, bug-libtool@gnu.org)
+AC_INIT([libtoolize-demo], 2.2.6b, bug-libtool@gnu.org)
 LT_CONFIG_LTDL_DIR([ltdl])
 AC_CONFIG_AUX_DIR([build-aux])
 AC_CONFIG_MACRO_DIR([acm4])
@@ -3804,44 +3806,37 @@ lt_name=`$ECHO "$LIBTOOLIZE" | sed "s,^.
 sed "s/libtoolize/$lt_name/g
 s|/usr/local/share/aclocal/|${tst_aclocaldir-$abs_top_srcdir/libltdl/m4}/|" < expout > expout.t
 mv -f expout.t expout
-{ $at_traceoff
-$as_echo "$at_srcdir/libtoolize.at:936: $LIBTOOLIZE --copy --install
+{ set +x
+$as_echo "$at_srcdir/libtoolize.at:936: \$LIBTOOLIZE --copy --install
 
 "
-echo libtoolize.at:936 >"$at_check_line_file"
+at_fn_check_prepare_notrace 'an embedded newline' "libtoolize.at:936"
+( $at_check_trace; $LIBTOOLIZE --copy --install
 
-if test -n "$at_traceon"; then
-  ( $at_traceon; $LIBTOOLIZE --copy --install
-
- ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOLIZE --copy --install
 
- ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 $at_diff expout "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/libtoolize.at:936"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/libtoolize.at:936"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
+read at_status <"$at_status_file"
 #AT_STOP_12
 #AT_START_13
 # 13. libtoolize.at:945: LIBTOOLIZE_OPTIONS
 at_setup_line='libtoolize.at:945'
-at_func_banner 1
+at_fn_banner 1
 at_desc="LIBTOOLIZE_OPTIONS"
-$at_quiet $as_echo_n " 13: $at_desc                             "
+at_desc_line=" 13: $at_desc                             "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
@@ -3850,7 +3845,7 @@ echo "#                             -*-
 
 
 cat >configure.ac <<'_ATEOF'
-AC_INIT([libtoolize-demo], 2.2.6, bug-libtool@gnu.org)
+AC_INIT([libtoolize-demo], 2.2.6b, bug-libtool@gnu.org)
 AC_CONFIG_AUX_DIR([build-aux])
 AC_CONFIG_MACRO_DIR([m4])
 LT_INIT
@@ -3872,29 +3867,21 @@ lt_name=`$ECHO "$LIBTOOLIZE" | sed "s,^.
 sed "s/libtoolize/$lt_name/g
 s|/usr/local/share/aclocal/|${tst_aclocaldir-$abs_top_srcdir/libltdl/m4}/|" < experr > experr.t
 mv -f experr.t experr
-{ $at_traceoff
-$as_echo "$at_srcdir/libtoolize.at:957: $LIBTOOLIZE --copy
+{ set +x
+$as_echo "$at_srcdir/libtoolize.at:957: \$LIBTOOLIZE --copy
 
 "
-echo libtoolize.at:957 >"$at_check_line_file"
+at_fn_check_prepare_notrace 'an embedded newline' "libtoolize.at:957"
+( $at_check_trace; $LIBTOOLIZE --copy
 
-if test -n "$at_traceon"; then
-  ( $at_traceon; $LIBTOOLIZE --copy
-
- ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOLIZE --copy
 
- ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 $at_diff experr "$at_stderr" || at_failed=:
 echo stdout:; cat "$at_stdout"
-at_func_check_status 1 $at_status "$at_srcdir/libtoolize.at:957"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 1 $at_status "$at_srcdir/libtoolize.at:957"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -3916,29 +3903,21 @@ lt_name=`$ECHO "$LIBTOOLIZE" | sed "s,^.
 sed "s/libtoolize/$lt_name/g
 s|/usr/local/share/aclocal/|${tst_aclocaldir-$abs_top_srcdir/libltdl/m4}/|" < experr > experr.t
 mv -f experr.t experr
-{ $at_traceoff
-$as_echo "$at_srcdir/libtoolize.at:971: $LIBTOOLIZE --copy
+{ set +x
+$as_echo "$at_srcdir/libtoolize.at:971: \$LIBTOOLIZE --copy
 
 "
-echo libtoolize.at:971 >"$at_check_line_file"
+at_fn_check_prepare_notrace 'an embedded newline' "libtoolize.at:971"
+( $at_check_trace; $LIBTOOLIZE --copy
 
-if test -n "$at_traceon"; then
-  ( $at_traceon; $LIBTOOLIZE --copy
-
- ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOLIZE --copy
 
- ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 $at_diff experr "$at_stderr" || at_failed=:
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/libtoolize.at:971"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/libtoolize.at:971"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -3959,44 +3938,37 @@ lt_name=`$ECHO "$LIBTOOLIZE" | sed "s,^.
 sed "s/libtoolize/$lt_name/g
 s|/usr/local/share/aclocal/|${tst_aclocaldir-$abs_top_srcdir/libltdl/m4}/|" < experr > experr.t
 mv -f experr.t experr
-{ $at_traceoff
-$as_echo "$at_srcdir/libtoolize.at:983: $LIBTOOLIZE --copy
+{ set +x
+$as_echo "$at_srcdir/libtoolize.at:983: \$LIBTOOLIZE --copy
 
 "
-echo libtoolize.at:983 >"$at_check_line_file"
+at_fn_check_prepare_notrace 'an embedded newline' "libtoolize.at:983"
+( $at_check_trace; $LIBTOOLIZE --copy
 
-if test -n "$at_traceon"; then
-  ( $at_traceon; $LIBTOOLIZE --copy
-
- ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOLIZE --copy
 
- ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 $at_diff experr "$at_stderr" || at_failed=:
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/libtoolize.at:983"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/libtoolize.at:983"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
+read at_status <"$at_status_file"
 #AT_STOP_13
 #AT_START_14
 # 14. libtoolize.at:992: cleanup old installation
 at_setup_line='libtoolize.at:992'
-at_func_banner 1
+at_fn_banner 1
 at_desc="cleanup old installation"
-$at_quiet $as_echo_n " 14: $at_desc                       "
+at_desc_line=" 14: $at_desc                       "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
@@ -4005,7 +3977,7 @@ echo "#                             -*-
 
 
 cat >configure.ac <<'_ATEOF'
-AC_INIT([libtoolize-demo], 2.2.6, bug-libtool@gnu.org)
+AC_INIT([libtoolize-demo], 2.2.6b, bug-libtool@gnu.org)
 AC_CONFIG_AUX_DIR([build-aux])
 AC_CONFIG_MACRO_DIR([m4])
 LT_INIT
@@ -4031,84 +4003,65 @@ AC_DEFUN([LT_INIT],
 _ATEOF
 
 
-{ $at_traceoff
-$as_echo "$at_srcdir/libtoolize.at:1010: $LIBTOOLIZE --copy --force --ltdl
+{ set +x
+$as_echo "$at_srcdir/libtoolize.at:1010: \$LIBTOOLIZE --copy --force --ltdl
 
 "
-echo libtoolize.at:1010 >"$at_check_line_file"
+at_fn_check_prepare_notrace 'an embedded newline' "libtoolize.at:1010"
+( $at_check_trace; $LIBTOOLIZE --copy --force --ltdl
 
-if test -n "$at_traceon"; then
-  ( $at_traceon; $LIBTOOLIZE --copy --force --ltdl
-
- ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOLIZE --copy --force --ltdl
 
- ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/libtoolize.at:1010"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/libtoolize.at:1010"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 # check files are left as expected
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/libtoolize.at:1013: grep 'keep me' acinclude.m4"
-echo libtoolize.at:1013 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; grep 'keep me' acinclude.m4 ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; grep 'keep me' acinclude.m4 ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+at_fn_check_prepare_trace "libtoolize.at:1013"
+( $at_check_trace; grep 'keep me' acinclude.m4
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/libtoolize.at:1013"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/libtoolize.at:1013"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/libtoolize.at:1014: test -f libltdl/acinclude.m4"
-echo libtoolize.at:1014 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; test -f libltdl/acinclude.m4 ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; test -f libltdl/acinclude.m4 ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_trace "libtoolize.at:1014"
+( $at_check_trace; test -f libltdl/acinclude.m4
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 1 $at_status "$at_srcdir/libtoolize.at:1014"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 1 $at_status "$at_srcdir/libtoolize.at:1014"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
+read at_status <"$at_status_file"
 #AT_STOP_14
 #AT_START_15
 # 15. duplicate_members.at:26: duplicate members in archive tests
 at_setup_line='duplicate_members.at:26'
-at_func_banner 2
+at_fn_banner 2
 at_desc="duplicate members in archive tests"
-$at_quiet $as_echo_n " 15: $at_desc             "
+at_desc_line=" 15: $at_desc             "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
@@ -4165,48 +4118,39 @@ $LIBTOOL --mode=link --tag=CC $CC $CFLAG
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/duplicate_members.at:73: ./main; lt_status=\$?; if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"./main\" || test -x \"./main\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo duplicate_members.at:73 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; ./main; lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "./main" || test -x "./main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; ./main; lt_status=$?; if test $lt_status -eq 0; then :;
+at_fn_check_prepare_notrace 'an embedded newline' "duplicate_members.at:73"
+( $at_check_trace; ./main; lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "./main" || test -x "./main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/duplicate_members.at:73"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/duplicate_members.at:73"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
+read at_status <"$at_status_file"
 #AT_STOP_15
 #AT_START_16
 # 16. duplicate_conv.at:25: duplicate convenience archive names
 at_setup_line='duplicate_conv.at:25'
-at_func_banner 2
+at_fn_banner 2
 at_desc="duplicate convenience archive names"
-$at_quiet $as_echo_n " 16: $at_desc            "
+at_desc_line=" 16: $at_desc            "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
@@ -4238,75 +4182,51 @@ $LIBTOOL --mode=link --tag=CC $CC $CFLAG
 $LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -o b/liba.la b/a.lo b/b.lo
 
 # Fold into convenience archive.
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/duplicate_conv.at:51: \$LIBTOOL --mode=link --tag=CC \$CC \$CFLAGS \$LDFLAGS -o libcee.la c.lo a/liba.la b/liba.la"
-echo duplicate_conv.at:51 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -o libcee.la c.lo a/liba.la b/liba.la"; then
-  ( $at_traceon; $LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -o libcee.la c.lo a/liba.la b/liba.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -o libcee.la c.lo a/liba.la b/liba.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -o libcee.la c.lo a/liba.la b/liba.la" "duplicate_conv.at:51"
+( $at_check_trace; $LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -o libcee.la c.lo a/liba.la b/liba.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/duplicate_conv.at:51"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/duplicate_conv.at:51"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/duplicate_conv.at:53: \$LIBTOOL --mode=link \$CC \$CFLAGS \$LDFLAGS -o main main.\$OBJEXT ./libcee.la"
-echo duplicate_conv.at:53 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT ./libcee.la"; then
-  ( $at_traceon; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT ./libcee.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT ./libcee.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT ./libcee.la" "duplicate_conv.at:53"
+( $at_check_trace; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT ./libcee.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/duplicate_conv.at:53"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/duplicate_conv.at:53"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/duplicate_conv.at:55: ./main; lt_status=\$?; if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"./main\" || test -x \"./main\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo duplicate_conv.at:55 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; ./main; lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "./main" || test -x "./main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; ./main; lt_status=$?; if test $lt_status -eq 0; then :;
+at_fn_check_prepare_notrace 'an embedded newline' "duplicate_conv.at:55"
+( $at_check_trace; ./main; lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "./main" || test -x "./main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/duplicate_conv.at:55"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/duplicate_conv.at:55"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -4317,242 +4237,171 @@ $LIBTOOL --mode=clean rm -f libcee.la
 #        OTOH, we'd like to test the other situation, too.
 
 # Fold into static library.
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/duplicate_conv.at:63: \$LIBTOOL --mode=link --tag=CC \$CC \$CFLAGS \$LDFLAGS -rpath /foo -static -o libcee.la c.lo a/liba.la b/liba.la"
-echo duplicate_conv.at:63 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -rpath /foo -static -o libcee.la c.lo a/liba.la b/liba.la"; then
-  ( $at_traceon; $LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -rpath /foo -static -o libcee.la c.lo a/liba.la b/liba.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -rpath /foo -static -o libcee.la c.lo a/liba.la b/liba.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -rpath /foo -static -o libcee.la c.lo a/liba.la b/liba.la" "duplicate_conv.at:63"
+( $at_check_trace; $LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -rpath /foo -static -o libcee.la c.lo a/liba.la b/liba.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/duplicate_conv.at:63"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/duplicate_conv.at:63"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/duplicate_conv.at:65: \$LIBTOOL --mode=link \$CC \$CFLAGS \$LDFLAGS -o main main.\$OBJEXT ./libcee.la"
-echo duplicate_conv.at:65 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT ./libcee.la"; then
-  ( $at_traceon; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT ./libcee.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT ./libcee.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT ./libcee.la" "duplicate_conv.at:65"
+( $at_check_trace; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT ./libcee.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/duplicate_conv.at:65"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/duplicate_conv.at:65"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/duplicate_conv.at:67: ./main; lt_status=\$?; if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"./main\" || test -x \"./main\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo duplicate_conv.at:67 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; ./main; lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "./main" || test -x "./main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; ./main; lt_status=$?; if test $lt_status -eq 0; then :;
+at_fn_check_prepare_notrace 'an embedded newline' "duplicate_conv.at:67"
+( $at_check_trace; ./main; lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "./main" || test -x "./main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/duplicate_conv.at:67"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/duplicate_conv.at:67"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 $LIBTOOL --mode=clean rm -f libcee.la
 
 # Fold into library.
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/duplicate_conv.at:71: \$LIBTOOL --mode=link --tag=CC \$CC \$CFLAGS \$LDFLAGS -rpath /foo -o libcee.la c.lo a/liba.la b/liba.la"
-echo duplicate_conv.at:71 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -rpath /foo -o libcee.la c.lo a/liba.la b/liba.la"; then
-  ( $at_traceon; $LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -rpath /foo -o libcee.la c.lo a/liba.la b/liba.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -rpath /foo -o libcee.la c.lo a/liba.la b/liba.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -rpath /foo -o libcee.la c.lo a/liba.la b/liba.la" "duplicate_conv.at:71"
+( $at_check_trace; $LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -rpath /foo -o libcee.la c.lo a/liba.la b/liba.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/duplicate_conv.at:71"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/duplicate_conv.at:71"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/duplicate_conv.at:73: \$LIBTOOL --mode=link \$CC \$CFLAGS \$LDFLAGS -o main main.\$OBJEXT ./libcee.la"
-echo duplicate_conv.at:73 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT ./libcee.la"; then
-  ( $at_traceon; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT ./libcee.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT ./libcee.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT ./libcee.la" "duplicate_conv.at:73"
+( $at_check_trace; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT ./libcee.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/duplicate_conv.at:73"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/duplicate_conv.at:73"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/duplicate_conv.at:75: ./main; lt_status=\$?; if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"./main\" || test -x \"./main\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo duplicate_conv.at:75 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; ./main; lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "./main" || test -x "./main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; ./main; lt_status=$?; if test $lt_status -eq 0; then :;
+at_fn_check_prepare_notrace 'an embedded newline' "duplicate_conv.at:75"
+( $at_check_trace; ./main; lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "./main" || test -x "./main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/duplicate_conv.at:75"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/duplicate_conv.at:75"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 $LIBTOOL --mode=clean rm -f libcee.la
 
 # Test whether this works with reloadable objects as well.
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/duplicate_conv.at:79: \$LIBTOOL --mode=link --tag=CC \$CC \$CFLAGS \$LDFLAGS -o cee.\$OBJEXT c.lo a/liba.la b/liba.la"
-echo duplicate_conv.at:79 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -o cee.$OBJEXT c.lo a/liba.la b/liba.la"; then
-  ( $at_traceon; $LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -o cee.$OBJEXT c.lo a/liba.la b/liba.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -o cee.$OBJEXT c.lo a/liba.la b/liba.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -o cee.$OBJEXT c.lo a/liba.la b/liba.la" "duplicate_conv.at:79"
+( $at_check_trace; $LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -o cee.$OBJEXT c.lo a/liba.la b/liba.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/duplicate_conv.at:79"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/duplicate_conv.at:79"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/duplicate_conv.at:81: \$LIBTOOL --mode=link \$CC \$CFLAGS \$LDFLAGS -o main main.\$OBJEXT cee.\$OBJEXT"
-echo duplicate_conv.at:81 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT cee.$OBJEXT"; then
-  ( $at_traceon; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT cee.$OBJEXT ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT cee.$OBJEXT ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT cee.$OBJEXT" "duplicate_conv.at:81"
+( $at_check_trace; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT cee.$OBJEXT
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/duplicate_conv.at:81"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/duplicate_conv.at:81"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/duplicate_conv.at:83: ./main; lt_status=\$?; if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"./main\" || test -x \"./main\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo duplicate_conv.at:83 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; ./main; lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "./main" || test -x "./main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; ./main; lt_status=$?; if test $lt_status -eq 0; then :;
+at_fn_check_prepare_notrace 'an embedded newline' "duplicate_conv.at:83"
+( $at_check_trace; ./main; lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "./main" || test -x "./main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/duplicate_conv.at:83"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/duplicate_conv.at:83"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 # TODO: test dlpreloading of duplicates (when it is implemented)
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
+read at_status <"$at_status_file"
 #AT_STOP_16
 #AT_START_17
 # 17. duplicate_deps.at:25: preserve duplicate convenience deps
 at_setup_line='duplicate_deps.at:25'
-at_func_banner 2
+at_fn_banner 2
 at_desc="preserve duplicate convenience deps"
-$at_quiet $as_echo_n " 17: $at_desc            "
+at_desc_line=" 17: $at_desc            "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=yes
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
@@ -4591,58 +4440,40 @@ $LIBTOOL --mode=link --tag=CC $CC $CFLAG
 # (in that case all objects from liba would be merged into
 # libb.a as well, possibly renamed.)
 $LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -o libb.la b1.lo liba.la
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/duplicate_deps.at:58: \$LIBTOOL --mode=link --tag=CC \\
 	  \$CC \$CFLAGS \$LDFLAGS -o main main.\$OBJEXT liba.la libb.la"
-echo duplicate_deps.at:58 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; $LIBTOOL --mode=link --tag=CC \
-	  $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT liba.la libb.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link --tag=CC \
-	  $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT liba.la libb.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_notrace 'an embedded newline' "duplicate_deps.at:58"
+( $at_check_trace; $LIBTOOL --mode=link --tag=CC \
+	  $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT liba.la libb.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/duplicate_deps.at:58"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/duplicate_deps.at:58"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/duplicate_deps.at:61: ./main; lt_status=\$?; if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"./main\" || test -x \"./main\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo duplicate_deps.at:61 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; ./main; lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "./main" || test -x "./main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; ./main; lt_status=$?; if test $lt_status -eq 0; then :;
+at_fn_check_prepare_notrace 'an embedded newline' "duplicate_deps.at:61"
+( $at_check_trace; ./main; lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "./main" || test -x "./main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/duplicate_deps.at:61"
-
-$at_failed && at_func_log_failure
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/duplicate_deps.at:61"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -4650,69 +4481,53 @@ $at_traceon; }
 # Forgo the workaround and create a true circular dependency.
 $LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -o libb.la b1.lo
 # Some systems find all symbols anyway; skip this test on such systems.
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/duplicate_deps.at:66: \$LIBTOOL --mode=link --tag=CC \\
 	  \$CC \$CFLAGS \$LDFLAGS -o main main.\$OBJEXT liba.la libb.la liba.la \\
 	  && exit 77"
-echo duplicate_deps.at:66 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; $LIBTOOL --mode=link --tag=CC \
-	  $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT liba.la libb.la liba.la \
-	  && exit 77 ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link --tag=CC \
+at_fn_check_prepare_notrace 'an embedded newline' "duplicate_deps.at:66"
+( $at_check_trace; $LIBTOOL --mode=link --tag=CC \
 	  $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT liba.la libb.la liba.la \
-	  && exit 77 ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+	  && exit 77
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 1 $at_status "$at_srcdir/duplicate_deps.at:66"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 1 $at_status "$at_srcdir/duplicate_deps.at:66"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 # Other systems need special treatment, which currently fails.
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/duplicate_deps.at:72: \$LIBTOOL --mode=link --preserve-dup-deps --tag=CC \\
 	  \$CC \$CFLAGS \$LDFLAGS -o main main.\$OBJEXT liba.la libb.la liba.la"
-echo duplicate_deps.at:72 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; $LIBTOOL --mode=link --preserve-dup-deps --tag=CC \
-	  $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT liba.la libb.la liba.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link --preserve-dup-deps --tag=CC \
-	  $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT liba.la libb.la liba.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_notrace 'an embedded newline' "duplicate_deps.at:72"
+( $at_check_trace; $LIBTOOL --mode=link --preserve-dup-deps --tag=CC \
+	  $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT liba.la libb.la liba.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/duplicate_deps.at:72"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/duplicate_deps.at:72"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
+read at_status <"$at_status_file"
 #AT_STOP_17
 #AT_START_18
 # 18. inherited_flags.at:26: inherited_linker_flags
 at_setup_line='inherited_flags.at:26'
-at_func_banner 2
+at_fn_banner 2
 at_desc="inherited_linker_flags"
-$at_quiet $as_echo_n " 18: $at_desc                         "
+at_desc_line=" 18: $at_desc                         "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
@@ -4773,224 +4588,153 @@ mv libboth.la libboth.la.bak
 sed -e "s/^inherited_linker_flags.*/inherited_linker_flags='-llt_inlikely_existing_lib -llt_unlikely_existing_lib'/g" < libboth.la.bak > libboth.la
 rm libboth.la.bak
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/inherited_flags.at:76: \$LIBTOOL --mode=link --tag=CC \$CC \$CFLAGS \$LDFLAGS -o libbaz.la baz.lo -no-undefined -rpath /nonexistent ./libfoo.la ./libbar.la"
-echo inherited_flags.at:76 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -o libbaz.la baz.lo -no-undefined -rpath /nonexistent ./libfoo.la ./libbar.la"; then
-  ( $at_traceon; $LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -o libbaz.la baz.lo -no-undefined -rpath /nonexistent ./libfoo.la ./libbar.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -o libbaz.la baz.lo -no-undefined -rpath /nonexistent ./libfoo.la ./libbar.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -o libbaz.la baz.lo -no-undefined -rpath /nonexistent ./libfoo.la ./libbar.la" "inherited_flags.at:76"
+( $at_check_trace; $LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -o libbaz.la baz.lo -no-undefined -rpath /nonexistent ./libfoo.la ./libbar.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; tee stdout <"$at_stdout"
-at_func_check_skip $at_status "$at_srcdir/inherited_flags.at:76"
-
-$at_failed && at_func_log_failure
+at_fn_check_skip $at_status "$at_srcdir/inherited_flags.at:76"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 # We used to grep for
 # 'llt_[[ui]]nlikely_existing_lib.*llt_[[ui]]nlikely_existing_lib'
 # here.  This fails on win32/MSVC because the generated command lines have a
 # different syntax.  So drop the first `l'.
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/inherited_flags.at:82: \$LIBTOOL --features | grep 'disable shared libraries' && (exit 77)"
-echo inherited_flags.at:82 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --features | grep 'disable shared libraries' && (exit 77)"; then
-  ( $at_traceon; $LIBTOOL --features | grep 'disable shared libraries' && (exit 77) ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --features | grep 'disable shared libraries' && (exit 77) ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+at_fn_check_prepare_dynamic "$LIBTOOL --features | grep 'disable shared libraries' && (exit 77)" "inherited_flags.at:82"
+( $at_check_trace; $LIBTOOL --features | grep 'disable shared libraries' && (exit 77)
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 echo stdout:; cat "$at_stdout"
-at_func_check_status 1 $at_status "$at_srcdir/inherited_flags.at:82"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 1 $at_status "$at_srcdir/inherited_flags.at:82"
+$at_failed && at_fn_log_failure
 $at_traceon; }
-
-{ $at_traceoff
-$as_echo "$at_srcdir/inherited_flags.at:83: grep 'lt_[ui]nlikely_existing_lib.*lt_[ui]nlikely_existing_lib' stdout"
-echo inherited_flags.at:83 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; grep 'lt_[ui]nlikely_existing_lib.*lt_[ui]nlikely_existing_lib' stdout ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; grep 'lt_[ui]nlikely_existing_lib.*lt_[ui]nlikely_existing_lib' stdout ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+
+{ set +x
+$as_echo "$at_srcdir/inherited_flags.at:83: grep 'lt_[ui]nlikely_existing_lib.*lt_[ui]nlikely_existing_lib' stdout"
+at_fn_check_prepare_trace "inherited_flags.at:83"
+( $at_check_trace; grep 'lt_[ui]nlikely_existing_lib.*lt_[ui]nlikely_existing_lib' stdout
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/inherited_flags.at:83"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/inherited_flags.at:83"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/inherited_flags.at:85: \$LIBTOOL --mode=link --tag=CC \$CC \$CFLAGS \$LDFLAGS -o main main.lo -no-undefined -rpath /nonexistent  ./libfoo.la ./libbar.la"
-echo inherited_flags.at:85 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -o main main.lo -no-undefined -rpath /nonexistent  ./libfoo.la ./libbar.la"; then
-  ( $at_traceon; $LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -o main main.lo -no-undefined -rpath /nonexistent  ./libfoo.la ./libbar.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -o main main.lo -no-undefined -rpath /nonexistent  ./libfoo.la ./libbar.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -o main main.lo -no-undefined -rpath /nonexistent  ./libfoo.la ./libbar.la" "inherited_flags.at:85"
+( $at_check_trace; $LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -o main main.lo -no-undefined -rpath /nonexistent  ./libfoo.la ./libbar.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; tee stdout <"$at_stdout"
-at_func_check_skip $at_status "$at_srcdir/inherited_flags.at:85"
-
-$at_failed && at_func_log_failure
+at_fn_check_skip $at_status "$at_srcdir/inherited_flags.at:85"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/inherited_flags.at:87: grep 'lt_[ui]nlikely_existing_lib.*lt_[ui]nlikely_existing_lib' stdout"
-echo inherited_flags.at:87 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; grep 'lt_[ui]nlikely_existing_lib.*lt_[ui]nlikely_existing_lib' stdout ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; grep 'lt_[ui]nlikely_existing_lib.*lt_[ui]nlikely_existing_lib' stdout ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_trace "inherited_flags.at:87"
+( $at_check_trace; grep 'lt_[ui]nlikely_existing_lib.*lt_[ui]nlikely_existing_lib' stdout
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/inherited_flags.at:87"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/inherited_flags.at:87"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 # now check for duplicates
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/inherited_flags.at:91: \$LIBTOOL --mode=link --tag=CC \$CC \$CFLAGS \$LDFLAGS -o libbaz.la baz.lo -no-undefined -rpath /nonexistent ./libfoo.la ./libbar.la ./libboth.la"
-echo inherited_flags.at:91 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -o libbaz.la baz.lo -no-undefined -rpath /nonexistent ./libfoo.la ./libbar.la ./libboth.la"; then
-  ( $at_traceon; $LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -o libbaz.la baz.lo -no-undefined -rpath /nonexistent ./libfoo.la ./libbar.la ./libboth.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -o libbaz.la baz.lo -no-undefined -rpath /nonexistent ./libfoo.la ./libbar.la ./libboth.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -o libbaz.la baz.lo -no-undefined -rpath /nonexistent ./libfoo.la ./libbar.la ./libboth.la" "inherited_flags.at:91"
+( $at_check_trace; $LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -o libbaz.la baz.lo -no-undefined -rpath /nonexistent ./libfoo.la ./libbar.la ./libboth.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; tee stdout <"$at_stdout"
-at_func_check_skip $at_status "$at_srcdir/inherited_flags.at:91"
-
-$at_failed && at_func_log_failure
+at_fn_check_skip $at_status "$at_srcdir/inherited_flags.at:91"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/inherited_flags.at:93: grep 'lt_inlikely_existing_lib.*lt_inlikely_existing_lib' stdout"
-echo inherited_flags.at:93 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; grep 'lt_inlikely_existing_lib.*lt_inlikely_existing_lib' stdout ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; grep 'lt_inlikely_existing_lib.*lt_inlikely_existing_lib' stdout ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_trace "inherited_flags.at:93"
+( $at_check_trace; grep 'lt_inlikely_existing_lib.*lt_inlikely_existing_lib' stdout
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 1 $at_status "$at_srcdir/inherited_flags.at:93"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 1 $at_status "$at_srcdir/inherited_flags.at:93"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/inherited_flags.at:95: grep 'lt_unlikely_existing_lib.*lt_unlikely_existing_lib' stdout"
-echo inherited_flags.at:95 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; grep 'lt_unlikely_existing_lib.*lt_unlikely_existing_lib' stdout ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; grep 'lt_unlikely_existing_lib.*lt_unlikely_existing_lib' stdout ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_trace "inherited_flags.at:95"
+( $at_check_trace; grep 'lt_unlikely_existing_lib.*lt_unlikely_existing_lib' stdout
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 1 $at_status "$at_srcdir/inherited_flags.at:95"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 1 $at_status "$at_srcdir/inherited_flags.at:95"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/inherited_flags.at:97: \$LIBTOOL --mode=link --tag=CC \$CC \$CFLAGS \$LDFLAGS -o main main.lo -no-undefined -rpath /nonexistent  ./libfoo.la ./libbar.la ./libboth.la"
-echo inherited_flags.at:97 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -o main main.lo -no-undefined -rpath /nonexistent  ./libfoo.la ./libbar.la ./libboth.la"; then
-  ( $at_traceon; $LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -o main main.lo -no-undefined -rpath /nonexistent  ./libfoo.la ./libbar.la ./libboth.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -o main main.lo -no-undefined -rpath /nonexistent  ./libfoo.la ./libbar.la ./libboth.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -o main main.lo -no-undefined -rpath /nonexistent  ./libfoo.la ./libbar.la ./libboth.la" "inherited_flags.at:97"
+( $at_check_trace; $LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -o main main.lo -no-undefined -rpath /nonexistent  ./libfoo.la ./libbar.la ./libboth.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; tee stdout <"$at_stdout"
-at_func_check_skip $at_status "$at_srcdir/inherited_flags.at:97"
-
-$at_failed && at_func_log_failure
+at_fn_check_skip $at_status "$at_srcdir/inherited_flags.at:97"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/inherited_flags.at:99: grep 'lt_inlikely_existing_lib.*lt_inlikely_existing_lib' stdout"
-echo inherited_flags.at:99 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; grep 'lt_inlikely_existing_lib.*lt_inlikely_existing_lib' stdout ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; grep 'lt_inlikely_existing_lib.*lt_inlikely_existing_lib' stdout ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_trace "inherited_flags.at:99"
+( $at_check_trace; grep 'lt_inlikely_existing_lib.*lt_inlikely_existing_lib' stdout
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 1 $at_status "$at_srcdir/inherited_flags.at:99"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 1 $at_status "$at_srcdir/inherited_flags.at:99"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/inherited_flags.at:101: grep 'lt_unlikely_existing_lib.*lt_unlikely_existing_lib' stdout"
-echo inherited_flags.at:101 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; grep 'lt_unlikely_existing_lib.*lt_unlikely_existing_lib' stdout ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; grep 'lt_unlikely_existing_lib.*lt_unlikely_existing_lib' stdout ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_trace "inherited_flags.at:101"
+( $at_check_trace; grep 'lt_unlikely_existing_lib.*lt_unlikely_existing_lib' stdout
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 1 $at_status "$at_srcdir/inherited_flags.at:101"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 1 $at_status "$at_srcdir/inherited_flags.at:101"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -4998,76 +4742,58 @@ mv libboth.la libboth.la.bak
 sed "s/^inherited_linker_flags.*/inherited_linker_flags='-framework Cocoa -framework ApplicationServices'/" < libboth.la.bak > libboth.la
 rm libboth.la.bak
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/inherited_flags.at:108: \$LIBTOOL -n --mode=link --tag=CC \$CC \$CFLAGS \$LDFLAGS -framework Cocoa -framework ApplicationServices -o libbaz.la baz.lo libboth.la -no-undefined -rpath /nonexistent"
-echo inherited_flags.at:108 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL -n --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -framework Cocoa -framework ApplicationServices -o libbaz.la baz.lo libboth.la -no-undefined -rpath /nonexistent"; then
-  ( $at_traceon; $LIBTOOL -n --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -framework Cocoa -framework ApplicationServices -o libbaz.la baz.lo libboth.la -no-undefined -rpath /nonexistent ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL -n --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -framework Cocoa -framework ApplicationServices -o libbaz.la baz.lo libboth.la -no-undefined -rpath /nonexistent ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL -n --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -framework Cocoa -framework ApplicationServices -o libbaz.la baz.lo libboth.la -no-undefined -rpath /nonexistent" "inherited_flags.at:108"
+( $at_check_trace; $LIBTOOL -n --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -framework Cocoa -framework ApplicationServices -o libbaz.la baz.lo libboth.la -no-undefined -rpath /nonexistent
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; tee stdout <"$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/inherited_flags.at:108"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/inherited_flags.at:108"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/inherited_flags.at:110: grep Cocoa.ltframework stdout"
-echo inherited_flags.at:110 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; grep Cocoa.ltframework stdout ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; grep Cocoa.ltframework stdout ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 1 $at_status "$at_srcdir/inherited_flags.at:110"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_trace "inherited_flags.at:110"
+( $at_check_trace; grep Cocoa.ltframework stdout
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 1 $at_status "$at_srcdir/inherited_flags.at:110"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/inherited_flags.at:111: grep ' -framework Cocoa' stdout"
-echo inherited_flags.at:111 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; grep ' -framework Cocoa' stdout ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; grep ' -framework Cocoa' stdout ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+at_fn_check_prepare_trace "inherited_flags.at:111"
+( $at_check_trace; grep ' -framework Cocoa' stdout
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/inherited_flags.at:111"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/inherited_flags.at:111"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
+read at_status <"$at_status_file"
 #AT_STOP_18
 #AT_START_19
 # 19. convenience.at:30: C convenience archives
 at_setup_line='convenience.at:30'
-at_func_banner 2
+at_fn_banner 2
 at_desc="C convenience archives"
-$at_quiet $as_echo_n " 19: $at_desc                         "
+at_desc_line=" 19: $at_desc                         "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
@@ -5094,166 +4820,119 @@ for i in 1 2 3; do
   $LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c a$i.c
   $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o liba$i.la a$i.lo
 done
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/convenience.at:51: \$LIBTOOL --mode=link \$CC \$CFLAGS \$LDFLAGS -o liba12.la liba1.la liba2.la -rpath /notexist"
-echo convenience.at:51 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o liba12.la liba1.la liba2.la -rpath /notexist"; then
-  ( $at_traceon; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o liba12.la liba1.la liba2.la -rpath /notexist ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o liba12.la liba1.la liba2.la -rpath /notexist ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o liba12.la liba1.la liba2.la -rpath /notexist" "convenience.at:51"
+( $at_check_trace; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o liba12.la liba1.la liba2.la -rpath /notexist
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/convenience.at:51"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/convenience.at:51"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/convenience.at:53: \$LIBTOOL --mode=link \$CC \$CFLAGS \$LDFLAGS -o liba123.la a3.lo liba1.la liba2.la -rpath /notexist"
-echo convenience.at:53 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o liba123.la a3.lo liba1.la liba2.la -rpath /notexist"; then
-  ( $at_traceon; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o liba123.la a3.lo liba1.la liba2.la -rpath /notexist ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o liba123.la a3.lo liba1.la liba2.la -rpath /notexist ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o liba123.la a3.lo liba1.la liba2.la -rpath /notexist" "convenience.at:53"
+( $at_check_trace; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o liba123.la a3.lo liba1.la liba2.la -rpath /notexist
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/convenience.at:53"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/convenience.at:53"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 conv=
 for i in 1 2 3; do
   conv=$conv$i
-  { $at_traceoff
+  { set +x
 $as_echo "$at_srcdir/convenience.at:59: \$LIBTOOL --mode=link \$CC \$CFLAGS \$LDFLAGS -static -o main_static main\$i.lo liba\$conv.la"
-echo convenience.at:59 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -static -o main_static main$i.lo liba$conv.la"; then
-  ( $at_traceon; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -static -o main_static main$i.lo liba$conv.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -static -o main_static main$i.lo liba$conv.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -static -o main_static main$i.lo liba$conv.la" "convenience.at:59"
+( $at_check_trace; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -static -o main_static main$i.lo liba$conv.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/convenience.at:59"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/convenience.at:59"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-  { $at_traceoff
+  { set +x
 $as_echo "$at_srcdir/convenience.at:61: \$LIBTOOL --mode=link \$CC \$CFLAGS \$LDFLAGS -o main main\$i.lo liba\$conv.la"
-echo convenience.at:61 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main$i.lo liba$conv.la"; then
-  ( $at_traceon; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main$i.lo liba$conv.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main$i.lo liba$conv.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main$i.lo liba$conv.la" "convenience.at:61"
+( $at_check_trace; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main$i.lo liba$conv.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/convenience.at:61"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/convenience.at:61"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/convenience.at:63: ./main_static; lt_status=\$?; if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"./main_static\" || test -x \"./main_static\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo convenience.at:63 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; ./main_static; lt_status=$?; if test $lt_status -eq 0; then :;
+at_fn_check_prepare_notrace 'an embedded newline' "convenience.at:63"
+( $at_check_trace; ./main_static; lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "./main_static" || test -x "./main_static"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; ./main_static; lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "./main_static" || test -x "./main_static"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/convenience.at:63"
-
-$at_failed && at_func_log_failure
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/convenience.at:63"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/convenience.at:64: ./main; lt_status=\$?; if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"./main\" || test -x \"./main\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo convenience.at:64 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; ./main; lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "./main" || test -x "./main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; ./main; lt_status=$?; if test $lt_status -eq 0; then :;
+at_fn_check_prepare_notrace 'an embedded newline' "convenience.at:64"
+( $at_check_trace; ./main; lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "./main" || test -x "./main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/convenience.at:64"
-
-$at_failed && at_func_log_failure
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/convenience.at:64"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 done
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
+read at_status <"$at_status_file"
 #AT_STOP_19
 #AT_START_20
 # 20. convenience.at:69: C++ convenience archives
 at_setup_line='convenience.at:69'
-at_func_banner 2
+at_fn_banner 2
 at_desc="C++ convenience archives"
-$at_quiet $as_echo_n " 20: $at_desc                       "
+at_desc_line=" 20: $at_desc                       "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
@@ -5261,44 +4940,30 @@ echo "#                             -*-
   $at_traceon
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/convenience.at:70: { test -n \"\$CXX\" && test \"X\$CXX\" != Xno; } || (exit 77)"
-echo convenience.at:70 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "{ test -n \"$CXX\" && test \"X$CXX\" != Xno; } || (exit 77)"; then
-  ( $at_traceon; { test -n "$CXX" && test "X$CXX" != Xno; } || (exit 77) ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; { test -n "$CXX" && test "X$CXX" != Xno; } || (exit 77) ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/convenience.at:70"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_dynamic "{ test -n \"$CXX\" && test \"X$CXX\" != Xno; } || (exit 77)" "convenience.at:70"
+( $at_check_trace; { test -n "$CXX" && test "X$CXX" != Xno; } || (exit 77)
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/convenience.at:70"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/convenience.at:70: test \"X\$CXX\" != Xg++ || (g++ -v >/dev/null 2>&1) || (exit 77)"
-echo convenience.at:70 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "test \"X$CXX\" != Xg++ || (g++ -v >/dev/null 2>&1) || (exit 77)"; then
-  ( $at_traceon; test "X$CXX" != Xg++ || (g++ -v >/dev/null 2>&1) || (exit 77) ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; test "X$CXX" != Xg++ || (g++ -v >/dev/null 2>&1) || (exit 77) ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/convenience.at:70"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_dynamic "test \"X$CXX\" != Xg++ || (g++ -v >/dev/null 2>&1) || (exit 77)" "convenience.at:70"
+( $at_check_trace; test "X$CXX" != Xg++ || (g++ -v >/dev/null 2>&1) || (exit 77)
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/convenience.at:70"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -5322,166 +4987,119 @@ for i in 1 2 3; do
   $LIBTOOL --tag=CXX --mode=compile $CXX $CXXFLAGS -c a$i.cpp
   $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o liba$i.la a$i.lo
 done
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/convenience.at:91: \$LIBTOOL --tag=CXX --mode=link \$CXX \$CXXFLAGS \$LDFLAGS -o liba12.la liba1.la liba2.la -rpath /notexist"
-echo convenience.at:91 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o liba12.la liba1.la liba2.la -rpath /notexist"; then
-  ( $at_traceon; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o liba12.la liba1.la liba2.la -rpath /notexist ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o liba12.la liba1.la liba2.la -rpath /notexist ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o liba12.la liba1.la liba2.la -rpath /notexist" "convenience.at:91"
+( $at_check_trace; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o liba12.la liba1.la liba2.la -rpath /notexist
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/convenience.at:91"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/convenience.at:91"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/convenience.at:93: \$LIBTOOL --tag=CXX --mode=link \$CXX \$CXXFLAGS \$LDFLAGS -o liba123.la a3.lo liba1.la liba2.la -rpath /notexist"
-echo convenience.at:93 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o liba123.la a3.lo liba1.la liba2.la -rpath /notexist"; then
-  ( $at_traceon; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o liba123.la a3.lo liba1.la liba2.la -rpath /notexist ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o liba123.la a3.lo liba1.la liba2.la -rpath /notexist ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o liba123.la a3.lo liba1.la liba2.la -rpath /notexist" "convenience.at:93"
+( $at_check_trace; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o liba123.la a3.lo liba1.la liba2.la -rpath /notexist
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/convenience.at:93"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/convenience.at:93"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 conv=
 for i in 1 2 3; do
   conv=$conv$i
-  { $at_traceoff
+  { set +x
 $as_echo "$at_srcdir/convenience.at:99: \$LIBTOOL --tag=CXX --mode=link \$CXX \$CXXFLAGS \$LDFLAGS -static -o main_static main\$i.lo liba\$conv.la"
-echo convenience.at:99 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -static -o main_static main$i.lo liba$conv.la"; then
-  ( $at_traceon; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -static -o main_static main$i.lo liba$conv.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -static -o main_static main$i.lo liba$conv.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -static -o main_static main$i.lo liba$conv.la" "convenience.at:99"
+( $at_check_trace; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -static -o main_static main$i.lo liba$conv.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/convenience.at:99"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/convenience.at:99"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-  { $at_traceoff
+  { set +x
 $as_echo "$at_srcdir/convenience.at:101: \$LIBTOOL --tag=CXX --mode=link \$CXX \$CXXFLAGS \$LDFLAGS -o main main\$i.lo liba\$conv.la"
-echo convenience.at:101 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o main main$i.lo liba$conv.la"; then
-  ( $at_traceon; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o main main$i.lo liba$conv.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o main main$i.lo liba$conv.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o main main$i.lo liba$conv.la" "convenience.at:101"
+( $at_check_trace; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o main main$i.lo liba$conv.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/convenience.at:101"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/convenience.at:101"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/convenience.at:103: ./main_static; lt_status=\$?; if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"./main_static\" || test -x \"./main_static\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo convenience.at:103 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; ./main_static; lt_status=$?; if test $lt_status -eq 0; then :;
+at_fn_check_prepare_notrace 'an embedded newline' "convenience.at:103"
+( $at_check_trace; ./main_static; lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "./main_static" || test -x "./main_static"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; ./main_static; lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "./main_static" || test -x "./main_static"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/convenience.at:103"
-
-$at_failed && at_func_log_failure
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/convenience.at:103"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/convenience.at:104: ./main; lt_status=\$?; if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"./main\" || test -x \"./main\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo convenience.at:104 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; ./main; lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "./main" || test -x "./main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; ./main; lt_status=$?; if test $lt_status -eq 0; then :;
+at_fn_check_prepare_notrace 'an embedded newline' "convenience.at:104"
+( $at_check_trace; ./main; lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "./main" || test -x "./main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/convenience.at:104"
-
-$at_failed && at_func_log_failure
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/convenience.at:104"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 done
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
+read at_status <"$at_status_file"
 #AT_STOP_20
 #AT_START_21
 # 21. convenience.at:109: F77 convenience archives
 at_setup_line='convenience.at:109'
-at_func_banner 2
+at_fn_banner 2
 at_desc="F77 convenience archives"
-$at_quiet $as_echo_n " 21: $at_desc                       "
+at_desc_line=" 21: $at_desc                       "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
@@ -5489,24 +5107,17 @@ echo "#                             -*-
   $at_traceon
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/convenience.at:110: { test -n \"\$F77\" && test \"X\$F77\" != Xno; } || (exit 77)"
-echo convenience.at:110 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "{ test -n \"$F77\" && test \"X$F77\" != Xno; } || (exit 77)"; then
-  ( $at_traceon; { test -n "$F77" && test "X$F77" != Xno; } || (exit 77) ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; { test -n "$F77" && test "X$F77" != Xno; } || (exit 77) ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/convenience.at:110"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_dynamic "{ test -n \"$F77\" && test \"X$F77\" != Xno; } || (exit 77)" "convenience.at:110"
+( $at_check_trace; { test -n "$F77" && test "X$F77" != Xno; } || (exit 77)
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/convenience.at:110"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -5551,166 +5162,119 @@ EOF
   $LIBTOOL --tag=F77 --mode=compile $F77 $FFLAGS -c a$i.f
   $LIBTOOL --tag=F77 --mode=link $F77 $FFLAGS $LDFLAGS -o liba$i.la a$i.lo
 done
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/convenience.at:151: \$LIBTOOL --tag=F77 --mode=link \$F77 \$FFLAGS \$LDFLAGS -o liba12.la liba1.la liba2.la -rpath /notexist"
-echo convenience.at:151 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --tag=F77 --mode=link $F77 $FFLAGS $LDFLAGS -o liba12.la liba1.la liba2.la -rpath /notexist"; then
-  ( $at_traceon; $LIBTOOL --tag=F77 --mode=link $F77 $FFLAGS $LDFLAGS -o liba12.la liba1.la liba2.la -rpath /notexist ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --tag=F77 --mode=link $F77 $FFLAGS $LDFLAGS -o liba12.la liba1.la liba2.la -rpath /notexist ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --tag=F77 --mode=link $F77 $FFLAGS $LDFLAGS -o liba12.la liba1.la liba2.la -rpath /notexist" "convenience.at:151"
+( $at_check_trace; $LIBTOOL --tag=F77 --mode=link $F77 $FFLAGS $LDFLAGS -o liba12.la liba1.la liba2.la -rpath /notexist
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/convenience.at:151"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/convenience.at:151"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/convenience.at:153: \$LIBTOOL --tag=F77 --mode=link \$F77 \$FFLAGS \$LDFLAGS -o liba123.la a3.lo liba1.la liba2.la -rpath /notexist"
-echo convenience.at:153 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --tag=F77 --mode=link $F77 $FFLAGS $LDFLAGS -o liba123.la a3.lo liba1.la liba2.la -rpath /notexist"; then
-  ( $at_traceon; $LIBTOOL --tag=F77 --mode=link $F77 $FFLAGS $LDFLAGS -o liba123.la a3.lo liba1.la liba2.la -rpath /notexist ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --tag=F77 --mode=link $F77 $FFLAGS $LDFLAGS -o liba123.la a3.lo liba1.la liba2.la -rpath /notexist ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --tag=F77 --mode=link $F77 $FFLAGS $LDFLAGS -o liba123.la a3.lo liba1.la liba2.la -rpath /notexist" "convenience.at:153"
+( $at_check_trace; $LIBTOOL --tag=F77 --mode=link $F77 $FFLAGS $LDFLAGS -o liba123.la a3.lo liba1.la liba2.la -rpath /notexist
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/convenience.at:153"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/convenience.at:153"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 conv=
 for i in 1 2 3; do
   conv=$conv$i
-  { $at_traceoff
+  { set +x
 $as_echo "$at_srcdir/convenience.at:159: \$LIBTOOL --tag=F77 --mode=link \$F77 \$FFLAGS \$LDFLAGS -static -o main_static main\$i.lo liba\$conv.la"
-echo convenience.at:159 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --tag=F77 --mode=link $F77 $FFLAGS $LDFLAGS -static -o main_static main$i.lo liba$conv.la"; then
-  ( $at_traceon; $LIBTOOL --tag=F77 --mode=link $F77 $FFLAGS $LDFLAGS -static -o main_static main$i.lo liba$conv.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --tag=F77 --mode=link $F77 $FFLAGS $LDFLAGS -static -o main_static main$i.lo liba$conv.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --tag=F77 --mode=link $F77 $FFLAGS $LDFLAGS -static -o main_static main$i.lo liba$conv.la" "convenience.at:159"
+( $at_check_trace; $LIBTOOL --tag=F77 --mode=link $F77 $FFLAGS $LDFLAGS -static -o main_static main$i.lo liba$conv.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/convenience.at:159"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/convenience.at:159"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-  { $at_traceoff
+  { set +x
 $as_echo "$at_srcdir/convenience.at:161: \$LIBTOOL --tag=F77 --mode=link \$F77 \$FFLAGS \$LDFLAGS -o main main\$i.lo liba\$conv.la"
-echo convenience.at:161 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --tag=F77 --mode=link $F77 $FFLAGS $LDFLAGS -o main main$i.lo liba$conv.la"; then
-  ( $at_traceon; $LIBTOOL --tag=F77 --mode=link $F77 $FFLAGS $LDFLAGS -o main main$i.lo liba$conv.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --tag=F77 --mode=link $F77 $FFLAGS $LDFLAGS -o main main$i.lo liba$conv.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --tag=F77 --mode=link $F77 $FFLAGS $LDFLAGS -o main main$i.lo liba$conv.la" "convenience.at:161"
+( $at_check_trace; $LIBTOOL --tag=F77 --mode=link $F77 $FFLAGS $LDFLAGS -o main main$i.lo liba$conv.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/convenience.at:161"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/convenience.at:161"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/convenience.at:163: ./main_static; lt_status=\$?; if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"./main_static\" || test -x \"./main_static\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo convenience.at:163 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; ./main_static; lt_status=$?; if test $lt_status -eq 0; then :;
+at_fn_check_prepare_notrace 'an embedded newline' "convenience.at:163"
+( $at_check_trace; ./main_static; lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "./main_static" || test -x "./main_static"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; ./main_static; lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "./main_static" || test -x "./main_static"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/convenience.at:163"
-
-$at_failed && at_func_log_failure
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/convenience.at:163"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/convenience.at:164: ./main; lt_status=\$?; if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"./main\" || test -x \"./main\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo convenience.at:164 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; ./main; lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "./main" || test -x "./main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; ./main; lt_status=$?; if test $lt_status -eq 0; then :;
+at_fn_check_prepare_notrace 'an embedded newline' "convenience.at:164"
+( $at_check_trace; ./main; lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "./main" || test -x "./main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/convenience.at:164"
-
-$at_failed && at_func_log_failure
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/convenience.at:164"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 done
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
+read at_status <"$at_status_file"
 #AT_STOP_21
 #AT_START_22
 # 22. convenience.at:169: FC convenience archives
 at_setup_line='convenience.at:169'
-at_func_banner 2
+at_fn_banner 2
 at_desc="FC convenience archives"
-$at_quiet $as_echo_n " 22: $at_desc                        "
+at_desc_line=" 22: $at_desc                        "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
@@ -5718,24 +5282,17 @@ echo "#                             -*-
   $at_traceon
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/convenience.at:170: { test -n \"\$FC\" && test \"X\$FC\" != Xno; } || (exit 77)"
-echo convenience.at:170 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "{ test -n \"$FC\" && test \"X$FC\" != Xno; } || (exit 77)"; then
-  ( $at_traceon; { test -n "$FC" && test "X$FC" != Xno; } || (exit 77) ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; { test -n "$FC" && test "X$FC" != Xno; } || (exit 77) ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/convenience.at:170"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_dynamic "{ test -n \"$FC\" && test \"X$FC\" != Xno; } || (exit 77)" "convenience.at:170"
+( $at_check_trace; { test -n "$FC" && test "X$FC" != Xno; } || (exit 77)
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/convenience.at:170"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -5780,166 +5337,119 @@ EOF
   $LIBTOOL --tag=FC --mode=compile $FC $FCFLAGS -c a$i.f
   $LIBTOOL --tag=FC --mode=link $FC $FCFLAGS $LDFLAGS -o liba$i.la a$i.lo
 done
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/convenience.at:211: \$LIBTOOL --tag=FC --mode=link \$FC \$FCFLAGS \$LDFLAGS -o liba12.la liba1.la liba2.la -rpath /notexist"
-echo convenience.at:211 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --tag=FC --mode=link $FC $FCFLAGS $LDFLAGS -o liba12.la liba1.la liba2.la -rpath /notexist"; then
-  ( $at_traceon; $LIBTOOL --tag=FC --mode=link $FC $FCFLAGS $LDFLAGS -o liba12.la liba1.la liba2.la -rpath /notexist ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --tag=FC --mode=link $FC $FCFLAGS $LDFLAGS -o liba12.la liba1.la liba2.la -rpath /notexist ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --tag=FC --mode=link $FC $FCFLAGS $LDFLAGS -o liba12.la liba1.la liba2.la -rpath /notexist" "convenience.at:211"
+( $at_check_trace; $LIBTOOL --tag=FC --mode=link $FC $FCFLAGS $LDFLAGS -o liba12.la liba1.la liba2.la -rpath /notexist
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/convenience.at:211"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/convenience.at:211"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/convenience.at:213: \$LIBTOOL --tag=FC --mode=link \$FC \$FCFLAGS \$LDFLAGS -o liba123.la a3.lo liba1.la liba2.la -rpath /notexist"
-echo convenience.at:213 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --tag=FC --mode=link $FC $FCFLAGS $LDFLAGS -o liba123.la a3.lo liba1.la liba2.la -rpath /notexist"; then
-  ( $at_traceon; $LIBTOOL --tag=FC --mode=link $FC $FCFLAGS $LDFLAGS -o liba123.la a3.lo liba1.la liba2.la -rpath /notexist ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --tag=FC --mode=link $FC $FCFLAGS $LDFLAGS -o liba123.la a3.lo liba1.la liba2.la -rpath /notexist ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --tag=FC --mode=link $FC $FCFLAGS $LDFLAGS -o liba123.la a3.lo liba1.la liba2.la -rpath /notexist" "convenience.at:213"
+( $at_check_trace; $LIBTOOL --tag=FC --mode=link $FC $FCFLAGS $LDFLAGS -o liba123.la a3.lo liba1.la liba2.la -rpath /notexist
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/convenience.at:213"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/convenience.at:213"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 conv=
 for i in 1 2 3; do
   conv=$conv$i
-  { $at_traceoff
+  { set +x
 $as_echo "$at_srcdir/convenience.at:219: \$LIBTOOL --tag=FC --mode=link \$FC \$FCFLAGS \$LDFLAGS -static -o main_static main\$i.lo liba\$conv.la"
-echo convenience.at:219 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --tag=FC --mode=link $FC $FCFLAGS $LDFLAGS -static -o main_static main$i.lo liba$conv.la"; then
-  ( $at_traceon; $LIBTOOL --tag=FC --mode=link $FC $FCFLAGS $LDFLAGS -static -o main_static main$i.lo liba$conv.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --tag=FC --mode=link $FC $FCFLAGS $LDFLAGS -static -o main_static main$i.lo liba$conv.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --tag=FC --mode=link $FC $FCFLAGS $LDFLAGS -static -o main_static main$i.lo liba$conv.la" "convenience.at:219"
+( $at_check_trace; $LIBTOOL --tag=FC --mode=link $FC $FCFLAGS $LDFLAGS -static -o main_static main$i.lo liba$conv.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/convenience.at:219"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/convenience.at:219"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-  { $at_traceoff
+  { set +x
 $as_echo "$at_srcdir/convenience.at:221: \$LIBTOOL --tag=FC --mode=link \$FC \$FCFLAGS \$LDFLAGS -o main main\$i.lo liba\$conv.la"
-echo convenience.at:221 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --tag=FC --mode=link $FC $FCFLAGS $LDFLAGS -o main main$i.lo liba$conv.la"; then
-  ( $at_traceon; $LIBTOOL --tag=FC --mode=link $FC $FCFLAGS $LDFLAGS -o main main$i.lo liba$conv.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --tag=FC --mode=link $FC $FCFLAGS $LDFLAGS -o main main$i.lo liba$conv.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --tag=FC --mode=link $FC $FCFLAGS $LDFLAGS -o main main$i.lo liba$conv.la" "convenience.at:221"
+( $at_check_trace; $LIBTOOL --tag=FC --mode=link $FC $FCFLAGS $LDFLAGS -o main main$i.lo liba$conv.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/convenience.at:221"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/convenience.at:221"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/convenience.at:223: ./main_static; lt_status=\$?; if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"./main_static\" || test -x \"./main_static\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo convenience.at:223 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; ./main_static; lt_status=$?; if test $lt_status -eq 0; then :;
+at_fn_check_prepare_notrace 'an embedded newline' "convenience.at:223"
+( $at_check_trace; ./main_static; lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "./main_static" || test -x "./main_static"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; ./main_static; lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "./main_static" || test -x "./main_static"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/convenience.at:223"
-
-$at_failed && at_func_log_failure
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/convenience.at:223"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/convenience.at:224: ./main; lt_status=\$?; if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"./main\" || test -x \"./main\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo convenience.at:224 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; ./main; lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "./main" || test -x "./main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; ./main; lt_status=$?; if test $lt_status -eq 0; then :;
+at_fn_check_prepare_notrace 'an embedded newline' "convenience.at:224"
+( $at_check_trace; ./main; lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "./main" || test -x "./main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/convenience.at:224"
-
-$at_failed && at_func_log_failure
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/convenience.at:224"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 done
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
+read at_status <"$at_status_file"
 #AT_STOP_22
 #AT_START_23
 # 23. convenience.at:229: Java convenience archives
 at_setup_line='convenience.at:229'
-at_func_banner 2
+at_fn_banner 2
 at_desc="Java convenience archives"
-$at_quiet $as_echo_n " 23: $at_desc                      "
+at_desc_line=" 23: $at_desc                      "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
@@ -5947,24 +5457,17 @@ echo "#                             -*-
   $at_traceon
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/convenience.at:230: { test -n \"\$GCJ\" && test \"X\$GCJ\" != Xno; } || (exit 77)"
-echo convenience.at:230 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "{ test -n \"$GCJ\" && test \"X$GCJ\" != Xno; } || (exit 77)"; then
-  ( $at_traceon; { test -n "$GCJ" && test "X$GCJ" != Xno; } || (exit 77) ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; { test -n "$GCJ" && test "X$GCJ" != Xno; } || (exit 77) ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/convenience.at:230"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_dynamic "{ test -n \"$GCJ\" && test \"X$GCJ\" != Xno; } || (exit 77)" "convenience.at:230"
+( $at_check_trace; { test -n "$GCJ" && test "X$GCJ" != Xno; } || (exit 77)
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/convenience.at:230"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -6003,64 +5506,43 @@ EOF
   # There are just too many broken gcj installations out there, either missing
   # libgcj.spec or unable to find it.  Skip this test for them.
   if test $i -eq 1; then
-    { $at_traceoff
+    { set +x
 $as_echo "$at_srcdir/convenience.at:265: \$GCJ \$GCJFLAGS -c foo1.java || exit 77"
-echo convenience.at:265 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$GCJ $GCJFLAGS -c foo1.java || exit 77"; then
-  ( $at_traceon; $GCJ $GCJFLAGS -c foo1.java || exit 77 ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $GCJ $GCJFLAGS -c foo1.java || exit 77 ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$GCJ $GCJFLAGS -c foo1.java || exit 77" "convenience.at:265"
+( $at_check_trace; $GCJ $GCJFLAGS -c foo1.java || exit 77
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/convenience.at:265"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/convenience.at:265"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-    { $at_traceoff
+    { set +x
 $as_echo "$at_srcdir/convenience.at:266: \$GCJ \$GCJFLAGS --main=foo1 -o foo1 foo1.java A1.java || exit 77"
-echo convenience.at:266 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$GCJ $GCJFLAGS --main=foo1 -o foo1 foo1.java A1.java || exit 77"; then
-  ( $at_traceon; $GCJ $GCJFLAGS --main=foo1 -o foo1 foo1.java A1.java || exit 77 ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $GCJ $GCJFLAGS --main=foo1 -o foo1 foo1.java A1.java || exit 77 ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$GCJ $GCJFLAGS --main=foo1 -o foo1 foo1.java A1.java || exit 77" "convenience.at:266"
+( $at_check_trace; $GCJ $GCJFLAGS --main=foo1 -o foo1 foo1.java A1.java || exit 77
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/convenience.at:266"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/convenience.at:266"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-    { $at_traceoff
+    { set +x
 $as_echo "$at_srcdir/convenience.at:267: ./foo1\$EXEEXT || exit 77"
-echo convenience.at:267 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "./foo1$EXEEXT || exit 77"; then
-  ( $at_traceon; ./foo1$EXEEXT || exit 77 ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; ./foo1$EXEEXT || exit 77 ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "./foo1$EXEEXT || exit 77" "convenience.at:267"
+( $at_check_trace; ./foo1$EXEEXT || exit 77
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/convenience.at:267"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/convenience.at:267"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
     rm -f foo1.o foo1.obj foo1$EXEEXT
@@ -6070,166 +5552,119 @@ $at_traceon; }
   $LIBTOOL --tag=GCJ --mode=compile $GCJ $GCJFLAGS -c A$i.java
   $LIBTOOL --tag=GCJ --mode=link $GCJ $GCJFLAGS $LDFLAGS -o liba$i.la A$i.lo
 done
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/convenience.at:275: \$LIBTOOL --tag=GCJ --mode=link \$GCJ \$GCJFLAGS \$LDFLAGS -o liba12.la liba1.la liba2.la -rpath /notexist"
-echo convenience.at:275 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --tag=GCJ --mode=link $GCJ $GCJFLAGS $LDFLAGS -o liba12.la liba1.la liba2.la -rpath /notexist"; then
-  ( $at_traceon; $LIBTOOL --tag=GCJ --mode=link $GCJ $GCJFLAGS $LDFLAGS -o liba12.la liba1.la liba2.la -rpath /notexist ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --tag=GCJ --mode=link $GCJ $GCJFLAGS $LDFLAGS -o liba12.la liba1.la liba2.la -rpath /notexist ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --tag=GCJ --mode=link $GCJ $GCJFLAGS $LDFLAGS -o liba12.la liba1.la liba2.la -rpath /notexist" "convenience.at:275"
+( $at_check_trace; $LIBTOOL --tag=GCJ --mode=link $GCJ $GCJFLAGS $LDFLAGS -o liba12.la liba1.la liba2.la -rpath /notexist
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/convenience.at:275"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/convenience.at:275"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/convenience.at:277: \$LIBTOOL --tag=GCJ --mode=link \$GCJ \$GCJFLAGS \$LDFLAGS -o liba123.la A3.lo liba1.la liba2.la -rpath /notexist"
-echo convenience.at:277 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --tag=GCJ --mode=link $GCJ $GCJFLAGS $LDFLAGS -o liba123.la A3.lo liba1.la liba2.la -rpath /notexist"; then
-  ( $at_traceon; $LIBTOOL --tag=GCJ --mode=link $GCJ $GCJFLAGS $LDFLAGS -o liba123.la A3.lo liba1.la liba2.la -rpath /notexist ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --tag=GCJ --mode=link $GCJ $GCJFLAGS $LDFLAGS -o liba123.la A3.lo liba1.la liba2.la -rpath /notexist ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --tag=GCJ --mode=link $GCJ $GCJFLAGS $LDFLAGS -o liba123.la A3.lo liba1.la liba2.la -rpath /notexist" "convenience.at:277"
+( $at_check_trace; $LIBTOOL --tag=GCJ --mode=link $GCJ $GCJFLAGS $LDFLAGS -o liba123.la A3.lo liba1.la liba2.la -rpath /notexist
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/convenience.at:277"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/convenience.at:277"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 conv=
 for i in 1 2 3; do
   conv=$conv$i
-  { $at_traceoff
+  { set +x
 $as_echo "$at_srcdir/convenience.at:283: \$LIBTOOL --tag=GCJ --mode=link \$GCJ \$GCJFLAGS \$LDFLAGS -static --main=foo\$i -o main_static foo\$i.lo liba\$conv.la"
-echo convenience.at:283 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --tag=GCJ --mode=link $GCJ $GCJFLAGS $LDFLAGS -static --main=foo$i -o main_static foo$i.lo liba$conv.la"; then
-  ( $at_traceon; $LIBTOOL --tag=GCJ --mode=link $GCJ $GCJFLAGS $LDFLAGS -static --main=foo$i -o main_static foo$i.lo liba$conv.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --tag=GCJ --mode=link $GCJ $GCJFLAGS $LDFLAGS -static --main=foo$i -o main_static foo$i.lo liba$conv.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --tag=GCJ --mode=link $GCJ $GCJFLAGS $LDFLAGS -static --main=foo$i -o main_static foo$i.lo liba$conv.la" "convenience.at:283"
+( $at_check_trace; $LIBTOOL --tag=GCJ --mode=link $GCJ $GCJFLAGS $LDFLAGS -static --main=foo$i -o main_static foo$i.lo liba$conv.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/convenience.at:283"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/convenience.at:283"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-  { $at_traceoff
+  { set +x
 $as_echo "$at_srcdir/convenience.at:285: \$LIBTOOL --tag=GCJ --mode=link \$GCJ \$GCJFLAGS \$LDFLAGS --main=foo\$i -o main foo\$i.lo liba\$conv.la"
-echo convenience.at:285 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --tag=GCJ --mode=link $GCJ $GCJFLAGS $LDFLAGS --main=foo$i -o main foo$i.lo liba$conv.la"; then
-  ( $at_traceon; $LIBTOOL --tag=GCJ --mode=link $GCJ $GCJFLAGS $LDFLAGS --main=foo$i -o main foo$i.lo liba$conv.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --tag=GCJ --mode=link $GCJ $GCJFLAGS $LDFLAGS --main=foo$i -o main foo$i.lo liba$conv.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --tag=GCJ --mode=link $GCJ $GCJFLAGS $LDFLAGS --main=foo$i -o main foo$i.lo liba$conv.la" "convenience.at:285"
+( $at_check_trace; $LIBTOOL --tag=GCJ --mode=link $GCJ $GCJFLAGS $LDFLAGS --main=foo$i -o main foo$i.lo liba$conv.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/convenience.at:285"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/convenience.at:285"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/convenience.at:287: ./main_static; lt_status=\$?; if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"./main_static\" || test -x \"./main_static\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo convenience.at:287 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; ./main_static; lt_status=$?; if test $lt_status -eq 0; then :;
+at_fn_check_prepare_notrace 'an embedded newline' "convenience.at:287"
+( $at_check_trace; ./main_static; lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "./main_static" || test -x "./main_static"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; ./main_static; lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "./main_static" || test -x "./main_static"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/convenience.at:287"
-
-$at_failed && at_func_log_failure
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/convenience.at:287"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/convenience.at:288: ./main; lt_status=\$?; if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"./main\" || test -x \"./main\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo convenience.at:288 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; ./main; lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "./main" || test -x "./main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; ./main; lt_status=$?; if test $lt_status -eq 0; then :;
+at_fn_check_prepare_notrace 'an embedded newline' "convenience.at:288"
+( $at_check_trace; ./main; lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "./main" || test -x "./main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/convenience.at:288"
-
-$at_failed && at_func_log_failure
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/convenience.at:288"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 done
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
+read at_status <"$at_status_file"
 #AT_STOP_23
 #AT_START_24
 # 24. link-order.at:26: Link order test.
 at_setup_line='link-order.at:26'
-at_func_banner 2
+at_fn_banner 2
 at_desc="Link order test."
-$at_quiet $as_echo_n " 24: $at_desc                               "
+at_desc_line=" 24: $at_desc                               "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
@@ -6279,24 +5714,17 @@ EOF
   $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o src/liba.la src/a.lo \
       src/libb.la -L$prefix_old/lib -lcee -rpath $prefix/lib
   $LIBTOOL --mode=install cp src/libb.la $prefix/lib/libb.la
-  { $at_traceoff
+  { set +x
 $as_echo "$at_srcdir/link-order.at:69: \$LIBTOOL --mode=install cp src/liba.la \$prefix/lib/liba.la"
-echo link-order.at:69 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=install cp src/liba.la $prefix/lib/liba.la"; then
-  ( $at_traceon; $LIBTOOL --mode=install cp src/liba.la $prefix/lib/liba.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=install cp src/liba.la $prefix/lib/liba.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=install cp src/liba.la $prefix/lib/liba.la" "link-order.at:69"
+( $at_check_trace; $LIBTOOL --mode=install cp src/liba.la $prefix/lib/liba.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; tee stderr <"$at_stderr"
 echo stdout:; tee stdout <"$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/link-order.at:69"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/link-order.at:69"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 done
@@ -6310,64 +5738,46 @@ aix* | interix*) ;;  # These systems hav
   # Do not error if we do not relink (e.g. static-only systems)
   case $hardcode_direct$hardcode_direct_absolute in
   yesno)
-    { $at_traceoff
+    { set +x
 $as_echo "$at_srcdir/link-order.at:82: if \$EGREP relinking stderr; then
          \$EGREP \" .*\\/new\\/lib/libb\$shared_ext .*\\/old\\/lib/libcee\$shared_ext\" stdout
        else :; fi"
-echo link-order.at:82 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; if $EGREP relinking stderr; then
+at_fn_check_prepare_notrace 'an embedded newline' "link-order.at:82"
+( $at_check_trace; if $EGREP relinking stderr; then
          $EGREP " .*\/new\/lib/libb$shared_ext .*\/old\/lib/libcee$shared_ext" stdout
-       else :; fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; if $EGREP relinking stderr; then
-         $EGREP " .*\/new\/lib/libb$shared_ext .*\/old\/lib/libcee$shared_ext" stdout
-       else :; fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+       else :; fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/link-order.at:82"
-if $at_failed; then
+at_fn_check_status 0 $at_status "$at_srcdir/link-order.at:82"
+if $at_failed; then :
   echo "wrong link order"
 fi
-
-$at_failed && at_func_log_failure
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
     ;;
   *)
-    { $at_traceoff
+    { set +x
 $as_echo "$at_srcdir/link-order.at:87: if \$EGREP relinking stderr; then
          \$EGREP \" -L.*\\/new\\/lib -lb -L.*\\/old\\/lib -lcee\" stdout
        else :; fi"
-echo link-order.at:87 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; if $EGREP relinking stderr; then
-         $EGREP " -L.*\/new\/lib -lb -L.*\/old\/lib -lcee" stdout
-       else :; fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; if $EGREP relinking stderr; then
+at_fn_check_prepare_notrace 'an embedded newline' "link-order.at:87"
+( $at_check_trace; if $EGREP relinking stderr; then
          $EGREP " -L.*\/new\/lib -lb -L.*\/old\/lib -lcee" stdout
-       else :; fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+       else :; fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/link-order.at:87"
-if $at_failed; then
+at_fn_check_status 0 $at_status "$at_srcdir/link-order.at:87"
+if $at_failed; then :
   echo "wrong link order"
 fi
-
-$at_failed && at_func_log_failure
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
     ;;
@@ -6383,71 +5793,55 @@ EOF
 
   prefix=`eval echo \\$prefix_$i`
   $LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c src/main_$i.c -o src/main_$i.lo
-  { $at_traceoff
+  { set +x
 $as_echo "$at_srcdir/link-order.at:103: \$LIBTOOL --mode=link \$CC \$CFLAGS \$LDFLAGS -o src/main_\$i src/main_\$i.lo -L\$prefix/lib -la"
-echo link-order.at:103 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o src/main_$i src/main_$i.lo -L$prefix/lib -la"; then
-  ( $at_traceon; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o src/main_$i src/main_$i.lo -L$prefix/lib -la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o src/main_$i src/main_$i.lo -L$prefix/lib -la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o src/main_$i src/main_$i.lo -L$prefix/lib -la" "link-order.at:103"
+( $at_check_trace; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o src/main_$i src/main_$i.lo -L$prefix/lib -la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/link-order.at:103"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/link-order.at:103"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/link-order.at:105: src/main_\$i; lt_status=\$?; if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"src/main_\$i\" || test -x \"src/main_\$i\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo link-order.at:105 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; src/main_$i; lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "src/main_$i" || test -x "src/main_$i"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; src/main_$i; lt_status=$?; if test $lt_status -eq 0; then :;
+at_fn_check_prepare_notrace 'an embedded newline' "link-order.at:105"
+( $at_check_trace; src/main_$i; lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "src/main_$i" || test -x "src/main_$i"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/link-order.at:105"
-
-$at_failed && at_func_log_failure
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/link-order.at:105"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 done
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
+read at_status <"$at_status_file"
 #AT_STOP_24
 #AT_START_25
 # 25. link-order2.at:46: Link order of deplibs.
 at_setup_line='link-order2.at:46'
-at_func_banner 2
+at_fn_banner 2
 at_desc="Link order of deplibs."
-$at_quiet $as_echo_n " 25: $at_desc                         "
+at_desc_line=" 25: $at_desc                         "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
@@ -6529,109 +5923,75 @@ for type_of_depdepl in libtool non-libto
        static=-all-static
     $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS $static -o liba1.la a1.lo -rpath $libdir
     $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS $static -o libb.la b.lo liba1.la -rpath $libdir
-    { $at_traceoff
+    { set +x
 $as_echo "$at_srcdir/link-order2.at:122: \$LIBTOOL --mode=link \$CC \$CFLAGS \$LDFLAGS \$static -o main main.\$OBJEXT libb.la -la0"
-echo link-order2.at:122 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS $static -o main main.$OBJEXT libb.la -la0"; then
-  ( $at_traceon; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS $static -o main main.$OBJEXT libb.la -la0 ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS $static -o main main.$OBJEXT libb.la -la0 ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS $static -o main main.$OBJEXT libb.la -la0" "link-order2.at:122"
+( $at_check_trace; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS $static -o main main.$OBJEXT libb.la -la0
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/link-order2.at:122"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/link-order2.at:122"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/link-order2.at:124: ./main; lt_status=\$?; if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"./main\" || test -x \"./main\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo link-order2.at:124 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; ./main; lt_status=$?; if test $lt_status -eq 0; then :;
+at_fn_check_prepare_notrace 'an embedded newline' "link-order2.at:124"
+( $at_check_trace; ./main; lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "./main" || test -x "./main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; ./main; lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "./main" || test -x "./main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/link-order2.at:124"
-
-$at_failed && at_func_log_failure
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/link-order2.at:124"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
     # Now test that if we reverse the link order, the program fails.
-    { $at_traceoff
+    { set +x
 $as_echo "$at_srcdir/link-order2.at:126: \$LIBTOOL --mode=link \$CC \$CFLAGS \$LDFLAGS \$static -o wrong main.\$OBJEXT -la0 libb.la"
-echo link-order2.at:126 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS $static -o wrong main.$OBJEXT -la0 libb.la"; then
-  ( $at_traceon; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS $static -o wrong main.$OBJEXT -la0 libb.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS $static -o wrong main.$OBJEXT -la0 libb.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS $static -o wrong main.$OBJEXT -la0 libb.la" "link-order2.at:126"
+( $at_check_trace; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS $static -o wrong main.$OBJEXT -la0 libb.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/link-order2.at:126"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/link-order2.at:126"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
     if test $shared_fails,$static != yes,; then
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/link-order2.at:129: ./wrong; lt_status=\$?; if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"./wrong\" || test -x \"./wrong\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo link-order2.at:129 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; ./wrong; lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "./wrong" || test -x "./wrong"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; ./wrong; lt_status=$?; if test $lt_status -eq 0; then :;
+at_fn_check_prepare_notrace 'an embedded newline' "link-order2.at:129"
+( $at_check_trace; ./wrong; lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "./wrong" || test -x "./wrong"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 2 $at_status "$at_srcdir/link-order2.at:129"
-
-$at_failed && at_func_log_failure
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 2 $at_status "$at_srcdir/link-order2.at:129"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -6644,66 +6004,46 @@ $at_traceon; }
     $LIBTOOL --mode=clean rm -f liba1.la libb.la
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/link-order2.at:137: \$bindir/main; lt_status=\$?; if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"\$bindir/main\" || test -x \"\$bindir/main\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo link-order2.at:137 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; $bindir/main; lt_status=$?; if test $lt_status -eq 0; then :;
+at_fn_check_prepare_notrace 'an embedded newline' "link-order2.at:137"
+( $at_check_trace; $bindir/main; lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "$bindir/main" || test -x "$bindir/main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $bindir/main; lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "$bindir/main" || test -x "$bindir/main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/link-order2.at:137"
-
-$at_failed && at_func_log_failure
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/link-order2.at:137"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
     if test $shared_fails,$static != yes,; then
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/link-order2.at:139: \$bindir/wrong; lt_status=\$?; if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"\$bindir/wrong\" || test -x \"\$bindir/wrong\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo link-order2.at:139 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; $bindir/wrong; lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "$bindir/wrong" || test -x "$bindir/wrong"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $bindir/wrong; lt_status=$?; if test $lt_status -eq 0; then :;
+at_fn_check_prepare_notrace 'an embedded newline' "link-order2.at:139"
+( $at_check_trace; $bindir/wrong; lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "$bindir/wrong" || test -x "$bindir/wrong"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 2 $at_status "$at_srcdir/link-order2.at:139"
-
-$at_failed && at_func_log_failure
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 2 $at_status "$at_srcdir/link-order2.at:139"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -6711,41 +6051,35 @@ $at_traceon; }
   done
 done
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/link-order2.at:144: test \$shared_fails = no || (exit 77)"
-echo link-order2.at:144 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "test $shared_fails = no || (exit 77)"; then
-  ( $at_traceon; test $shared_fails = no || (exit 77) ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; test $shared_fails = no || (exit 77) ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/link-order2.at:144"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_dynamic "test $shared_fails = no || (exit 77)" "link-order2.at:144"
+( $at_check_trace; test $shared_fails = no || (exit 77)
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/link-order2.at:144"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 # Now the converse: if both the program and the library need libm, then
 # it needs to be sorted last.  (TODO)
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
+read at_status <"$at_status_file"
 #AT_STOP_25
 #AT_START_26
 # 26. fail.at:27: Failure tests
 at_setup_line='fail.at:27'
-at_func_banner 2
+at_fn_banner 2
 at_desc="Failure tests"
-$at_quiet $as_echo_n " 26: $at_desc                                  "
+at_desc_line=" 26: $at_desc                                  "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
@@ -6772,44 +6106,31 @@ fi
 
 # compile failure
 echo 'choke me' > a.c
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/fail.at:49: if \$LIBTOOL --mode=compile \$CC \$CPPFLAGS \$CFLAGS -c a.c; then (exit 1); else :; fi"
-echo fail.at:49 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "if $LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c a.c; then (exit 1); else :; fi"; then
-  ( $at_traceon; if $LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c a.c; then (exit 1); else :; fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; if $LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c a.c; then (exit 1); else :; fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "if $LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c a.c; then (exit 1); else :; fi" "fail.at:49"
+( $at_check_trace; if $LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c a.c; then (exit 1); else :; fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/fail.at:49"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/fail.at:49"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/fail.at:50: test -f a.lo"
-echo fail.at:50 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; test -f a.lo ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; test -f a.lo ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 1 $at_status "$at_srcdir/fail.at:50"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_trace "fail.at:50"
+( $at_check_trace; test -f a.lo
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 1 $at_status "$at_srcdir/fail.at:50"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -6823,44 +6144,31 @@ case $pic_mode in default | yes)
 #endif
 _ATEOF
 
-    { $at_traceoff
+    { set +x
 $as_echo "$at_srcdir/fail.at:60: if \$LIBTOOL --mode=compile \$CC \$CPPFLAGS \$CFLAGS -no-suppress -c a.c; then (exit 1); else :; fi"
-echo fail.at:60 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "if $LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -no-suppress -c a.c; then (exit 1); else :; fi"; then
-  ( $at_traceon; if $LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -no-suppress -c a.c; then (exit 1); else :; fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; if $LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -no-suppress -c a.c; then (exit 1); else :; fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "if $LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -no-suppress -c a.c; then (exit 1); else :; fi" "fail.at:60"
+( $at_check_trace; if $LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -no-suppress -c a.c; then (exit 1); else :; fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/fail.at:60"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/fail.at:60"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
-    { $at_traceoff
+    { set +x
 $as_echo "$at_srcdir/fail.at:61: test -f a.lo"
-echo fail.at:61 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; test -f a.lo ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; test -f a.lo ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 1 $at_status "$at_srcdir/fail.at:61"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_trace "fail.at:61"
+( $at_check_trace; test -f a.lo
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 1 $at_status "$at_srcdir/fail.at:61"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
     ;;
@@ -6871,86 +6179,58 @@ esac
 # program creation failure
 echo 'int not_main(void) { return 0; }' > a.c
 $CC $CPPFLAGS $CFLAGS -c a.c
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/fail.at:70: if \$LIBTOOL --mode=link \$CC \$CFLAGS \$LDFLAGS -o a a.\$OBJEXT; then (exit 1); else :; fi"
-echo fail.at:70 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "if $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o a a.$OBJEXT; then (exit 1); else :; fi"; then
-  ( $at_traceon; if $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o a a.$OBJEXT; then (exit 1); else :; fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; if $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o a a.$OBJEXT; then (exit 1); else :; fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "if $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o a a.$OBJEXT; then (exit 1); else :; fi" "fail.at:70"
+( $at_check_trace; if $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o a a.$OBJEXT; then (exit 1); else :; fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/fail.at:70"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/fail.at:70"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/fail.at:71: { test -f a && \$test_x a; } || { test -f a\$EXEEXT && \$test_x a\$EXEEXT; }"
-echo fail.at:71 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "{ test -f a && $test_x a; } || { test -f a$EXEEXT && $test_x a$EXEEXT; }"; then
-  ( $at_traceon; { test -f a && $test_x a; } || { test -f a$EXEEXT && $test_x a$EXEEXT; } ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; { test -f a && $test_x a; } || { test -f a$EXEEXT && $test_x a$EXEEXT; } ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 1 $at_status "$at_srcdir/fail.at:71"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_dynamic "{ test -f a && $test_x a; } || { test -f a$EXEEXT && $test_x a$EXEEXT; }" "fail.at:71"
+( $at_check_trace; { test -f a && $test_x a; } || { test -f a$EXEEXT && $test_x a$EXEEXT; }
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 1 $at_status "$at_srcdir/fail.at:71"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/fail.at:72: if \$LIBTOOL --mode=link \$CC \$CFLAGS \$LDFLAGS -o a a.\$OBJEXT -static; then (exit 1); else :; fi"
-echo fail.at:72 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "if $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o a a.$OBJEXT -static; then (exit 1); else :; fi"; then
-  ( $at_traceon; if $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o a a.$OBJEXT -static; then (exit 1); else :; fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; if $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o a a.$OBJEXT -static; then (exit 1); else :; fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "if $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o a a.$OBJEXT -static; then (exit 1); else :; fi" "fail.at:72"
+( $at_check_trace; if $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o a a.$OBJEXT -static; then (exit 1); else :; fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/fail.at:72"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/fail.at:72"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/fail.at:73: { test -f a && \$test_x a; } || { test -f a\$EXEEXT && \$test_x a\$EXEEXT; }"
-echo fail.at:73 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "{ test -f a && $test_x a; } || { test -f a$EXEEXT && $test_x a$EXEEXT; }"; then
-  ( $at_traceon; { test -f a && $test_x a; } || { test -f a$EXEEXT && $test_x a$EXEEXT; } ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; { test -f a && $test_x a; } || { test -f a$EXEEXT && $test_x a$EXEEXT; } ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 1 $at_status "$at_srcdir/fail.at:73"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_dynamic "{ test -f a && $test_x a; } || { test -f a$EXEEXT && $test_x a$EXEEXT; }" "fail.at:73"
+( $at_check_trace; { test -f a && $test_x a; } || { test -f a$EXEEXT && $test_x a$EXEEXT; }
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 1 $at_status "$at_srcdir/fail.at:73"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -6969,44 +6249,31 @@ case $build_libtool_libs in yes)
     test "$pic_object" != none && echo choke me >"$pic_object"
     test "$non_pic_object" != none && echo choke me >"$non_pic_object"
   )
-  { $at_traceoff
+  { set +x
 $as_echo "$at_srcdir/fail.at:90: if \$LIBTOOL --mode=link \$CC \$CFLAGS \$LDFLAGS -o liba.la a.lo b.lo c.lo -rpath /foo; then (exit 1); else :; fi"
-echo fail.at:90 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "if $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o liba.la a.lo b.lo c.lo -rpath /foo; then (exit 1); else :; fi"; then
-  ( $at_traceon; if $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o liba.la a.lo b.lo c.lo -rpath /foo; then (exit 1); else :; fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; if $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o liba.la a.lo b.lo c.lo -rpath /foo; then (exit 1); else :; fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "if $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o liba.la a.lo b.lo c.lo -rpath /foo; then (exit 1); else :; fi" "fail.at:90"
+( $at_check_trace; if $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o liba.la a.lo b.lo c.lo -rpath /foo; then (exit 1); else :; fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/fail.at:90"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/fail.at:90"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
-  { $at_traceoff
+  { set +x
 $as_echo "$at_srcdir/fail.at:91: test -f liba.la"
-echo fail.at:91 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; test -f liba.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; test -f liba.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 1 $at_status "$at_srcdir/fail.at:91"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_trace "fail.at:91"
+( $at_check_trace; test -f liba.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 1 $at_status "$at_srcdir/fail.at:91"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
   ;;
@@ -7017,61 +6284,48 @@ echo 'int main () { return 0; }' > d.c
 echo 'int foo () { return 0; }' > space-after-L.c
 $CC $CPPFLAGS $CFLAGS -c d.c
 $CC $CPPFLAGS $CFLAGS -c space-after-L.c
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/fail.at:100: if \$LIBTOOL --mode=link \$CC \$CFLAGS \$LDFLAGS -L space-after-L.\$OBJEXT -o d d.\$OBJEXT; then (exit 1); else :; fi"
-echo fail.at:100 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "if $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -L space-after-L.$OBJEXT -o d d.$OBJEXT; then (exit 1); else :; fi"; then
-  ( $at_traceon; if $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -L space-after-L.$OBJEXT -o d d.$OBJEXT; then (exit 1); else :; fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; if $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -L space-after-L.$OBJEXT -o d d.$OBJEXT; then (exit 1); else :; fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "if $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -L space-after-L.$OBJEXT -o d d.$OBJEXT; then (exit 1); else :; fi" "fail.at:100"
+( $at_check_trace; if $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -L space-after-L.$OBJEXT -o d d.$OBJEXT; then (exit 1); else :; fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/fail.at:100"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/fail.at:100"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/fail.at:101: if \$LIBTOOL --mode=link \$CC \$CFLAGS \$LDFLAGS -o d d.\$OBJEXT -L; then (exit 1); else :; fi"
-echo fail.at:101 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "if $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o d d.$OBJEXT -L; then (exit 1); else :; fi"; then
-  ( $at_traceon; if $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o d d.$OBJEXT -L; then (exit 1); else :; fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; if $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o d d.$OBJEXT -L; then (exit 1); else :; fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "if $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o d d.$OBJEXT -L; then (exit 1); else :; fi" "fail.at:101"
+( $at_check_trace; if $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o d d.$OBJEXT -L; then (exit 1); else :; fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/fail.at:101"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/fail.at:101"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
+read at_status <"$at_status_file"
 #AT_STOP_26
 #AT_START_27
 # 27. shlibpath.at:25: shlibpath_overrides_runpath
 at_setup_line='shlibpath.at:25'
-at_func_banner 2
+at_fn_banner 2
 at_desc="shlibpath_overrides_runpath"
-$at_quiet $as_echo_n " 27: $at_desc                    "
+at_desc_line=" 27: $at_desc                    "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
@@ -7090,44 +6344,30 @@ $LIBTOOL --mode=clean rm -f liba.la
 rm -f sub/lib/liba.la
 
 $CC $CPPFLAGS $CFLAGS -c m.c
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/shlibpath.at:38: \$LIBTOOL --mode=link \$CC \$CFLAGS \$LDFLAGS -o m m.\$OBJEXT -Lsub/lib -la -R\`pwd\`/sub/lib"
-echo shlibpath.at:38 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains a `...` command substitution)'
-   false; }; then
-  ( $at_traceon; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o m m.$OBJEXT -Lsub/lib -la -R`pwd`/sub/lib ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o m m.$OBJEXT -Lsub/lib -la -R`pwd`/sub/lib ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_notrace 'a `...` command substitution' "shlibpath.at:38"
+( $at_check_trace; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o m m.$OBJEXT -Lsub/lib -la -R`pwd`/sub/lib
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/shlibpath.at:38"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/shlibpath.at:38"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/shlibpath.at:40: \$LIBTOOL --mode=link \$CC \$CFLAGS \$LDFLAGS -o m2 m.\$OBJEXT -Lsub/lib -la"
-echo shlibpath.at:40 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o m2 m.$OBJEXT -Lsub/lib -la"; then
-  ( $at_traceon; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o m2 m.$OBJEXT -Lsub/lib -la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o m2 m.$OBJEXT -Lsub/lib -la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o m2 m.$OBJEXT -Lsub/lib -la" "shlibpath.at:40"
+( $at_check_trace; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o m2 m.$OBJEXT -Lsub/lib -la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/shlibpath.at:40"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/shlibpath.at:40"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -7149,23 +6389,17 @@ $LIBTOOL --mode=clean rm -f liba.la
 eval `$LIBTOOL --config | $EGREP '^(shlibpath_var|shlibpath_overrides_runpath)='`
 
 # No point checking a system with static libraries:
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/shlibpath.at:54: { ./m || exit 1; } && exit 77"
-echo shlibpath.at:54 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; { ./m || exit 1; } && exit 77 ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; { ./m || exit 1; } && exit 77 ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_trace "shlibpath.at:54"
+( $at_check_trace; { ./m || exit 1; } && exit 77
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 1 $at_status "$at_srcdir/shlibpath.at:54"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 1 $at_status "$at_srcdir/shlibpath.at:54"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -7181,102 +6415,77 @@ export $shlibpath_var
 if test "$shlibpath_overrides_runpath" != no; then
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/shlibpath.at:66: ./m; lt_status=\$?; if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"./m\" || test -x \"./m\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo shlibpath.at:66 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; ./m; lt_status=$?; if test $lt_status -eq 0; then :;
+at_fn_check_prepare_notrace 'an embedded newline' "shlibpath.at:66"
+( $at_check_trace; ./m; lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "./m" || test -x "./m"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; ./m; lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "./m" || test -x "./m"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/shlibpath.at:66"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/shlibpath.at:66"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 else
-  { $at_traceoff
+  { set +x
 $as_echo "$at_srcdir/shlibpath.at:68: ./m || exit 1"
-echo shlibpath.at:68 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; ./m || exit 1 ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; ./m || exit 1 ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_trace "shlibpath.at:68"
+( $at_check_trace; ./m || exit 1
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 1 $at_status "$at_srcdir/shlibpath.at:68"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 1 $at_status "$at_srcdir/shlibpath.at:68"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 fi
 # Test that shlibpath_var is effective in adding paths at all:
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/shlibpath.at:71: ./m2; lt_status=\$?; if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"./m2\" || test -x \"./m2\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo shlibpath.at:71 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; ./m2; lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "./m2" || test -x "./m2"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; ./m2; lt_status=$?; if test $lt_status -eq 0; then :;
+at_fn_check_prepare_notrace 'an embedded newline' "shlibpath.at:71"
+( $at_check_trace; ./m2; lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "./m2" || test -x "./m2"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/shlibpath.at:71"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/shlibpath.at:71"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
+read at_status <"$at_status_file"
 #AT_STOP_27
 #AT_START_28
 # 28. runpath-in-lalib.at:25: Runpath in libtool library files
 at_setup_line='runpath-in-lalib.at:25'
-at_func_banner 2
+at_fn_banner 2
 at_desc="Runpath in libtool library files"
-$at_quiet $as_echo_n " 28: $at_desc               "
+at_desc_line=" 28: $at_desc               "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
@@ -7311,181 +6520,126 @@ for file in a.c b.c; do
   $LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c $file
 done
 $CC $CPPFLAGS $CFLAGS -c m.c
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/runpath-in-lalib.at:51: \$LIBTOOL --mode=link \$CC \$CFLAGS \$LDFLAGS -o liba.la a.lo -rpath \$libdir -R\$addrunpath"
-echo runpath-in-lalib.at:51 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o liba.la a.lo -rpath $libdir -R$addrunpath"; then
-  ( $at_traceon; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o liba.la a.lo -rpath $libdir -R$addrunpath ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o liba.la a.lo -rpath $libdir -R$addrunpath ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o liba.la a.lo -rpath $libdir -R$addrunpath" "runpath-in-lalib.at:51"
+( $at_check_trace; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o liba.la a.lo -rpath $libdir -R$addrunpath
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/runpath-in-lalib.at:51"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/runpath-in-lalib.at:51"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/runpath-in-lalib.at:53: \$LIBTOOL --mode=link \$CC \$CFLAGS \$LDFLAGS -o libb.la b.lo -rpath \$libdir liba.la"
-echo runpath-in-lalib.at:53 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o libb.la b.lo -rpath $libdir liba.la"; then
-  ( $at_traceon; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o libb.la b.lo -rpath $libdir liba.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o libb.la b.lo -rpath $libdir liba.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o libb.la b.lo -rpath $libdir liba.la" "runpath-in-lalib.at:53"
+( $at_check_trace; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o libb.la b.lo -rpath $libdir liba.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/runpath-in-lalib.at:53"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/runpath-in-lalib.at:53"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/runpath-in-lalib.at:55: \$LIBTOOL --mode=link \$CC \$CFLAGS \$LDFLAGS -o m m.\$OBJEXT libb.la"
-echo runpath-in-lalib.at:55 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o m m.$OBJEXT libb.la"; then
-  ( $at_traceon; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o m m.$OBJEXT libb.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o m m.$OBJEXT libb.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o m m.$OBJEXT libb.la" "runpath-in-lalib.at:55"
+( $at_check_trace; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o m m.$OBJEXT libb.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/runpath-in-lalib.at:55"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/runpath-in-lalib.at:55"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/runpath-in-lalib.at:57: \$LIBTOOL --mode=install cp liba.la \$libdir/liba.la"
-echo runpath-in-lalib.at:57 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=install cp liba.la $libdir/liba.la"; then
-  ( $at_traceon; $LIBTOOL --mode=install cp liba.la $libdir/liba.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=install cp liba.la $libdir/liba.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=install cp liba.la $libdir/liba.la" "runpath-in-lalib.at:57"
+( $at_check_trace; $LIBTOOL --mode=install cp liba.la $libdir/liba.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/runpath-in-lalib.at:57"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/runpath-in-lalib.at:57"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/runpath-in-lalib.at:58: \$LIBTOOL --mode=install cp libb.la \$libdir/libb.la"
-echo runpath-in-lalib.at:58 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=install cp libb.la $libdir/libb.la"; then
-  ( $at_traceon; $LIBTOOL --mode=install cp libb.la $libdir/libb.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=install cp libb.la $libdir/libb.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=install cp libb.la $libdir/libb.la" "runpath-in-lalib.at:58"
+( $at_check_trace; $LIBTOOL --mode=install cp libb.la $libdir/libb.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/runpath-in-lalib.at:58"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/runpath-in-lalib.at:58"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/runpath-in-lalib.at:59: \$LIBTOOL --mode=install cp m \$bindir/m"
-echo runpath-in-lalib.at:59 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=install cp m $bindir/m"; then
-  ( $at_traceon; $LIBTOOL --mode=install cp m $bindir/m ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=install cp m $bindir/m ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=install cp m $bindir/m" "runpath-in-lalib.at:59"
+( $at_check_trace; $LIBTOOL --mode=install cp m $bindir/m
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/runpath-in-lalib.at:59"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/runpath-in-lalib.at:59"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/runpath-in-lalib.at:61: grep /foobar \$libdir/liba.la"
-echo runpath-in-lalib.at:61 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "grep /foobar $libdir/liba.la"; then
-  ( $at_traceon; grep /foobar $libdir/liba.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; grep /foobar $libdir/liba.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+at_fn_check_prepare_dynamic "grep /foobar $libdir/liba.la" "runpath-in-lalib.at:61"
+( $at_check_trace; grep /foobar $libdir/liba.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/runpath-in-lalib.at:61"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/runpath-in-lalib.at:61"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/runpath-in-lalib.at:62: grep /foobar \$libdir/libb.la"
-echo runpath-in-lalib.at:62 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "grep /foobar $libdir/libb.la"; then
-  ( $at_traceon; grep /foobar $libdir/libb.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; grep /foobar $libdir/libb.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+at_fn_check_prepare_dynamic "grep /foobar $libdir/libb.la" "runpath-in-lalib.at:62"
+( $at_check_trace; grep /foobar $libdir/libb.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/runpath-in-lalib.at:62"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/runpath-in-lalib.at:62"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 # TODO: check that m gets -R, too.
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
+read at_status <"$at_status_file"
 #AT_STOP_28
 #AT_START_29
 # 29. static.at:68: static linking flags for programs
 at_setup_line='static.at:68'
-at_func_banner 2
+at_fn_banner 2
 at_desc="static linking flags for programs"
-$at_quiet $as_echo_n " 29: $at_desc              "
+at_desc_line=" 29: $at_desc              "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
@@ -7658,33 +6812,23 @@ func_test_exec ()
       echo "# m$st"
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/static.at:177: ./m\$st; lt_status=\$?; if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"./m\$st\" || test -x \"./m\$st\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo static.at:177 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; ./m$st; lt_status=$?; if test $lt_status -eq 0; then :;
+at_fn_check_prepare_notrace 'an embedded newline' "static.at:177"
+( $at_check_trace; ./m$st; lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "./m$st" || test -x "./m$st"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; ./m$st; lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "./m$st" || test -x "./m$st"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/static.at:177"
-
-$at_failed && at_func_log_failure
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/static.at:177"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -7693,33 +6837,23 @@ $at_traceon; }
       if test -f "$bindir/m$st"; then
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/static.at:181: \$bindir/m\$st; lt_status=\$?; if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"\$bindir/m\$st\" || test -x \"\$bindir/m\$st\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo static.at:181 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; $bindir/m$st; lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "$bindir/m$st" || test -x "$bindir/m$st"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $bindir/m$st; lt_status=$?; if test $lt_status -eq 0; then :;
+at_fn_check_prepare_notrace 'an embedded newline' "static.at:181"
+( $at_check_trace; $bindir/m$st; lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "$bindir/m$st" || test -x "$bindir/m$st"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/static.at:181"
-
-$at_failed && at_func_log_failure
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/static.at:181"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -7740,33 +6874,23 @@ func_test_exec_fail ()
       echo "# m$st"
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/static.at:197: ./m\$st || (exit 1); lt_status=\$?; if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"./m\$st || (exit 1)\" || test -x \"./m\$st || (exit 1)\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo static.at:197 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; ./m$st || (exit 1); lt_status=$?; if test $lt_status -eq 0; then :;
+at_fn_check_prepare_notrace 'an embedded newline' "static.at:197"
+( $at_check_trace; ./m$st || (exit 1); lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "./m$st || (exit 1)" || test -x "./m$st || (exit 1)"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; ./m$st || (exit 1); lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "./m$st || (exit 1)" || test -x "./m$st || (exit 1)"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-echo stderr:; cat "$at_stderr"
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 1 $at_status "$at_srcdir/static.at:197"
-
-$at_failed && at_func_log_failure
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+echo stderr:; cat "$at_stderr"
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 1 $at_status "$at_srcdir/static.at:197"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -7775,33 +6899,23 @@ $at_traceon; }
       if test -f "$bindir/m$st"; then
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/static.at:201: \$bindir/m\$st || (exit 1); lt_status=\$?; if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"\$bindir/m\$st || (exit 1)\" || test -x \"\$bindir/m\$st || (exit 1)\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo static.at:201 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; $bindir/m$st || (exit 1); lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "$bindir/m$st || (exit 1)" || test -x "$bindir/m$st || (exit 1)"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $bindir/m$st || (exit 1); lt_status=$?; if test $lt_status -eq 0; then :;
+at_fn_check_prepare_notrace 'an embedded newline' "static.at:201"
+( $at_check_trace; $bindir/m$st || (exit 1); lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "$bindir/m$st || (exit 1)" || test -x "$bindir/m$st || (exit 1)"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-echo stderr:; cat "$at_stderr"
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 1 $at_status "$at_srcdir/static.at:201"
-
-$at_failed && at_func_log_failure
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+echo stderr:; cat "$at_stderr"
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 1 $at_status "$at_srcdir/static.at:201"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -7865,27 +6979,19 @@ for withdep in no yes; do
 
   # global static flags.
   for st in -static -static-libtool-libs $can_link_all_static; do
-    { $at_traceoff
+    { set +x
 $as_echo "$at_srcdir/static.at:262: \$LIBTOOL --mode=link \$CC \$CFLAGS \$LDFLAGS \$st -o m\$st m.\$OBJEXT \\
 	-L\$libdir1 -la1 a2/liba2.la -L\$libdir3 -R\$libdir3 -la3"
-echo static.at:262 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS $st -o m$st m.$OBJEXT \
-	-L$libdir1 -la1 a2/liba2.la -L$libdir3 -R$libdir3 -la3 ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS $st -o m$st m.$OBJEXT \
-	-L$libdir1 -la1 a2/liba2.la -L$libdir3 -R$libdir3 -la3 ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_notrace 'an embedded newline' "static.at:262"
+( $at_check_trace; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS $st -o m$st m.$OBJEXT \
+	-L$libdir1 -la1 a2/liba2.la -L$libdir3 -R$libdir3 -la3
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/static.at:262"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/static.at:262"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
   done
@@ -7893,223 +6999,147 @@ $at_traceon; }
   # per-deplib static/shared flags.
   # also try a bit redundant flags, and shuffled order (for run paths check).
   if $per_deplib; then
-    { $at_traceoff
+    { set +x
 $as_echo "$at_srcdir/static.at:270: \$LIBTOOL --mode=link \$CC \$CFLAGS \$LDFLAGS -o m1 m.\$OBJEXT \\
 	      -L\$libdir1 -Bstatic -la1 -Bdynamic a2/liba2.la -L\$libdir3 -R\$libdir3 -la3"
-echo static.at:270 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o m1 m.$OBJEXT \
-	      -L$libdir1 -Bstatic -la1 -Bdynamic a2/liba2.la -L$libdir3 -R$libdir3 -la3 ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o m1 m.$OBJEXT \
-	      -L$libdir1 -Bstatic -la1 -Bdynamic a2/liba2.la -L$libdir3 -R$libdir3 -la3 ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_notrace 'an embedded newline' "static.at:270"
+( $at_check_trace; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o m1 m.$OBJEXT \
+	      -L$libdir1 -Bstatic -la1 -Bdynamic a2/liba2.la -L$libdir3 -R$libdir3 -la3
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/static.at:270"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/static.at:270"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-    { $at_traceoff
+    { set +x
 $as_echo "$at_srcdir/static.at:273: \$LIBTOOL --mode=link \$CC \$CFLAGS \$LDFLAGS -o m2 m.\$OBJEXT \\
 	      -L\$libdir1 -la1 -Bstatic a2/liba2.la -Bdynamic -L\$libdir3 -R\$libdir3 -la3"
-echo static.at:273 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o m2 m.$OBJEXT \
-	      -L$libdir1 -la1 -Bstatic a2/liba2.la -Bdynamic -L$libdir3 -R$libdir3 -la3 ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o m2 m.$OBJEXT \
-	      -L$libdir1 -la1 -Bstatic a2/liba2.la -Bdynamic -L$libdir3 -R$libdir3 -la3 ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_notrace 'an embedded newline' "static.at:273"
+( $at_check_trace; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o m2 m.$OBJEXT \
+	      -L$libdir1 -la1 -Bstatic a2/liba2.la -Bdynamic -L$libdir3 -R$libdir3 -la3
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/static.at:273"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/static.at:273"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-    { $at_traceoff
+    { set +x
 $as_echo "$at_srcdir/static.at:276: \$LIBTOOL --mode=link \$CC \$CFLAGS \$LDFLAGS -o m3 m.\$OBJEXT \\
 	      -L\$libdir1 -la1 a2/liba2.la -L\$libdir3 -Bstatic -la3 -Bdynamic"
-echo static.at:276 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o m3 m.$OBJEXT \
-	      -L$libdir1 -la1 a2/liba2.la -L$libdir3 -Bstatic -la3 -Bdynamic ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o m3 m.$OBJEXT \
-	      -L$libdir1 -la1 a2/liba2.la -L$libdir3 -Bstatic -la3 -Bdynamic ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_notrace 'an embedded newline' "static.at:276"
+( $at_check_trace; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o m3 m.$OBJEXT \
+	      -L$libdir1 -la1 a2/liba2.la -L$libdir3 -Bstatic -la3 -Bdynamic
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/static.at:276"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/static.at:276"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-    { $at_traceoff
+    { set +x
 $as_echo "$at_srcdir/static.at:279: \$LIBTOOL --mode=link \$CC \$CFLAGS \$LDFLAGS -o m12 m.\$OBJEXT \\
 	      -L\$libdir1 -Bstatic -la1 a2/liba2.la -Bdynamic -L\$libdir3 -R\$libdir3 -la3"
-echo static.at:279 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o m12 m.$OBJEXT \
-	      -L$libdir1 -Bstatic -la1 a2/liba2.la -Bdynamic -L$libdir3 -R$libdir3 -la3 ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o m12 m.$OBJEXT \
-	      -L$libdir1 -Bstatic -la1 a2/liba2.la -Bdynamic -L$libdir3 -R$libdir3 -la3 ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_notrace 'an embedded newline' "static.at:279"
+( $at_check_trace; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o m12 m.$OBJEXT \
+	      -L$libdir1 -Bstatic -la1 a2/liba2.la -Bdynamic -L$libdir3 -R$libdir3 -la3
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/static.at:279"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/static.at:279"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-    { $at_traceoff
+    { set +x
 $as_echo "$at_srcdir/static.at:282: \$LIBTOOL --mode=link \$CC \$CFLAGS \$LDFLAGS -o m13 m.\$OBJEXT \\
 	      -L\$libdir1 -Bstatic -la1 -Bdynamic a2/liba2.la \\
 	      -L\$libdir3 -Bstatic -la3 -Bdynamic"
-echo static.at:282 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o m13 m.$OBJEXT \
-	      -L$libdir1 -Bstatic -la1 -Bdynamic a2/liba2.la \
-	      -L$libdir3 -Bstatic -la3 -Bdynamic ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o m13 m.$OBJEXT \
+at_fn_check_prepare_notrace 'an embedded newline' "static.at:282"
+( $at_check_trace; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o m13 m.$OBJEXT \
 	      -L$libdir1 -Bstatic -la1 -Bdynamic a2/liba2.la \
-	      -L$libdir3 -Bstatic -la3 -Bdynamic ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+	      -L$libdir3 -Bstatic -la3 -Bdynamic
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/static.at:282"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/static.at:282"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-    { $at_traceoff
+    { set +x
 $as_echo "$at_srcdir/static.at:286: \$LIBTOOL --mode=link \$CC \$CFLAGS \$LDFLAGS -o m31 m.\$OBJEXT \\
 	      -L\$libdir3 -Bstatic -la3 -Bdynamic a2/liba2.la \\
 	      -L\$libdir1 -Bstatic -la1 -Bdynamic"
-echo static.at:286 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o m31 m.$OBJEXT \
-	      -L$libdir3 -Bstatic -la3 -Bdynamic a2/liba2.la \
-	      -L$libdir1 -Bstatic -la1 -Bdynamic ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o m31 m.$OBJEXT \
+at_fn_check_prepare_notrace 'an embedded newline' "static.at:286"
+( $at_check_trace; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o m31 m.$OBJEXT \
 	      -L$libdir3 -Bstatic -la3 -Bdynamic a2/liba2.la \
-	      -L$libdir1 -Bstatic -la1 -Bdynamic ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+	      -L$libdir1 -Bstatic -la1 -Bdynamic
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/static.at:286"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/static.at:286"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-    { $at_traceoff
+    { set +x
 $as_echo "$at_srcdir/static.at:290: \$LIBTOOL --mode=link \$CC \$CFLAGS \$LDFLAGS -o m23 m.\$OBJEXT \\
 	      -L\$libdir1 -la1 -Bstatic a2/liba2.la -Bdynamic \\
 	      -L\$libdir3 -Bstatic -la3 -Bdynamic"
-echo static.at:290 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o m23 m.$OBJEXT \
+at_fn_check_prepare_notrace 'an embedded newline' "static.at:290"
+( $at_check_trace; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o m23 m.$OBJEXT \
 	      -L$libdir1 -la1 -Bstatic a2/liba2.la -Bdynamic \
-	      -L$libdir3 -Bstatic -la3 -Bdynamic ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o m23 m.$OBJEXT \
-	      -L$libdir1 -la1 -Bstatic a2/liba2.la -Bdynamic \
-	      -L$libdir3 -Bstatic -la3 -Bdynamic ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+	      -L$libdir3 -Bstatic -la3 -Bdynamic
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/static.at:290"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/static.at:290"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-    { $at_traceoff
+    { set +x
 $as_echo "$at_srcdir/static.at:294: \$LIBTOOL --mode=link \$CC \$CFLAGS \$LDFLAGS -o m123 m.\$OBJEXT \\
 	      -L\$libdir1 -Bstatic -la1 a2/liba2.la -L\$libdir3 -la3 -Bdynamic"
-echo static.at:294 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o m123 m.$OBJEXT \
-	      -L$libdir1 -Bstatic -la1 a2/liba2.la -L$libdir3 -la3 -Bdynamic ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o m123 m.$OBJEXT \
-	      -L$libdir1 -Bstatic -la1 a2/liba2.la -L$libdir3 -la3 -Bdynamic ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_notrace 'an embedded newline' "static.at:294"
+( $at_check_trace; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o m123 m.$OBJEXT \
+	      -L$libdir1 -Bstatic -la1 a2/liba2.la -L$libdir3 -la3 -Bdynamic
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/static.at:294"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/static.at:294"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-    { $at_traceoff
+    { set +x
 $as_echo "$at_srcdir/static.at:297: \$LIBTOOL --mode=link \$CC \$CFLAGS \$LDFLAGS -o m123a m.\$OBJEXT \\
 	      -L\$libdir1 -Bstatic -la1 -Bdynamic -Bstatic a2/liba2.la -Bdynamic \\
 	      -Bstatic -L\$libdir3 -la3 -Bdynamic"
-echo static.at:297 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o m123a m.$OBJEXT \
-	      -L$libdir1 -Bstatic -la1 -Bdynamic -Bstatic a2/liba2.la -Bdynamic \
-	      -Bstatic -L$libdir3 -la3 -Bdynamic ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o m123a m.$OBJEXT \
+at_fn_check_prepare_notrace 'an embedded newline' "static.at:297"
+( $at_check_trace; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o m123a m.$OBJEXT \
 	      -L$libdir1 -Bstatic -la1 -Bdynamic -Bstatic a2/liba2.la -Bdynamic \
-	      -Bstatic -L$libdir3 -la3 -Bdynamic ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+	      -Bstatic -L$libdir3 -la3 -Bdynamic
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/static.at:297"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/static.at:297"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
                   fi
@@ -8118,45 +7148,31 @@ $at_traceon; }
   # We can't install any program that links dynamically against liba2.
   for st in -static -static-libtool-libs $can_link_all_static `$per_deplib && echo 2 12 23 123 123a`; do
     echo "# m$st"
-    { $at_traceoff
+    { set +x
 $as_echo "$at_srcdir/static.at:311: \$LIBTOOL --mode=install cp m\$st \$bindir/m\$st"
-echo static.at:311 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=install cp m$st $bindir/m$st"; then
-  ( $at_traceon; $LIBTOOL --mode=install cp m$st $bindir/m$st ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=install cp m$st $bindir/m$st ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=install cp m$st $bindir/m$st" "static.at:311"
+( $at_check_trace; $LIBTOOL --mode=install cp m$st $bindir/m$st
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; tee stderr <"$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/static.at:311"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/static.at:311"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
     if $have_static; then
-      { $at_traceoff
+      { set +x
 $as_echo "$at_srcdir/static.at:313: \$EGREP 'relinking|has not been installed' stderr"
-echo static.at:313 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$EGREP 'relinking|has not been installed' stderr"; then
-  ( $at_traceon; $EGREP 'relinking|has not been installed' stderr ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $EGREP 'relinking|has not been installed' stderr ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 1 $at_status "$at_srcdir/static.at:313"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_dynamic "$EGREP 'relinking|has not been installed' stderr" "static.at:313"
+( $at_check_trace; $EGREP 'relinking|has not been installed' stderr
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 1 $at_status "$at_srcdir/static.at:313"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
     fi
@@ -8198,17 +7214,18 @@ $at_traceon; }
   cd ..
 done
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
+read at_status <"$at_status_file"
 #AT_STOP_29
 #AT_START_30
 # 30. static.at:357: ccache -all-static
 at_setup_line='static.at:357'
-at_func_banner 2
+at_fn_banner 2
 at_desc="ccache -all-static"
-$at_quiet $as_echo_n " 30: $at_desc                             "
+at_desc_line=" 30: $at_desc                             "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
@@ -8232,58 +7249,45 @@ int main(void) { return 0; }
 _ATEOF
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/static.at:373: \$CC \$CPPFLAGS \$CFLAGS -c a.c"
-echo static.at:373 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$CC $CPPFLAGS $CFLAGS -c a.c"; then
-  ( $at_traceon; $CC $CPPFLAGS $CFLAGS -c a.c ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $CC $CPPFLAGS $CFLAGS -c a.c ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+at_fn_check_prepare_dynamic "$CC $CPPFLAGS $CFLAGS -c a.c" "static.at:373"
+( $at_check_trace; $CC $CPPFLAGS $CFLAGS -c a.c
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/static.at:373"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/static.at:373"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/static.at:374: \$LIBTOOL --mode=link --tag=CC ./ccache \$CC \$CFLAGS \$LDFLAGS -all-static a.\$OBJEXT -o a"
-echo static.at:374 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=link --tag=CC ./ccache $CC $CFLAGS $LDFLAGS -all-static a.$OBJEXT -o a"; then
-  ( $at_traceon; $LIBTOOL --mode=link --tag=CC ./ccache $CC $CFLAGS $LDFLAGS -all-static a.$OBJEXT -o a ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link --tag=CC ./ccache $CC $CFLAGS $LDFLAGS -all-static a.$OBJEXT -o a ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=link --tag=CC ./ccache $CC $CFLAGS $LDFLAGS -all-static a.$OBJEXT -o a" "static.at:374"
+( $at_check_trace; $LIBTOOL --mode=link --tag=CC ./ccache $CC $CFLAGS $LDFLAGS -all-static a.$OBJEXT -o a
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/static.at:374"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/static.at:374"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
+read at_status <"$at_status_file"
 #AT_STOP_30
 #AT_START_31
 # 31. export.at:25: Export test
 at_setup_line='export.at:25'
-at_func_banner 2
+at_fn_banner 2
 at_desc="Export test"
-$at_quiet $as_echo_n " 31: $at_desc                                    "
+at_desc_line=" 31: $at_desc                                    "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
@@ -8292,56 +7296,38 @@ echo "#                             -*-
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/export.at:28: \$LIBTOOL --features | grep 'disable shared libraries' && (exit 77)"
-echo export.at:28 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --features | grep 'disable shared libraries' && (exit 77)"; then
-  ( $at_traceon; $LIBTOOL --features | grep 'disable shared libraries' && (exit 77) ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --features | grep 'disable shared libraries' && (exit 77) ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+at_fn_check_prepare_dynamic "$LIBTOOL --features | grep 'disable shared libraries' && (exit 77)" "export.at:28"
+( $at_check_trace; $LIBTOOL --features | grep 'disable shared libraries' && (exit 77)
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 echo stdout:; cat "$at_stdout"
-at_func_check_status 1 $at_status "$at_srcdir/export.at:28"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 1 $at_status "$at_srcdir/export.at:28"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/export.at:30: eval \`\$LIBTOOL --config | sed -n '/^archive_expsym_cmds=/,/^\$/p'\`
 	  test -n \"\$archive_expsym_cmds\" || echo false >can-hide
 	  case \$archive_expsym_cmds in
 	  *-retain-symbols-file*) echo false >can-hide ;;
 	  esac"
-echo export.at:30 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains a `...` command substitution)'
-   false; }; then
-  ( $at_traceon; eval `$LIBTOOL --config | sed -n '/^archive_expsym_cmds=/,/^$/p'`
-	  test -n "$archive_expsym_cmds" || echo false >can-hide
-	  case $archive_expsym_cmds in
-	  *-retain-symbols-file*) echo false >can-hide ;;
-	  esac ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; eval `$LIBTOOL --config | sed -n '/^archive_expsym_cmds=/,/^$/p'`
+at_fn_check_prepare_notrace 'a `...` command substitution' "export.at:30"
+( $at_check_trace; eval `$LIBTOOL --config | sed -n '/^archive_expsym_cmds=/,/^$/p'`
 	  test -n "$archive_expsym_cmds" || echo false >can-hide
 	  case $archive_expsym_cmds in
 	  *-retain-symbols-file*) echo false >can-hide ;;
-	  esac ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/export.at:30"
-
-$at_failed && at_func_log_failure
+	  esac
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/export.at:30"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 can_hide=:
@@ -8461,64 +7447,43 @@ int main (void)
 _ATEOF
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/export.at:148: \$LIBTOOL --mode=compile \$CC \$CPPFLAGS \$CFLAGS -c a.c"
-echo export.at:148 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c a.c"; then
-  ( $at_traceon; $LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c a.c ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c a.c ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c a.c" "export.at:148"
+( $at_check_trace; $LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c a.c
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/export.at:148"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/export.at:148"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/export.at:149: \$CC \$CPPFLAGS -DLIBA_DLL_IMPORT \$CFLAGS -c main.c"
-echo export.at:149 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$CC $CPPFLAGS -DLIBA_DLL_IMPORT $CFLAGS -c main.c"; then
-  ( $at_traceon; $CC $CPPFLAGS -DLIBA_DLL_IMPORT $CFLAGS -c main.c ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $CC $CPPFLAGS -DLIBA_DLL_IMPORT $CFLAGS -c main.c ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$CC $CPPFLAGS -DLIBA_DLL_IMPORT $CFLAGS -c main.c" "export.at:149"
+( $at_check_trace; $CC $CPPFLAGS -DLIBA_DLL_IMPORT $CFLAGS -c main.c
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/export.at:149"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/export.at:149"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/export.at:150: \$CC \$CPPFLAGS \$CFLAGS -c broken.c"
-echo export.at:150 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$CC $CPPFLAGS $CFLAGS -c broken.c"; then
-  ( $at_traceon; $CC $CPPFLAGS $CFLAGS -c broken.c ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $CC $CPPFLAGS $CFLAGS -c broken.c ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$CC $CPPFLAGS $CFLAGS -c broken.c" "export.at:150"
+( $at_check_trace; $CC $CPPFLAGS $CFLAGS -c broken.c
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/export.at:150"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/export.at:150"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -8526,263 +7491,184 @@ for exportsyms in '' '-export-symbols-re
 do
   # case 1: shared library built from object.
   echo "eval '$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o liba.la a.lo \\
-	       -rpath $libdir' $exportsyms"; { $at_traceoff
+	       -rpath $libdir' $exportsyms"; { set +x
 $as_echo "$at_srcdir/export.at:155: eval '\$LIBTOOL --mode=link \$CC \$CFLAGS \$LDFLAGS -o liba.la a.lo \\
 	       -rpath \$libdir' \$exportsyms"
-echo export.at:155 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; eval '$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o liba.la a.lo \
-	       -rpath $libdir' $exportsyms ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; eval '$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o liba.la a.lo \
-	       -rpath $libdir' $exportsyms ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_notrace 'an embedded newline' "export.at:155"
+( $at_check_trace; eval '$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o liba.la a.lo \
+	       -rpath $libdir' $exportsyms
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/export.at:155"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/export.at:155"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-  { $at_traceoff
+  { set +x
 $as_echo "$at_srcdir/export.at:157: \$LIBTOOL --mode=link \$CC \$CFLAGS \$LDFLAGS -o main main.\$OBJEXT liba.la"
-echo export.at:157 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT liba.la"; then
-  ( $at_traceon; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT liba.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT liba.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT liba.la" "export.at:157"
+( $at_check_trace; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT liba.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/export.at:157"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/export.at:157"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/export.at:159: ./main; lt_status=\$?; if test \$lt_status -eq 0; then :;
-	   elif test \"X\$host\" != \"X\$build\" && \\
-	        { test -x \"./main\" || test -x \"./main\"\$EXEEXT; }
-	   then (exit 77); else (exit \$lt_status); fi"
-echo export.at:159 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; ./main; lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "./main" || test -x "./main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; ./main; lt_status=$?; if test $lt_status -eq 0; then :;
+	   elif test \"X\$host\" != \"X\$build\" && \\
+	        { test -x \"./main\" || test -x \"./main\"\$EXEEXT; }
+	   then (exit 77); else (exit \$lt_status); fi"
+at_fn_check_prepare_notrace 'an embedded newline' "export.at:159"
+( $at_check_trace; ./main; lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "./main" || test -x "./main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/export.at:159"
-
-$at_failed && at_func_log_failure
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/export.at:159"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
   if test -n "$exportsyms" && $can_hide; then
-    { $at_traceoff
+    { set +x
 $as_echo "$at_srcdir/export.at:161: if \$LIBTOOL --mode=link \$CC \$CFLAGS \$LDFLAGS -o broken broken.\$OBJEXT liba.la
 	      then (exit 1); else :; fi"
-echo export.at:161 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; if $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o broken broken.$OBJEXT liba.la
-	      then (exit 1); else :; fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; if $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o broken broken.$OBJEXT liba.la
-	      then (exit 1); else :; fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_notrace 'an embedded newline' "export.at:161"
+( $at_check_trace; if $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o broken broken.$OBJEXT liba.la
+	      then (exit 1); else :; fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/export.at:161"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/export.at:161"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
   fi
 
   # case 2: shared library built from convenience archive.
-  { $at_traceoff
+  { set +x
 $as_echo "$at_srcdir/export.at:166: \$LIBTOOL --mode=link \$CC \$CFLAGS \$LDFLAGS -o libconv.la a.lo"
-echo export.at:166 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o libconv.la a.lo"; then
-  ( $at_traceon; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o libconv.la a.lo ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o libconv.la a.lo ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o libconv.la a.lo" "export.at:166"
+( $at_check_trace; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o libconv.la a.lo
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/export.at:166"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/export.at:166"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
   echo "eval '$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o liba.la libconv.la \\
-	       -rpath $libdir' $exportsyms"; { $at_traceoff
+	       -rpath $libdir' $exportsyms"; { set +x
 $as_echo "$at_srcdir/export.at:168: eval '\$LIBTOOL --mode=link \$CC \$CFLAGS \$LDFLAGS -o liba.la libconv.la \\
 	       -rpath \$libdir' \$exportsyms"
-echo export.at:168 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; eval '$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o liba.la libconv.la \
-	       -rpath $libdir' $exportsyms ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; eval '$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o liba.la libconv.la \
-	       -rpath $libdir' $exportsyms ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_notrace 'an embedded newline' "export.at:168"
+( $at_check_trace; eval '$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o liba.la libconv.la \
+	       -rpath $libdir' $exportsyms
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/export.at:168"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/export.at:168"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-  { $at_traceoff
+  { set +x
 $as_echo "$at_srcdir/export.at:170: \$LIBTOOL --mode=link \$CC \$CFLAGS \$LDFLAGS -o main main.\$OBJEXT liba.la"
-echo export.at:170 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT liba.la"; then
-  ( $at_traceon; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT liba.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT liba.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT liba.la" "export.at:170"
+( $at_check_trace; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT liba.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/export.at:170"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/export.at:170"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/export.at:172: ./main; lt_status=\$?; if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"./main\" || test -x \"./main\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo export.at:172 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; ./main; lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "./main" || test -x "./main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; ./main; lt_status=$?; if test $lt_status -eq 0; then :;
+at_fn_check_prepare_notrace 'an embedded newline' "export.at:172"
+( $at_check_trace; ./main; lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "./main" || test -x "./main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/export.at:172"
-
-$at_failed && at_func_log_failure
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/export.at:172"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
   if test -n "$exportsyms" && $can_hide; then
-    { $at_traceoff
+    { set +x
 $as_echo "$at_srcdir/export.at:174: if \$LIBTOOL --mode=link \$CC \$CFLAGS \$LDFLAGS -o broken broken.\$OBJEXT liba.la
 	      then (exit 1); else :; fi"
-echo export.at:174 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; if $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o broken broken.$OBJEXT liba.la
-	      then (exit 1); else :; fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; if $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o broken broken.$OBJEXT liba.la
-	      then (exit 1); else :; fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_notrace 'an embedded newline' "export.at:174"
+( $at_check_trace; if $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o broken broken.$OBJEXT liba.la
+	      then (exit 1); else :; fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/export.at:174"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/export.at:174"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
   fi
 done
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/export.at:179: \$can_hide || (exit 77)"
-echo export.at:179 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$can_hide || (exit 77)"; then
-  ( $at_traceon; $can_hide || (exit 77) ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $can_hide || (exit 77) ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/export.at:179"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_dynamic "$can_hide || (exit 77)" "export.at:179"
+( $at_check_trace; $can_hide || (exit 77)
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/export.at:179"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
+read at_status <"$at_status_file"
 #AT_STOP_31
 #AT_START_32
 # 32. search-path.at:25: sys_lib_search_path
 at_setup_line='search-path.at:25'
-at_func_banner 2
+at_fn_banner 2
 at_desc="sys_lib_search_path"
-$at_quiet $as_echo_n " 32: $at_desc                            "
+at_desc_line=" 32: $at_desc                            "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
@@ -8811,41 +7697,35 @@ eval sys_lib_search_path=\"$sys_lib_sear
 for path in $sys_lib_search_path; do
   if $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT -L$path -lz
   then
-    { $at_traceoff
+    { set +x
 $as_echo "$at_srcdir/search-path.at:47: \$LIBTOOL --mode=link \$CC \$CFLAGS \$LDFLAGS -o main main.\$OBJEXT -lz"
-echo search-path.at:47 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT -lz"; then
-  ( $at_traceon; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT -lz ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT -lz ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT -lz" "search-path.at:47"
+( $at_check_trace; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT -lz
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/search-path.at:47"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/search-path.at:47"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
     break
   fi
 done
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
+read at_status <"$at_status_file"
 #AT_STOP_32
 #AT_START_33
 # 33. indirect_deps.at:25: indirect convenience
 at_setup_line='indirect_deps.at:25'
-at_func_banner 2
+at_fn_banner 2
 at_desc="indirect convenience"
-$at_quiet $as_echo_n " 33: $at_desc                           "
+at_desc_line=" 33: $at_desc                           "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
@@ -8894,123 +7774,90 @@ $LIBTOOL --mode=link --tag=CC $CC $CFLAG
 $LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -o libd.la libconv.la -rpath /nowhere
 
 for st in '' -static; do
-  { $at_traceoff
+  { set +x
 $as_echo "$at_srcdir/indirect_deps.at:60: \$LIBTOOL --mode=link --tag=CC \$CC \$CFLAGS \$LDFLAGS \$st -o m1 m.\$OBJEXT libd.la"
-echo indirect_deps.at:60 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS $st -o m1 m.$OBJEXT libd.la"; then
-  ( $at_traceon; $LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS $st -o m1 m.$OBJEXT libd.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS $st -o m1 m.$OBJEXT libd.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS $st -o m1 m.$OBJEXT libd.la" "indirect_deps.at:60"
+( $at_check_trace; $LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS $st -o m1 m.$OBJEXT libd.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/indirect_deps.at:60"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/indirect_deps.at:60"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-  { $at_traceoff
+  { set +x
 $as_echo "$at_srcdir/indirect_deps.at:62: \$LIBTOOL --mode=link --tag=CC \$CC \$CFLAGS \$LDFLAGS \$st -o m2 m.\$OBJEXT libconv.la"
-echo indirect_deps.at:62 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS $st -o m2 m.$OBJEXT libconv.la"; then
-  ( $at_traceon; $LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS $st -o m2 m.$OBJEXT libconv.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS $st -o m2 m.$OBJEXT libconv.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS $st -o m2 m.$OBJEXT libconv.la" "indirect_deps.at:62"
+( $at_check_trace; $LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS $st -o m2 m.$OBJEXT libconv.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/indirect_deps.at:62"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/indirect_deps.at:62"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/indirect_deps.at:64: ./m1; lt_status=\$?; if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"./m1\" || test -x \"./m1\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo indirect_deps.at:64 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; ./m1; lt_status=$?; if test $lt_status -eq 0; then :;
+at_fn_check_prepare_notrace 'an embedded newline' "indirect_deps.at:64"
+( $at_check_trace; ./m1; lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "./m1" || test -x "./m1"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; ./m1; lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "./m1" || test -x "./m1"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/indirect_deps.at:64"
-
-$at_failed && at_func_log_failure
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/indirect_deps.at:64"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/indirect_deps.at:65: ./m2; lt_status=\$?; if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"./m2\" || test -x \"./m2\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo indirect_deps.at:65 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; ./m2; lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "./m2" || test -x "./m2"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; ./m2; lt_status=$?; if test $lt_status -eq 0; then :;
+at_fn_check_prepare_notrace 'an embedded newline' "indirect_deps.at:65"
+( $at_check_trace; ./m2; lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "./m2" || test -x "./m2"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/indirect_deps.at:65"
-
-$at_failed && at_func_log_failure
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/indirect_deps.at:65"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 done
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
+read at_status <"$at_status_file"
 #AT_STOP_33
 #AT_START_34
 # 34. indirect_deps.at:71: indirect uninstalled
 at_setup_line='indirect_deps.at:71'
-at_func_banner 2
+at_fn_banner 2
 at_desc="indirect uninstalled"
-$at_quiet $as_echo_n " 34: $at_desc                           "
+at_desc_line=" 34: $at_desc                           "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
@@ -9064,123 +7911,90 @@ for st in '' -static; do
   $LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -o b/libb.la b.lo a/liba.la -rpath /nowhereb
   $LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -o c/libcee.la c.lo b/libb.la -rpath /nowherec
 
-  { $at_traceoff
+  { set +x
 $as_echo "$at_srcdir/indirect_deps.at:109: \$LIBTOOL --mode=link --tag=CC \$CC \$CFLAGS \$LDFLAGS \$st -o m1 m1.\$OBJEXT b/libb.la"
-echo indirect_deps.at:109 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS $st -o m1 m1.$OBJEXT b/libb.la"; then
-  ( $at_traceon; $LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS $st -o m1 m1.$OBJEXT b/libb.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS $st -o m1 m1.$OBJEXT b/libb.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS $st -o m1 m1.$OBJEXT b/libb.la" "indirect_deps.at:109"
+( $at_check_trace; $LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS $st -o m1 m1.$OBJEXT b/libb.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/indirect_deps.at:109"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/indirect_deps.at:109"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-  { $at_traceoff
+  { set +x
 $as_echo "$at_srcdir/indirect_deps.at:111: \$LIBTOOL --mode=link --tag=CC \$CC \$CFLAGS \$LDFLAGS \$st -o m2 m2.\$OBJEXT c/libcee.la"
-echo indirect_deps.at:111 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS $st -o m2 m2.$OBJEXT c/libcee.la"; then
-  ( $at_traceon; $LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS $st -o m2 m2.$OBJEXT c/libcee.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS $st -o m2 m2.$OBJEXT c/libcee.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS $st -o m2 m2.$OBJEXT c/libcee.la" "indirect_deps.at:111"
+( $at_check_trace; $LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS $st -o m2 m2.$OBJEXT c/libcee.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/indirect_deps.at:111"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/indirect_deps.at:111"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/indirect_deps.at:113: ./m1; lt_status=\$?; if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"./m1\" || test -x \"./m1\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo indirect_deps.at:113 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; ./m1; lt_status=$?; if test $lt_status -eq 0; then :;
+at_fn_check_prepare_notrace 'an embedded newline' "indirect_deps.at:113"
+( $at_check_trace; ./m1; lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "./m1" || test -x "./m1"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; ./m1; lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "./m1" || test -x "./m1"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/indirect_deps.at:113"
-
-$at_failed && at_func_log_failure
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/indirect_deps.at:113"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/indirect_deps.at:114: ./m2; lt_status=\$?; if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"./m2\" || test -x \"./m2\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo indirect_deps.at:114 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; ./m2; lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "./m2" || test -x "./m2"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; ./m2; lt_status=$?; if test $lt_status -eq 0; then :;
+at_fn_check_prepare_notrace 'an embedded newline' "indirect_deps.at:114"
+( $at_check_trace; ./m2; lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "./m2" || test -x "./m2"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/indirect_deps.at:114"
-
-$at_failed && at_func_log_failure
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/indirect_deps.at:114"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 done
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
+read at_status <"$at_status_file"
 #AT_STOP_34
 #AT_START_35
 # 35. archive-in-archive.at:26: static library contains static library
 at_setup_line='archive-in-archive.at:26'
-at_func_banner 2
+at_fn_banner 2
 at_desc="static library contains static library"
-$at_quiet $as_echo_n " 35: $at_desc         "
+at_desc_line=" 35: $at_desc         "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
       case "$archive_contents" in *"libfoo.a"*) : ;; esac && at_xfail=yes
 echo "#                             -*- compilation -*-" >> "$at_group_log"
@@ -9208,81 +8022,61 @@ $LIBTOOL --mode=compile --tag=CC $CC $CP
 $LIBTOOL --mode=link --tag=CC --tag=disable-shared $CC $CFLAGS $LDFLAGS \
 -o libfoo.la foo.lo -version-info 1:0:0 -rpath $thisdir
 $LIBTOOL --mode=install cp libfoo.la $thisdir
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/archive-in-archive.at:45: \$LIBTOOL --mode=link --tag=CC --tag=disable-shared \$CC \$CFLAGS \$LDFLAGS \\
 	 -o libbar.la bar.lo ./libfoo.a -version-info 1:0:0 -rpath \$thisdir"
-echo archive-in-archive.at:45 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; $LIBTOOL --mode=link --tag=CC --tag=disable-shared $CC $CFLAGS $LDFLAGS \
-	 -o libbar.la bar.lo ./libfoo.a -version-info 1:0:0 -rpath $thisdir ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link --tag=CC --tag=disable-shared $CC $CFLAGS $LDFLAGS \
-	 -o libbar.la bar.lo ./libfoo.a -version-info 1:0:0 -rpath $thisdir ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_notrace 'an embedded newline' "archive-in-archive.at:45"
+( $at_check_trace; $LIBTOOL --mode=link --tag=CC --tag=disable-shared $CC $CFLAGS $LDFLAGS \
+	 -o libbar.la bar.lo ./libfoo.a -version-info 1:0:0 -rpath $thisdir
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/archive-in-archive.at:45"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/archive-in-archive.at:45"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/archive-in-archive.at:48: \$LIBTOOL --mode=install cp libbar.la \$thisdir"
-echo archive-in-archive.at:48 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=install cp libbar.la $thisdir"; then
-  ( $at_traceon; $LIBTOOL --mode=install cp libbar.la $thisdir ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=install cp libbar.la $thisdir ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=install cp libbar.la $thisdir" "archive-in-archive.at:48"
+( $at_check_trace; $LIBTOOL --mode=install cp libbar.la $thisdir
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/archive-in-archive.at:48"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/archive-in-archive.at:48"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/archive-in-archive.at:49: ar -t libbar.a | grep libfoo.a"
-echo archive-in-archive.at:49 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; ar -t libbar.a | grep libfoo.a ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; ar -t libbar.a | grep libfoo.a ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_trace "archive-in-archive.at:49"
+( $at_check_trace; ar -t libbar.a | grep libfoo.a
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 1 $at_status "$at_srcdir/archive-in-archive.at:49"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 1 $at_status "$at_srcdir/archive-in-archive.at:49"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 archive_contents=`ar -t libbar.a`
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
+read at_status <"$at_status_file"
 #AT_STOP_35
 #AT_START_36
 # 36. execute-mode.at:25: execute mode
 at_setup_line='execute-mode.at:25'
-at_func_banner 2
+at_fn_banner 2
 at_desc="execute mode"
-$at_quiet $as_echo_n " 36: $at_desc                                   "
+at_desc_line=" 36: $at_desc                                   "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
@@ -9351,158 +8145,109 @@ mkdir sub
 cp foo sub/foo
 chmod +x foo sub/foo lt-wrapper lt-real
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/execute-mode.at:84: \$LIBTOOL --mode=execute ./foo"
-echo execute-mode.at:84 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=execute ./foo"; then
-  ( $at_traceon; $LIBTOOL --mode=execute ./foo ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=execute ./foo ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/execute-mode.at:84"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=execute ./foo" "execute-mode.at:84"
+( $at_check_trace; $LIBTOOL --mode=execute ./foo
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/execute-mode.at:84"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/execute-mode.at:85: \$LIBTOOL --mode=execute sub/foo"
-echo execute-mode.at:85 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=execute sub/foo"; then
-  ( $at_traceon; $LIBTOOL --mode=execute sub/foo ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=execute sub/foo ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/execute-mode.at:85"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=execute sub/foo" "execute-mode.at:85"
+( $at_check_trace; $LIBTOOL --mode=execute sub/foo
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/execute-mode.at:85"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/execute-mode.at:86: \$LIBTOOL --mode=execute ./foo foo"
-echo execute-mode.at:86 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=execute ./foo foo"; then
-  ( $at_traceon; $LIBTOOL --mode=execute ./foo foo ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=execute ./foo foo ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=execute ./foo foo" "execute-mode.at:86"
+( $at_check_trace; $LIBTOOL --mode=execute ./foo foo
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 echo >>"$at_stdout"; $as_echo "foo
 " | \
   $at_diff - "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/execute-mode.at:86"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/execute-mode.at:86"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/execute-mode.at:88: \$LIBTOOL --mode=execute ./lt-wrapper foo </dev/null"
-echo execute-mode.at:88 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=execute ./lt-wrapper foo </dev/null"; then
-  ( $at_traceon; $LIBTOOL --mode=execute ./lt-wrapper foo </dev/null ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=execute ./lt-wrapper foo </dev/null ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=execute ./lt-wrapper foo </dev/null" "execute-mode.at:88"
+( $at_check_trace; $LIBTOOL --mode=execute ./lt-wrapper foo </dev/null
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 echo >>"$at_stdout"; $as_echo "foo
 " | \
   $at_diff - "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/execute-mode.at:88"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/execute-mode.at:88"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/execute-mode.at:90: cd sub && \$LIBTOOL --mode=execute ./foo ../foo"
-echo execute-mode.at:90 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "cd sub && $LIBTOOL --mode=execute ./foo ../foo"; then
-  ( $at_traceon; cd sub && $LIBTOOL --mode=execute ./foo ../foo ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; cd sub && $LIBTOOL --mode=execute ./foo ../foo ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+at_fn_check_prepare_dynamic "cd sub && $LIBTOOL --mode=execute ./foo ../foo" "execute-mode.at:90"
+( $at_check_trace; cd sub && $LIBTOOL --mode=execute ./foo ../foo
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 echo >>"$at_stdout"; $as_echo "../foo
 " | \
   $at_diff - "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/execute-mode.at:90"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/execute-mode.at:90"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 # suppose that ./foo is gdb, and lt-wrapper is the wrapper script.
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/execute-mode.at:93: \$LIBTOOL --mode=execute ./foo lt-wrapper bar baz </dev/null"
-echo execute-mode.at:93 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=execute ./foo lt-wrapper bar baz </dev/null"; then
-  ( $at_traceon; $LIBTOOL --mode=execute ./foo lt-wrapper bar baz </dev/null ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=execute ./foo lt-wrapper bar baz </dev/null ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=execute ./foo lt-wrapper bar baz </dev/null" "execute-mode.at:93"
+( $at_check_trace; $LIBTOOL --mode=execute ./foo lt-wrapper bar baz </dev/null
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 echo >>"$at_stdout"; $as_echo "./lt-real bar baz
 " | \
   $at_diff - "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/execute-mode.at:93"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/execute-mode.at:93"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 # check that stdin works even with -dlopen.
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/execute-mode.at:98: echo bar | \$LIBTOOL --mode=execute -dlopen libfakelib.la ./lt-wrapper foo"
-echo execute-mode.at:98 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "echo bar | $LIBTOOL --mode=execute -dlopen libfakelib.la ./lt-wrapper foo"; then
-  ( $at_traceon; echo bar | $LIBTOOL --mode=execute -dlopen libfakelib.la ./lt-wrapper foo ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; echo bar | $LIBTOOL --mode=execute -dlopen libfakelib.la ./lt-wrapper foo ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+at_fn_check_prepare_dynamic "echo bar | $LIBTOOL --mode=execute -dlopen libfakelib.la ./lt-wrapper foo" "execute-mode.at:98"
+( $at_check_trace; echo bar | $LIBTOOL --mode=execute -dlopen libfakelib.la ./lt-wrapper foo
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 echo >>"$at_stdout"; $as_echo "foo
 bar
 " | \
   $at_diff - "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/execute-mode.at:98"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/execute-mode.at:98"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -9510,107 +8255,80 @@ $at_traceon; }
 # The error message and code are likely to be 126,
 # "No such file or directory" but system-dependent.
 mv -f lt-real lt-backup
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/execute-mode.at:107: \$LIBTOOL --mode=execute ./lt-wrapper foo </dev/null || exit 1"
-echo execute-mode.at:107 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=execute ./lt-wrapper foo </dev/null || exit 1"; then
-  ( $at_traceon; $LIBTOOL --mode=execute ./lt-wrapper foo </dev/null || exit 1 ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=execute ./lt-wrapper foo </dev/null || exit 1 ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=execute ./lt-wrapper foo </dev/null || exit 1" "execute-mode.at:107"
+( $at_check_trace; $LIBTOOL --mode=execute ./lt-wrapper foo </dev/null || exit 1
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 1 $at_status "$at_srcdir/execute-mode.at:107"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 1 $at_status "$at_srcdir/execute-mode.at:107"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 mv -f lt-backup lt-real
 
 # Now use arguments that require decent quoting.
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/execute-mode.at:112: \$LIBTOOL --mode=execute ./foo \"arg  with special chars: \\\$!&*\\\`'()\""
-echo execute-mode.at:112 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains a `...` command substitution)'
-   false; }; then
-  ( $at_traceon; $LIBTOOL --mode=execute ./foo "arg  with special chars: \$!&*\`'()" ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=execute ./foo "arg  with special chars: \$!&*\`'()" ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+at_fn_check_prepare_notrace 'a `...` command substitution' "execute-mode.at:112"
+( $at_check_trace; $LIBTOOL --mode=execute ./foo "arg  with special chars: \$!&*\`'()"
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 echo >>"$at_stdout"; $as_echo "arg  with special chars: \$!&*\`'()
 " | \
   $at_diff - "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/execute-mode.at:112"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/execute-mode.at:112"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/execute-mode.at:115: \$LIBTOOL --mode=execute ./lt-wrapper \"arg  with special chars: \\\$!&*\\\`'()\" </dev/null"
-echo execute-mode.at:115 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains a `...` command substitution)'
-   false; }; then
-  ( $at_traceon; $LIBTOOL --mode=execute ./lt-wrapper "arg  with special chars: \$!&*\`'()" </dev/null ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=execute ./lt-wrapper "arg  with special chars: \$!&*\`'()" </dev/null ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+at_fn_check_prepare_notrace 'a `...` command substitution' "execute-mode.at:115"
+( $at_check_trace; $LIBTOOL --mode=execute ./lt-wrapper "arg  with special chars: \$!&*\`'()" </dev/null
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 echo >>"$at_stdout"; $as_echo "arg  with special chars: \$!&*\`'()
 " | \
   $at_diff - "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/execute-mode.at:115"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/execute-mode.at:115"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/execute-mode.at:118: \$LIBTOOL --mode=execute ./foo lt-wrapper \"arg  with special chars: \\\$!&*\\\`'()\""
-echo execute-mode.at:118 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains a `...` command substitution)'
-   false; }; then
-  ( $at_traceon; $LIBTOOL --mode=execute ./foo lt-wrapper "arg  with special chars: \$!&*\`'()" ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=execute ./foo lt-wrapper "arg  with special chars: \$!&*\`'()" ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+at_fn_check_prepare_notrace 'a `...` command substitution' "execute-mode.at:118"
+( $at_check_trace; $LIBTOOL --mode=execute ./foo lt-wrapper "arg  with special chars: \$!&*\`'()"
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 echo >>"$at_stdout"; $as_echo "./lt-real arg  with special chars: \$!&*\`'()
 " | \
   $at_diff - "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/execute-mode.at:118"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/execute-mode.at:118"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
+read at_status <"$at_status_file"
 #AT_STOP_36
 #AT_START_37
 # 37. localization.at:25: localized compiler messages
 at_setup_line='localization.at:25'
-at_func_banner 2
+at_fn_banner 2
 at_desc="localized compiler messages"
-$at_quiet $as_echo_n " 37: $at_desc                    "
+at_desc_line=" 37: $at_desc                    "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
@@ -9635,165 +8353,119 @@ _ATEOF
 
 
 # First see if setting a locale is accepted at all.
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/localization.at:42: \$CC \$CPPFLAGS \$CFLAGS -c b.c || exit 77"
-echo localization.at:42 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$CC $CPPFLAGS $CFLAGS -c b.c || exit 77"; then
-  ( $at_traceon; $CC $CPPFLAGS $CFLAGS -c b.c || exit 77 ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $CC $CPPFLAGS $CFLAGS -c b.c || exit 77 ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$CC $CPPFLAGS $CFLAGS -c b.c || exit 77" "localization.at:42"
+( $at_check_trace; $CC $CPPFLAGS $CFLAGS -c b.c || exit 77
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; tee stderr <"$at_stderr"
 echo stdout:; tee stdout <"$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/localization.at:42"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/localization.at:42"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 # Find out about expected output.
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/localization.at:45: \$CC \$CPPFLAGS \$CFLAGS -c a.c || exit 1"
-echo localization.at:45 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$CC $CPPFLAGS $CFLAGS -c a.c || exit 1"; then
-  ( $at_traceon; $CC $CPPFLAGS $CFLAGS -c a.c || exit 1 ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $CC $CPPFLAGS $CFLAGS -c a.c || exit 1 ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$CC $CPPFLAGS $CFLAGS -c a.c || exit 1" "localization.at:45"
+( $at_check_trace; $CC $CPPFLAGS $CFLAGS -c a.c || exit 1
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; tee stderr <"$at_stderr"
 echo stdout:; tee stdout <"$at_stdout"
-at_func_check_status 1 $at_status "$at_srcdir/localization.at:45"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 1 $at_status "$at_srcdir/localization.at:45"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 mv -f stdout expected-stdout
 mv -f stderr expected-stderr
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/localization.at:48: \$LIBTOOL --mode=compile --tag=CC \$CC \$CPPFLAGS \$CFLAGS -c a.c || exit 1"
-echo localization.at:48 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=compile --tag=CC $CC $CPPFLAGS $CFLAGS -c a.c || exit 1"; then
-  ( $at_traceon; $LIBTOOL --mode=compile --tag=CC $CC $CPPFLAGS $CFLAGS -c a.c || exit 1 ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=compile --tag=CC $CC $CPPFLAGS $CFLAGS -c a.c || exit 1 ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=compile --tag=CC $CC $CPPFLAGS $CFLAGS -c a.c || exit 1" "localization.at:48"
+( $at_check_trace; $LIBTOOL --mode=compile --tag=CC $CC $CPPFLAGS $CFLAGS -c a.c || exit 1
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; tee stderr <"$at_stderr"
 echo stdout:; tee stdout <"$at_stdout"
-at_func_check_status 1 $at_status "$at_srcdir/localization.at:48"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 1 $at_status "$at_srcdir/localization.at:48"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/localization.at:50: diff expected-stderr stderr"
-echo localization.at:50 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; diff expected-stderr stderr ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; diff expected-stderr stderr ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/localization.at:50"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_trace "localization.at:50"
+( $at_check_trace; diff expected-stderr stderr
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/localization.at:50"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 LTBASE=`$ECHO "$LIBTOOL" | sed 's,^.*/,,'`
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/localization.at:52: grep -v \"^\$LTBASE: compile\" stdout | diff expected-stdout -"
-echo localization.at:52 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "grep -v \"^$LTBASE: compile\" stdout | diff expected-stdout -"; then
-  ( $at_traceon; grep -v "^$LTBASE: compile" stdout | diff expected-stdout - ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; grep -v "^$LTBASE: compile" stdout | diff expected-stdout - ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/localization.at:52"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_dynamic "grep -v \"^$LTBASE: compile\" stdout | diff expected-stdout -" "localization.at:52"
+( $at_check_trace; grep -v "^$LTBASE: compile" stdout | diff expected-stdout -
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/localization.at:52"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 # check that we get our quoting right.
 LANGUAGE='a; nosuchprogram " '\''  & $x /#+*(){}|,:`\ !%'
 export LANGUAGE
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/localization.at:57: \$LIBTOOL --mode=compile --tag=CC \$CC \$CPPFLAGS \$CFLAGS -c b.c"
-echo localization.at:57 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=compile --tag=CC $CC $CPPFLAGS $CFLAGS -c b.c"; then
-  ( $at_traceon; $LIBTOOL --mode=compile --tag=CC $CC $CPPFLAGS $CFLAGS -c b.c ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=compile --tag=CC $CC $CPPFLAGS $CFLAGS -c b.c ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=compile --tag=CC $CC $CPPFLAGS $CFLAGS -c b.c" "localization.at:57"
+( $at_check_trace; $LIBTOOL --mode=compile --tag=CC $CC $CPPFLAGS $CFLAGS -c b.c
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; tee stderr <"$at_stderr"
 echo stdout:; tee stdout <"$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/localization.at:57"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/localization.at:57"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/localization.at:59: grep nosuchprogram stdout stderr"
-echo localization.at:59 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; grep nosuchprogram stdout stderr ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; grep nosuchprogram stdout stderr ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 1 $at_status "$at_srcdir/localization.at:59"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_trace "localization.at:59"
+( $at_check_trace; grep nosuchprogram stdout stderr
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 1 $at_status "$at_srcdir/localization.at:59"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
+read at_status <"$at_status_file"
 #AT_STOP_37
 #AT_START_38
 # 38. destdir.at:48: Simple DESTDIR install
 at_setup_line='destdir.at:48'
-at_func_banner 3
+at_fn_banner 3
 at_desc="Simple DESTDIR install"
-$at_quiet $as_echo_n " 38: $at_desc                         "
+at_desc_line=" 38: $at_desc                         "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
       eval `$LIBTOOL --config | grep '^fast_install='`
            case $fast_install in no) :;; *) false;; esac && at_xfail=yes
@@ -9829,44 +8501,30 @@ echo 'extern int a(); int main() { retur
 $CC $CPPFLAGS $CFLAGS -c m.c
 $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o m m.$OBJEXT liba.la
 mkdir $DESTDIR$libdir $DESTDIR$bindir
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/destdir.at:61: \$LIBTOOL --mode=install cp liba.la \$DESTDIR\$libdir/liba.la"
-echo destdir.at:61 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=install cp liba.la $DESTDIR$libdir/liba.la"; then
-  ( $at_traceon; $LIBTOOL --mode=install cp liba.la $DESTDIR$libdir/liba.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=install cp liba.la $DESTDIR$libdir/liba.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=install cp liba.la $DESTDIR$libdir/liba.la" "destdir.at:61"
+( $at_check_trace; $LIBTOOL --mode=install cp liba.la $DESTDIR$libdir/liba.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/destdir.at:61"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/destdir.at:61"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/destdir.at:63: \$LIBTOOL --mode=install cp m\$EXEEXT \$DESTDIR\$bindir/m\$EXEEXT"
-echo destdir.at:63 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=install cp m$EXEEXT $DESTDIR$bindir/m$EXEEXT"; then
-  ( $at_traceon; $LIBTOOL --mode=install cp m$EXEEXT $DESTDIR$bindir/m$EXEEXT ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=install cp m$EXEEXT $DESTDIR$bindir/m$EXEEXT ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=install cp m$EXEEXT $DESTDIR$bindir/m$EXEEXT" "destdir.at:63"
+( $at_check_trace; $LIBTOOL --mode=install cp m$EXEEXT $DESTDIR$bindir/m$EXEEXT
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/destdir.at:63"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/destdir.at:63"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 $LIBTOOL --mode=clean rm -f liba.la m
@@ -9887,70 +8545,54 @@ done
 rm -rf "$DESTDIR$bindir"
 
 # We ignore failure on purpose here: we may not be root.
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/destdir.at:69: \$LIBTOOL --mode=finish \$libdir"
-echo destdir.at:69 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=finish $libdir"; then
-  ( $at_traceon; $LIBTOOL --mode=finish $libdir ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=finish $libdir ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=finish $libdir" "destdir.at:69"
+( $at_check_trace; $LIBTOOL --mode=finish $libdir
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_skip $at_status "$at_srcdir/destdir.at:69"
-
-$at_failed && at_func_log_failure
+at_fn_check_skip $at_status "$at_srcdir/destdir.at:69"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/destdir.at:70: \$bindir/m; lt_status=\$?; if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"\$bindir/m\" || test -x \"\$bindir/m\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo destdir.at:70 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; $bindir/m; lt_status=$?; if test $lt_status -eq 0; then :;
+at_fn_check_prepare_notrace 'an embedded newline' "destdir.at:70"
+( $at_check_trace; $bindir/m; lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "$bindir/m" || test -x "$bindir/m"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $bindir/m; lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "$bindir/m" || test -x "$bindir/m"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/destdir.at:70"
-
-$at_failed && at_func_log_failure
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/destdir.at:70"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
+read at_status <"$at_status_file"
 #AT_STOP_38
 #AT_START_39
 # 39. destdir.at:75: DESTDIR with in-package deplibs
 at_setup_line='destdir.at:75'
-at_func_banner 3
+at_fn_banner 3
 at_desc="DESTDIR with in-package deplibs"
-$at_quiet $as_echo_n " 39: $at_desc                "
+at_desc_line=" 39: $at_desc                "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
       eval `$LIBTOOL --config | grep '^fast_install='`
            case $fast_install in no) :;; *) false;; esac && at_xfail=yes
@@ -9994,84 +8636,56 @@ echo 'extern int a(); int main() { retur
 $CC $CPPFLAGS $CFLAGS -c m.c
 $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o m m.$OBJEXT liba.la
 mkdir $DESTDIR$libdir $DESTDIR${libdir}2 $DESTDIR$bindir
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/destdir.at:96: \$LIBTOOL --mode=install cp liba1dep.la \$DESTDIR\$libdir/liba1dep.la"
-echo destdir.at:96 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=install cp liba1dep.la $DESTDIR$libdir/liba1dep.la"; then
-  ( $at_traceon; $LIBTOOL --mode=install cp liba1dep.la $DESTDIR$libdir/liba1dep.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=install cp liba1dep.la $DESTDIR$libdir/liba1dep.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=install cp liba1dep.la $DESTDIR$libdir/liba1dep.la" "destdir.at:96"
+( $at_check_trace; $LIBTOOL --mode=install cp liba1dep.la $DESTDIR$libdir/liba1dep.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/destdir.at:96"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/destdir.at:96"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/destdir.at:98: \$LIBTOOL --mode=install cp liba2dep.la \$DESTDIR\${libdir}2/liba2dep.la"
-echo destdir.at:98 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains a ${...} parameter expansion)'
-   false; }; then
-  ( $at_traceon; $LIBTOOL --mode=install cp liba2dep.la $DESTDIR${libdir}2/liba2dep.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=install cp liba2dep.la $DESTDIR${libdir}2/liba2dep.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_notrace 'a ${...} parameter expansion' "destdir.at:98"
+( $at_check_trace; $LIBTOOL --mode=install cp liba2dep.la $DESTDIR${libdir}2/liba2dep.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/destdir.at:98"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/destdir.at:98"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/destdir.at:100: \$LIBTOOL --mode=install cp liba.la \$DESTDIR\$libdir/liba.la"
-echo destdir.at:100 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=install cp liba.la $DESTDIR$libdir/liba.la"; then
-  ( $at_traceon; $LIBTOOL --mode=install cp liba.la $DESTDIR$libdir/liba.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=install cp liba.la $DESTDIR$libdir/liba.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=install cp liba.la $DESTDIR$libdir/liba.la" "destdir.at:100"
+( $at_check_trace; $LIBTOOL --mode=install cp liba.la $DESTDIR$libdir/liba.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/destdir.at:100"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/destdir.at:100"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/destdir.at:102: \$LIBTOOL --mode=install cp m\$EXEEXT \$DESTDIR\$bindir/m\$EXEEXT"
-echo destdir.at:102 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=install cp m$EXEEXT $DESTDIR$bindir/m$EXEEXT"; then
-  ( $at_traceon; $LIBTOOL --mode=install cp m$EXEEXT $DESTDIR$bindir/m$EXEEXT ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=install cp m$EXEEXT $DESTDIR$bindir/m$EXEEXT ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=install cp m$EXEEXT $DESTDIR$bindir/m$EXEEXT" "destdir.at:102"
+( $at_check_trace; $LIBTOOL --mode=install cp m$EXEEXT $DESTDIR$bindir/m$EXEEXT
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/destdir.at:102"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/destdir.at:102"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 $LIBTOOL --mode=clean rm -f liba1dep.la liba2dep.la liba.la m
@@ -10100,24 +8714,17 @@ done
 rm -rf "$DESTDIR$bindir"
 
 # We ignore failure on purpose here: we may not be root.
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/destdir.at:109: \$LIBTOOL --mode=finish \$libdir \${libdir}2"
-echo destdir.at:109 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains a ${...} parameter expansion)'
-   false; }; then
-  ( $at_traceon; $LIBTOOL --mode=finish $libdir ${libdir}2 ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=finish $libdir ${libdir}2 ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_notrace 'a ${...} parameter expansion' "destdir.at:109"
+( $at_check_trace; $LIBTOOL --mode=finish $libdir ${libdir}2
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_skip $at_status "$at_srcdir/destdir.at:109"
-
-$at_failed && at_func_log_failure
+at_fn_check_skip $at_status "$at_srcdir/destdir.at:109"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -10139,97 +8746,74 @@ done
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/destdir.at:127: \$bindir/m; lt_status=\$?; if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"\$bindir/m\" || test -x \"\$bindir/m\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo destdir.at:127 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; $bindir/m; lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "$bindir/m" || test -x "$bindir/m"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $bindir/m; lt_status=$?; if test $lt_status -eq 0; then :;
+at_fn_check_prepare_notrace 'an embedded newline' "destdir.at:127"
+( $at_check_trace; $bindir/m; lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "$bindir/m" || test -x "$bindir/m"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/destdir.at:127"
-
-$at_failed && at_func_log_failure
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/destdir.at:127"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 # TODO: make this more portable:
 if test "$OBJDUMP" != false && ($OBJDUMP -p $bindir/m$EXEEXT) >/dev/null 2>&1; then
-  { $at_traceoff
+  { set +x
 $as_echo "$at_srcdir/destdir.at:131: \$OBJDUMP -p \$bindir/m\$EXEEXT | \$EGREP -i \"R(UN)?PATH.*\$DESTDIR\""
-echo destdir.at:131 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$OBJDUMP -p $bindir/m$EXEEXT | $EGREP -i \"R(UN)?PATH.*$DESTDIR\""; then
-  ( $at_traceon; $OBJDUMP -p $bindir/m$EXEEXT | $EGREP -i "R(UN)?PATH.*$DESTDIR" ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $OBJDUMP -p $bindir/m$EXEEXT | $EGREP -i "R(UN)?PATH.*$DESTDIR" ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 1 $at_status "$at_srcdir/destdir.at:131"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_dynamic "$OBJDUMP -p $bindir/m$EXEEXT | $EGREP -i \"R(UN)?PATH.*$DESTDIR\"" "destdir.at:131"
+( $at_check_trace; $OBJDUMP -p $bindir/m$EXEEXT | $EGREP -i "R(UN)?PATH.*$DESTDIR"
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 1 $at_status "$at_srcdir/destdir.at:131"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
   . $libdir/liba.la
   set x $library_names
   lname=$2
   if test -n "$lname"; then
-    { $at_traceoff
+    { set +x
 $as_echo "$at_srcdir/destdir.at:136: \$OBJDUMP -p \$libdir/\$lname | \$EGREP -i \"R(UN)?PATH.*\$DESTDIR\""
-echo destdir.at:136 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$OBJDUMP -p $libdir/$lname | $EGREP -i \"R(UN)?PATH.*$DESTDIR\""; then
-  ( $at_traceon; $OBJDUMP -p $libdir/$lname | $EGREP -i "R(UN)?PATH.*$DESTDIR" ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $OBJDUMP -p $libdir/$lname | $EGREP -i "R(UN)?PATH.*$DESTDIR" ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 1 $at_status "$at_srcdir/destdir.at:136"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_dynamic "$OBJDUMP -p $libdir/$lname | $EGREP -i \"R(UN)?PATH.*$DESTDIR\"" "destdir.at:136"
+( $at_check_trace; $OBJDUMP -p $libdir/$lname | $EGREP -i "R(UN)?PATH.*$DESTDIR"
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 1 $at_status "$at_srcdir/destdir.at:136"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
   fi
 fi
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
+read at_status <"$at_status_file"
 #AT_STOP_39
 #AT_START_40
 # 40. old-m4-iface.at:40: AM_PROG_LIBTOOL
 at_setup_line='old-m4-iface.at:40'
-at_func_banner 4
+at_fn_banner 4
 at_desc="AM_PROG_LIBTOOL"
-$at_quiet $as_echo_n " 40: $at_desc                                "
+at_desc_line=" 40: $at_desc                                "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
       test "$AUTOCONF" = no && at_xfail=yes
 echo "#                             -*- compilation -*-" >> "$at_group_log"
@@ -10281,33 +8865,23 @@ $LIBTOOLIZE --install
 
 # This is slightly bogus, since only libtool.m4 was required in aclocal.m4
 # with libtool-1.5x...
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/old-m4-iface.at:80: test -f aclocal.m4 ||
   cat \"\$tst_aclocaldir/libtool.m4\" \"\$tst_aclocaldir/ltoptions.m4\" \\
     \"\$tst_aclocaldir/ltsugar.m4\" \"\$tst_aclocaldir/ltversion.m4\" \\
     \"\$tst_aclocaldir/lt~obsolete.m4\" > aclocal.m4"
-echo old-m4-iface.at:80 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; test -f aclocal.m4 ||
+at_fn_check_prepare_notrace 'an embedded newline' "old-m4-iface.at:80"
+( $at_check_trace; test -f aclocal.m4 ||
   cat "$tst_aclocaldir/libtool.m4" "$tst_aclocaldir/ltoptions.m4" \
     "$tst_aclocaldir/ltsugar.m4" "$tst_aclocaldir/ltversion.m4" \
-    "$tst_aclocaldir/lt~obsolete.m4" > aclocal.m4 ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; test -f aclocal.m4 ||
-  cat "$tst_aclocaldir/libtool.m4" "$tst_aclocaldir/ltoptions.m4" \
-    "$tst_aclocaldir/ltsugar.m4" "$tst_aclocaldir/ltversion.m4" \
-    "$tst_aclocaldir/lt~obsolete.m4" > aclocal.m4 ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/old-m4-iface.at:80"
-
-$at_failed && at_func_log_failure
+    "$tst_aclocaldir/lt~obsolete.m4" > aclocal.m4
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/old-m4-iface.at:80"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -10315,48 +8889,34 @@ $at_traceon; }
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/old-m4-iface.at:85: \$AUTOCONF --force"
-echo old-m4-iface.at:85 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$AUTOCONF --force"; then
-  ( $at_traceon; $AUTOCONF --force ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $AUTOCONF --force ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$AUTOCONF --force" "old-m4-iface.at:85"
+( $at_check_trace; $AUTOCONF --force
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/old-m4-iface.at:85"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/old-m4-iface.at:85"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
 ( SHELL=${CONFIG_SHELL-/bin/sh}
-   { $at_traceoff
+   { set +x
 $as_echo "$at_srcdir/old-m4-iface.at:85: CONFIG_SHELL=\$SHELL \$SHELL ./configure \$configure_options "
-echo old-m4-iface.at:85 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options "; then
-  ( $at_traceon; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options " "old-m4-iface.at:85"
+( $at_check_trace; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/old-m4-iface.at:85"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/old-m4-iface.at:85"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
  )
@@ -10364,24 +8924,17 @@ $at_traceon; }
 ( $unset LIBTOOL LIBTOOLIZE
   for target in all
   do
-    { $at_traceoff
+    { set +x
 $as_echo "$at_srcdir/old-m4-iface.at:85: \$MAKE \$target "
-echo old-m4-iface.at:85 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$MAKE $target "; then
-  ( $at_traceon; $MAKE $target  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $MAKE $target  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$MAKE $target " "old-m4-iface.at:85"
+( $at_check_trace; $MAKE $target
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/old-m4-iface.at:85"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/old-m4-iface.at:85"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
   done )
@@ -10390,34 +8943,24 @@ $at_traceon; }
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/old-m4-iface.at:87: ./old; lt_status=\$?; if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"./old\" || test -x \"./old\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo old-m4-iface.at:87 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; ./old; lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "./old" || test -x "./old"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; ./old; lt_status=$?; if test $lt_status -eq 0; then :;
+at_fn_check_prepare_notrace 'an embedded newline' "old-m4-iface.at:87"
+( $at_check_trace; ./old; lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "./old" || test -x "./old"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 echo >>"$at_stdout"; $as_echo "Hello, World!" | \
   $at_diff - "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/old-m4-iface.at:87"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/old-m4-iface.at:87"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -10426,115 +8969,85 @@ $at_traceon; }
 # any libtool macros if in fact she didn't.
 sed '/AM_PROG_LIBTOOL/d' configure.in >configure.int
 mv -f configure.int configure.in
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/old-m4-iface.at:93: \$LIBTOOLIZE -n"
-echo old-m4-iface.at:93 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOLIZE -n"; then
-  ( $at_traceon; $LIBTOOLIZE -n ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOLIZE -n ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOLIZE -n" "old-m4-iface.at:93"
+( $at_check_trace; $LIBTOOLIZE -n
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; tee stderr <"$at_stderr"
 echo stdout:; tee stdout <"$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/old-m4-iface.at:93"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/old-m4-iface.at:93"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 # ensure no shell errors:
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/old-m4-iface.at:95: grep -v \"^libtoolize: \" stderr"
-echo old-m4-iface.at:95 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; grep -v "^libtoolize: " stderr ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; grep -v "^libtoolize: " stderr ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 1 $at_status "$at_srcdir/old-m4-iface.at:95"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_trace "old-m4-iface.at:95"
+( $at_check_trace; grep -v "^libtoolize: " stderr
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 1 $at_status "$at_srcdir/old-m4-iface.at:95"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/old-m4-iface.at:96: grep \"Remember to add.*LT_INIT.*to configure.in\" stdout"
-echo old-m4-iface.at:96 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; grep "Remember to add.*LT_INIT.*to configure.in" stdout ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; grep "Remember to add.*LT_INIT.*to configure.in" stdout ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+at_fn_check_prepare_trace "old-m4-iface.at:96"
+( $at_check_trace; grep "Remember to add.*LT_INIT.*to configure.in" stdout
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/old-m4-iface.at:96"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/old-m4-iface.at:96"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
-$as_echo "$at_srcdir/old-m4-iface.at:97: grep \"Consider adding.*LT_WITH_LTDL\" stdout"
-echo old-m4-iface.at:97 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; grep "Consider adding.*LT_WITH_LTDL" stdout ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; grep "Consider adding.*LT_WITH_LTDL" stdout ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 1 $at_status "$at_srcdir/old-m4-iface.at:97"
-
-$at_failed && at_func_log_failure
+{ set +x
+$as_echo "$at_srcdir/old-m4-iface.at:97: grep \"Consider adding.*LT_WITH_LTDL\" stdout"
+at_fn_check_prepare_trace "old-m4-iface.at:97"
+( $at_check_trace; grep "Consider adding.*LT_WITH_LTDL" stdout
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 1 $at_status "$at_srcdir/old-m4-iface.at:97"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/old-m4-iface.at:98: grep \"Remember to add.*LT_CONFIG_LTDL_DIR\" stdout"
-echo old-m4-iface.at:98 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; grep "Remember to add.*LT_CONFIG_LTDL_DIR" stdout ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; grep "Remember to add.*LT_CONFIG_LTDL_DIR" stdout ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 1 $at_status "$at_srcdir/old-m4-iface.at:98"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_trace "old-m4-iface.at:98"
+( $at_check_trace; grep "Remember to add.*LT_CONFIG_LTDL_DIR" stdout
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 1 $at_status "$at_srcdir/old-m4-iface.at:98"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
+read at_status <"$at_status_file"
 #AT_STOP_40
 #AT_START_41
 # 41. old-m4-iface.at:107: AC_WITH_LTDL
 at_setup_line='old-m4-iface.at:107'
-at_func_banner 4
+at_fn_banner 4
 at_desc="AC_WITH_LTDL"
-$at_quiet $as_echo_n " 41: $at_desc                                   "
+at_desc_line=" 41: $at_desc                                   "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
       test "$ACLOCAL" = no && at_xfail=yes
       test "$AUTOCONF" = no && at_xfail=yes
@@ -10573,9 +9086,9 @@ main ()
     return 1;
   }
 
-  module = lt_dlopen("module.la");
+  module = lt_dlopen("./module.la");
   if (!module) {
-    fprintf (stderr, "error dlopening module.la: %s\n", lt_dlerror());
+    fprintf (stderr, "error dlopening ./module.la: %s\n", lt_dlerror());
     goto finish;
   }
 
@@ -10651,24 +9164,17 @@ _ATEOF
 $LIBTOOLIZE --ltdl --install
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/old-m4-iface.at:153: \$ACLOCAL -I libltdl/m4"
-echo old-m4-iface.at:153 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$ACLOCAL -I libltdl/m4"; then
-  ( $at_traceon; $ACLOCAL -I libltdl/m4 ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $ACLOCAL -I libltdl/m4 ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$ACLOCAL -I libltdl/m4" "old-m4-iface.at:153"
+( $at_check_trace; $ACLOCAL -I libltdl/m4
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/old-m4-iface.at:153"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/old-m4-iface.at:153"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -10676,48 +9182,34 @@ $at_traceon; }
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/old-m4-iface.at:153: \$AUTOCONF --force"
-echo old-m4-iface.at:153 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$AUTOCONF --force"; then
-  ( $at_traceon; $AUTOCONF --force ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $AUTOCONF --force ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$AUTOCONF --force" "old-m4-iface.at:153"
+( $at_check_trace; $AUTOCONF --force
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/old-m4-iface.at:153"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/old-m4-iface.at:153"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
 ( SHELL=${CONFIG_SHELL-/bin/sh}
-   { $at_traceoff
+   { set +x
 $as_echo "$at_srcdir/old-m4-iface.at:153: CONFIG_SHELL=\$SHELL \$SHELL ./configure \$configure_options "
-echo old-m4-iface.at:153 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options "; then
-  ( $at_traceon; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options " "old-m4-iface.at:153"
+( $at_check_trace; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/old-m4-iface.at:153"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/old-m4-iface.at:153"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
  )
@@ -10725,24 +9217,17 @@ $at_traceon; }
 ( $unset LIBTOOL LIBTOOLIZE
   for target in all
   do
-    { $at_traceoff
+    { set +x
 $as_echo "$at_srcdir/old-m4-iface.at:153: \$MAKE \$target "
-echo old-m4-iface.at:153 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$MAKE $target "; then
-  ( $at_traceon; $MAKE $target  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $MAKE $target  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$MAKE $target " "old-m4-iface.at:153"
+( $at_check_trace; $MAKE $target
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/old-m4-iface.at:153"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/old-m4-iface.at:153"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
   done )
@@ -10751,48 +9236,39 @@ $at_traceon; }
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/old-m4-iface.at:156: ./ltdldemo; lt_status=\$?; if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"./ltdldemo\" || test -x \"./ltdldemo\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo old-m4-iface.at:156 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; ./ltdldemo; lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "./ltdldemo" || test -x "./ltdldemo"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; ./ltdldemo; lt_status=$?; if test $lt_status -eq 0; then :;
+at_fn_check_prepare_notrace 'an embedded newline' "old-m4-iface.at:156"
+( $at_check_trace; ./ltdldemo; lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "./ltdldemo" || test -x "./ltdldemo"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/old-m4-iface.at:156"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/old-m4-iface.at:156"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
+read at_status <"$at_status_file"
 #AT_STOP_41
 #AT_START_42
 # 42. am-subdir.at:33: C subdir-objects
 at_setup_line='am-subdir.at:33'
-at_func_banner 5
+at_fn_banner 5
 at_desc="C subdir-objects"
-$at_quiet $as_echo_n " 42: $at_desc                               "
+at_desc_line=" 42: $at_desc                               "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
       test "$ACLOCAL" = no && at_xfail=yes
       test "$AUTOMAKE" = no && at_xfail=yes
@@ -10804,7 +9280,7 @@ echo "#                             -*-
 
 
 cat >configure.ac <<'_ATEOF'
-AC_INIT([subdir-demo], 2.2.6, bug-libtool@gnu.org)
+AC_INIT([subdir-demo], 2.2.6b, bug-libtool@gnu.org)
 AM_INIT_AUTOMAKE
 LT_INIT([win32-dll])
 AC_PROG_CC
@@ -10853,116 +9329,82 @@ _ATEOF
 $LIBTOOLIZE --copy
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/am-subdir.at:78: \$ACLOCAL -I m4"
-echo am-subdir.at:78 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$ACLOCAL -I m4"; then
-  ( $at_traceon; $ACLOCAL -I m4 ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $ACLOCAL -I m4 ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$ACLOCAL -I m4" "am-subdir.at:78"
+( $at_check_trace; $ACLOCAL -I m4
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/am-subdir.at:78"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/am-subdir.at:78"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/am-subdir.at:78: \$AUTOMAKE --add-missing"
-echo am-subdir.at:78 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$AUTOMAKE --add-missing"; then
-  ( $at_traceon; $AUTOMAKE --add-missing ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $AUTOMAKE --add-missing ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$AUTOMAKE --add-missing" "am-subdir.at:78"
+( $at_check_trace; $AUTOMAKE --add-missing
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; tee stderr <"$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/am-subdir.at:78"
-if $at_failed; then
-  { $at_traceoff
+at_fn_check_status 0 $at_status "$at_srcdir/am-subdir.at:78"
+if $at_failed; then :
+  { set +x
 $as_echo "$at_srcdir/am-subdir.at:78: grep 'require .*but have' stderr && (exit 77)"
-echo am-subdir.at:78 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; grep 'require .*but have' stderr && (exit 77) ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; grep 'require .*but have' stderr && (exit 77) ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 1 $at_status "$at_srcdir/am-subdir.at:78"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_trace "am-subdir.at:78"
+( $at_check_trace; grep 'require .*but have' stderr && (exit 77)
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 1 $at_status "$at_srcdir/am-subdir.at:78"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 fi
-
-$at_failed && at_func_log_failure
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/am-subdir.at:78: \$AUTOCONF "
-echo am-subdir.at:78 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$AUTOCONF "; then
-  ( $at_traceon; $AUTOCONF  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $AUTOCONF  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$AUTOCONF " "am-subdir.at:78"
+( $at_check_trace; $AUTOCONF
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/am-subdir.at:78"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/am-subdir.at:78"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
 ( SHELL=${CONFIG_SHELL-/bin/sh}
-   { $at_traceoff
+   { set +x
 $as_echo "$at_srcdir/am-subdir.at:78: CONFIG_SHELL=\$SHELL \$SHELL ./configure \$configure_options "
-echo am-subdir.at:78 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options "; then
-  ( $at_traceon; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options " "am-subdir.at:78"
+( $at_check_trace; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/am-subdir.at:78"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/am-subdir.at:78"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
  )
@@ -10970,24 +9412,17 @@ $at_traceon; }
 ( $unset LIBTOOL LIBTOOLIZE
   for target in all
   do
-    { $at_traceoff
+    { set +x
 $as_echo "$at_srcdir/am-subdir.at:78: \$MAKE \$target "
-echo am-subdir.at:78 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$MAKE $target "; then
-  ( $at_traceon; $MAKE $target  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $MAKE $target  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$MAKE $target " "am-subdir.at:78"
+( $at_check_trace; $MAKE $target
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/am-subdir.at:78"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/am-subdir.at:78"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
   done )
@@ -10996,86 +9431,65 @@ $at_traceon; }
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/am-subdir.at:80: subdir/subdemo; lt_status=\$?; if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"subdir/subdemo\" || test -x \"subdir/subdemo\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo am-subdir.at:80 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; subdir/subdemo; lt_status=$?; if test $lt_status -eq 0; then :;
+at_fn_check_prepare_notrace 'an embedded newline' "am-subdir.at:80"
+( $at_check_trace; subdir/subdemo; lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "subdir/subdemo" || test -x "subdir/subdemo"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; subdir/subdemo; lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "subdir/subdemo" || test -x "subdir/subdemo"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 echo stdout:; tee stdout <"$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/am-subdir.at:80"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/am-subdir.at:80"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/am-subdir.at:81: grep 'Welcome to GNU Libtool subdir-objects test' stdout"
-echo am-subdir.at:81 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; grep 'Welcome to GNU Libtool subdir-objects test' stdout ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; grep 'Welcome to GNU Libtool subdir-objects test' stdout ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+at_fn_check_prepare_trace "am-subdir.at:81"
+( $at_check_trace; grep 'Welcome to GNU Libtool subdir-objects test' stdout
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/am-subdir.at:81"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/am-subdir.at:81"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/am-subdir.at:83: grep 'This is libsub' stdout"
-echo am-subdir.at:83 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; grep 'This is libsub' stdout ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; grep 'This is libsub' stdout ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+at_fn_check_prepare_trace "am-subdir.at:83"
+( $at_check_trace; grep 'This is libsub' stdout
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/am-subdir.at:83"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/am-subdir.at:83"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
+read at_status <"$at_status_file"
 #AT_STOP_42
 #AT_START_43
 # 43. am-subdir.at:93: C++ subdir-objects
 at_setup_line='am-subdir.at:93'
-at_func_banner 5
+at_fn_banner 5
 at_desc="C++ subdir-objects"
-$at_quiet $as_echo_n " 43: $at_desc                             "
+at_desc_line=" 43: $at_desc                             "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
       test "$ACLOCAL" = no && at_xfail=yes
       test "$AUTOMAKE" = no && at_xfail=yes
@@ -11086,50 +9500,36 @@ echo "#                             -*-
   $at_traceon
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/am-subdir.at:94: { test -n \"\$CXX\" && test \"X\$CXX\" != Xno; } || (exit 77)"
-echo am-subdir.at:94 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "{ test -n \"$CXX\" && test \"X$CXX\" != Xno; } || (exit 77)"; then
-  ( $at_traceon; { test -n "$CXX" && test "X$CXX" != Xno; } || (exit 77) ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; { test -n "$CXX" && test "X$CXX" != Xno; } || (exit 77) ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/am-subdir.at:94"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_dynamic "{ test -n \"$CXX\" && test \"X$CXX\" != Xno; } || (exit 77)" "am-subdir.at:94"
+( $at_check_trace; { test -n "$CXX" && test "X$CXX" != Xno; } || (exit 77)
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/am-subdir.at:94"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/am-subdir.at:94: test \"X\$CXX\" != Xg++ || (g++ -v >/dev/null 2>&1) || (exit 77)"
-echo am-subdir.at:94 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "test \"X$CXX\" != Xg++ || (g++ -v >/dev/null 2>&1) || (exit 77)"; then
-  ( $at_traceon; test "X$CXX" != Xg++ || (g++ -v >/dev/null 2>&1) || (exit 77) ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; test "X$CXX" != Xg++ || (g++ -v >/dev/null 2>&1) || (exit 77) ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/am-subdir.at:94"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_dynamic "test \"X$CXX\" != Xg++ || (g++ -v >/dev/null 2>&1) || (exit 77)" "am-subdir.at:94"
+( $at_check_trace; test "X$CXX" != Xg++ || (g++ -v >/dev/null 2>&1) || (exit 77)
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/am-subdir.at:94"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 cat >configure.ac <<'_ATEOF'
-AC_INIT([subdir-demo], 2.2.6, bug-libtool@gnu.org)
+AC_INIT([subdir-demo], 2.2.6b, bug-libtool@gnu.org)
 AM_INIT_AUTOMAKE
 AC_PROG_CC
 AM_PROG_CC_C_O
@@ -11186,116 +9586,82 @@ _ATEOF
 $LIBTOOLIZE --copy
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/am-subdir.at:146: \$ACLOCAL -I m4"
-echo am-subdir.at:146 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$ACLOCAL -I m4"; then
-  ( $at_traceon; $ACLOCAL -I m4 ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $ACLOCAL -I m4 ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$ACLOCAL -I m4" "am-subdir.at:146"
+( $at_check_trace; $ACLOCAL -I m4
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/am-subdir.at:146"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/am-subdir.at:146"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/am-subdir.at:146: \$AUTOMAKE --add-missing"
-echo am-subdir.at:146 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$AUTOMAKE --add-missing"; then
-  ( $at_traceon; $AUTOMAKE --add-missing ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $AUTOMAKE --add-missing ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$AUTOMAKE --add-missing" "am-subdir.at:146"
+( $at_check_trace; $AUTOMAKE --add-missing
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; tee stderr <"$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/am-subdir.at:146"
-if $at_failed; then
-  { $at_traceoff
+at_fn_check_status 0 $at_status "$at_srcdir/am-subdir.at:146"
+if $at_failed; then :
+  { set +x
 $as_echo "$at_srcdir/am-subdir.at:146: grep 'require .*but have' stderr && (exit 77)"
-echo am-subdir.at:146 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; grep 'require .*but have' stderr && (exit 77) ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; grep 'require .*but have' stderr && (exit 77) ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 1 $at_status "$at_srcdir/am-subdir.at:146"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_trace "am-subdir.at:146"
+( $at_check_trace; grep 'require .*but have' stderr && (exit 77)
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 1 $at_status "$at_srcdir/am-subdir.at:146"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 fi
-
-$at_failed && at_func_log_failure
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/am-subdir.at:146: \$AUTOCONF "
-echo am-subdir.at:146 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$AUTOCONF "; then
-  ( $at_traceon; $AUTOCONF  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $AUTOCONF  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$AUTOCONF " "am-subdir.at:146"
+( $at_check_trace; $AUTOCONF
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/am-subdir.at:146"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/am-subdir.at:146"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
 ( SHELL=${CONFIG_SHELL-/bin/sh}
-   { $at_traceoff
+   { set +x
 $as_echo "$at_srcdir/am-subdir.at:146: CONFIG_SHELL=\$SHELL \$SHELL ./configure \$configure_options "
-echo am-subdir.at:146 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options "; then
-  ( $at_traceon; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options " "am-subdir.at:146"
+( $at_check_trace; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/am-subdir.at:146"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/am-subdir.at:146"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
  )
@@ -11303,24 +9669,17 @@ $at_traceon; }
 ( $unset LIBTOOL LIBTOOLIZE
   for target in all
   do
-    { $at_traceoff
+    { set +x
 $as_echo "$at_srcdir/am-subdir.at:146: \$MAKE \$target "
-echo am-subdir.at:146 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$MAKE $target "; then
-  ( $at_traceon; $MAKE $target  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $MAKE $target  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$MAKE $target " "am-subdir.at:146"
+( $at_check_trace; $MAKE $target
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/am-subdir.at:146"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/am-subdir.at:146"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
   done )
@@ -11329,48 +9688,39 @@ $at_traceon; }
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/am-subdir.at:148: subdir/subdemo; lt_status=\$?; if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"subdir/subdemo\" || test -x \"subdir/subdemo\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo am-subdir.at:148 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; subdir/subdemo; lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "subdir/subdemo" || test -x "subdir/subdemo"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; subdir/subdemo; lt_status=$?; if test $lt_status -eq 0; then :;
+at_fn_check_prepare_notrace 'an embedded newline' "am-subdir.at:148"
+( $at_check_trace; subdir/subdemo; lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "subdir/subdemo" || test -x "subdir/subdemo"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/am-subdir.at:148"
-
-$at_failed && at_func_log_failure
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/am-subdir.at:148"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
+read at_status <"$at_status_file"
 #AT_STOP_43
 #AT_START_44
 # 44. lt_dlexit.at:30: lt_dlexit unloading libs
 at_setup_line='lt_dlexit.at:30'
-at_func_banner 6
+at_fn_banner 6
 at_desc="lt_dlexit unloading libs"
-$at_quiet $as_echo_n " 44: $at_desc                       "
+at_desc_line=" 44: $at_desc                       "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
@@ -11483,30 +9833,21 @@ _ATEOF
 
 # Skip this test when called from:
 #    make distcheck DISTCHECK_CONFIGURE_FLAGS=--disable-ltdl-install
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/lt_dlexit.at:134: case \$LIBLTDL in #(
  */_inst/lib/*) test -f \$LIBLTDL || (exit 77) ;;
 esac"
-echo lt_dlexit.at:134 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; case $LIBLTDL in #(
+at_fn_check_prepare_notrace 'an embedded newline' "lt_dlexit.at:134"
+( $at_check_trace; case $LIBLTDL in #(
  */_inst/lib/*) test -f $LIBLTDL || (exit 77) ;;
-esac ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; case $LIBLTDL in #(
- */_inst/lib/*) test -f $LIBLTDL || (exit 77) ;;
-esac ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+esac
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/lt_dlexit.at:134"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/lt_dlexit.at:134"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -11517,126 +9858,92 @@ for file in a1 b1; do
   $LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c $file.c
 done
 $CC $CPPFLAGS $CFLAGS -c main.c
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/lt_dlexit.at:145: \$LIBTOOL --mode=link \$CC \$CFLAGS \$LDFLAGS -o liba1.la a1.lo \\
           -rpath /foo -avoid-version"
-echo lt_dlexit.at:145 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o liba1.la a1.lo \
-          -rpath /foo -avoid-version ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o liba1.la a1.lo \
-          -rpath /foo -avoid-version ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_notrace 'an embedded newline' "lt_dlexit.at:145"
+( $at_check_trace; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o liba1.la a1.lo \
+          -rpath /foo -avoid-version
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/lt_dlexit.at:145"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/lt_dlexit.at:145"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/lt_dlexit.at:147: \$LIBTOOL --mode=link \$CC \$CFLAGS \$LDFLAGS -o modb1.la b1.lo \\
           -rpath /foo -module -avoid-version liba1.la"
-echo lt_dlexit.at:147 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o modb1.la b1.lo \
-          -rpath /foo -module -avoid-version liba1.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o modb1.la b1.lo \
-          -rpath /foo -module -avoid-version liba1.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_notrace 'an embedded newline' "lt_dlexit.at:147"
+( $at_check_trace; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o modb1.la b1.lo \
+          -rpath /foo -module -avoid-version liba1.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/lt_dlexit.at:147"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/lt_dlexit.at:147"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 # TODO: test -dlpreopen
 for dlopen in -dlopen; do
-  { $at_traceoff
+  { set +x
 $as_echo "$at_srcdir/lt_dlexit.at:152: \$LIBTOOL --mode=link \$CC \$CFLAGS \$LDFLAGS -o main main.\$OBJEXT \\
            \$dlopen modb1.la \$LIBLTDL"
-echo lt_dlexit.at:152 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT \
-           $dlopen modb1.la $LIBLTDL ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT \
-           $dlopen modb1.la $LIBLTDL ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_notrace 'an embedded newline' "lt_dlexit.at:152"
+( $at_check_trace; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT \
+           $dlopen modb1.la $LIBLTDL
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/lt_dlexit.at:152"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/lt_dlexit.at:152"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/lt_dlexit.at:154: \$LIBTOOL --mode=execute -dlopen modb1.la ./main; lt_status=\$?;
 	   if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"./main\" || test -x \"./main\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo lt_dlexit.at:154 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; $LIBTOOL --mode=execute -dlopen modb1.la ./main; lt_status=$?;
-	   if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "./main" || test -x "./main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=execute -dlopen modb1.la ./main; lt_status=$?;
+at_fn_check_prepare_notrace 'an embedded newline' "lt_dlexit.at:154"
+( $at_check_trace; $LIBTOOL --mode=execute -dlopen modb1.la ./main; lt_status=$?;
 	   if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "./main" || test -x "./main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/lt_dlexit.at:154"
-
-$at_failed && at_func_log_failure
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/lt_dlexit.at:154"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 done
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
+read at_status <"$at_status_file"
 #AT_STOP_44
 #AT_START_45
 # 45. lt_dladvise.at:28: lt_dlopenadvise library loading
 at_setup_line='lt_dladvise.at:28'
-at_func_banner 6
+at_fn_banner 6
 at_desc="lt_dlopenadvise library loading"
-$at_quiet $as_echo_n " 45: $at_desc                "
+at_desc_line=" 45: $at_desc                "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
@@ -11926,30 +10233,21 @@ _ATEOF
 
 # Skip this test when called from:
 #    make distcheck DISTCHECK_CONFIGURE_FLAGS=--disable-ltdl-install
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/lt_dladvise.at:305: case \$LIBLTDL in #(
  */_inst/lib/*) test -f \$LIBLTDL || (exit 77) ;;
 esac"
-echo lt_dladvise.at:305 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; case $LIBLTDL in #(
- */_inst/lib/*) test -f $LIBLTDL || (exit 77) ;;
-esac ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; case $LIBLTDL in #(
+at_fn_check_prepare_notrace 'an embedded newline' "lt_dladvise.at:305"
+( $at_check_trace; case $LIBLTDL in #(
  */_inst/lib/*) test -f $LIBLTDL || (exit 77) ;;
-esac ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+esac
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/lt_dladvise.at:305"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/lt_dladvise.at:305"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -11974,24 +10272,17 @@ cygwin* | mingw*)
   CPPFLAGS="$CPPFLAGS -DHAVE_UNDEFINED_SYMBOLS=1"
   dlopenable="$dlopen depend"
   $LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c moddepend.c
-  { $at_traceoff
+  { set +x
 $as_echo "$at_srcdir/lt_dladvise.at:330: \$LIBTOOL --mode=link \$CC -module \$CFLAGS \$LDFLAGS -o libdepend.la            moddepend.lo -rpath /foo -avoid-version"
-echo lt_dladvise.at:330 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=link $CC -module $CFLAGS $LDFLAGS -o libdepend.la            moddepend.lo -rpath /foo -avoid-version"; then
-  ( $at_traceon; $LIBTOOL --mode=link $CC -module $CFLAGS $LDFLAGS -o libdepend.la            moddepend.lo -rpath /foo -avoid-version ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link $CC -module $CFLAGS $LDFLAGS -o libdepend.la            moddepend.lo -rpath /foo -avoid-version ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=link $CC -module $CFLAGS $LDFLAGS -o libdepend.la            moddepend.lo -rpath /foo -avoid-version" "lt_dladvise.at:330"
+( $at_check_trace; $LIBTOOL --mode=link $CC -module $CFLAGS $LDFLAGS -o libdepend.la            moddepend.lo -rpath /foo -avoid-version
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/lt_dladvise.at:330"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/lt_dladvise.at:330"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
   ;;
@@ -12013,24 +10304,17 @@ for name in resident local global preloa
     st=
   fi
   $LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c mod$name.c
-  { $at_traceoff
+  { set +x
 $as_echo "$at_srcdir/lt_dladvise.at:351: \$LIBTOOL --mode=link \$CC -module \$CFLAGS \$LDFLAGS -o lib\$name.la            mod\$name.lo \$st -rpath /foo -avoid-version"
-echo lt_dladvise.at:351 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=link $CC -module $CFLAGS $LDFLAGS -o lib$name.la            mod$name.lo $st -rpath /foo -avoid-version"; then
-  ( $at_traceon; $LIBTOOL --mode=link $CC -module $CFLAGS $LDFLAGS -o lib$name.la            mod$name.lo $st -rpath /foo -avoid-version ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link $CC -module $CFLAGS $LDFLAGS -o lib$name.la            mod$name.lo $st -rpath /foo -avoid-version ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=link $CC -module $CFLAGS $LDFLAGS -o lib$name.la            mod$name.lo $st -rpath /foo -avoid-version" "lt_dladvise.at:351"
+( $at_check_trace; $LIBTOOL --mode=link $CC -module $CFLAGS $LDFLAGS -o lib$name.la            mod$name.lo $st -rpath /foo -avoid-version
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/lt_dladvise.at:351"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/lt_dladvise.at:351"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 done
@@ -12045,47 +10329,33 @@ for module in $dlopenable; do
   modules="${modules+$modules }-dlopen lib$module.la"
 done
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/lt_dladvise.at:365: \$LIBTOOL --mode=link \$CC \$CFLAGS \$LDFLAGS -o main main.\$OBJEXT \$preloaded \$modules \$LIBLTDL"
-echo lt_dladvise.at:365 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT $preloaded $modules $LIBLTDL"; then
-  ( $at_traceon; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT $preloaded $modules $LIBLTDL ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT $preloaded $modules $LIBLTDL ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT $preloaded $modules $LIBLTDL" "lt_dladvise.at:365"
+( $at_check_trace; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT $preloaded $modules $LIBLTDL
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/lt_dladvise.at:365"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/lt_dladvise.at:365"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 # Remove loadable libpreload module, so we know it is the preloaded module
 # that is being executed by a successful test invocation:
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/lt_dladvise.at:370: \$LIBTOOL --mode=clean rm -f libpreload.la"
-echo lt_dladvise.at:370 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=clean rm -f libpreload.la"; then
-  ( $at_traceon; $LIBTOOL --mode=clean rm -f libpreload.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=clean rm -f libpreload.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=clean rm -f libpreload.la" "lt_dladvise.at:370"
+( $at_check_trace; $LIBTOOL --mode=clean rm -f libpreload.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/lt_dladvise.at:370"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/lt_dladvise.at:370"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -12094,55 +10364,238 @@ case $host_os in mingw*)
   mv -f expout.t expout ;;
 esac
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/lt_dladvise.at:372: \$LIBTOOL --mode=execute \$modules ./main; lt_status=\$?;
 	   if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"./main\" || test -x \"./main\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo lt_dladvise.at:372 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; $LIBTOOL --mode=execute $modules ./main; lt_status=$?;
-	   if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "./main" || test -x "./main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=execute $modules ./main; lt_status=$?;
+at_fn_check_prepare_notrace 'an embedded newline' "lt_dladvise.at:372"
+( $at_check_trace; $LIBTOOL --mode=execute $modules ./main; lt_status=$?;
 	   if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "./main" || test -x "./main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 $at_diff expout "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/lt_dladvise.at:372"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/lt_dladvise.at:372"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
+read at_status <"$at_status_file"
 #AT_STOP_45
 #AT_START_46
-# 46. ltdl-api.at:25: ltdl API
+# 46. lt_dlopen_a.at:23: lt_dlopen archive
+at_setup_line='lt_dlopen_a.at:23'
+at_fn_banner 6
+at_desc="lt_dlopen archive"
+at_desc_line=" 46: $at_desc                              "
+$at_quiet $as_echo_n "$at_desc_line"
+at_xfail=no
+echo "#                             -*- compilation -*-" >> "$at_group_log"
+(
+  $as_echo "46. lt_dlopen_a.at:23: testing ..."
+  $at_traceon
+
+
+
+cat >main.c <<'_ATEOF'
+#include <ltdl.h>
+#include <stdio.h>
+
+/* This dlopen() in the main executable should override any dlopen()s in
+   shared libraries etc.
+
+   If that is not the case (or the platform does not use dlopen()) then this
+   test should exit 77, causing the test to SKIP.
+*/
+static int retcde = 77;
+
+void * dlopen(const char *path, int mode) {
+  if (!(strcmp(path,"plugin.a") && strcmp(path,"plugin.lib")))
+    {
+      fprintf(stderr,"Tried to open archive %s\n",path);
+      retcde = 1;
+    }
+  else
+    {
+      fprintf(stderr,"Opening ... %s\n", path);
+      if (retcde == 77) retcde = 0;
+    }
+  return NULL;
+}
+
+int
+main (int argc, char* argv[])
+{
+  int err = 0;
+  lt_dlhandle plugin_handle;
+
+  lt_dlinit ();
+  plugin_handle = lt_dlopenext (argv[1]);
+  lt_dlexit ();
+  return retcde;
+}
+_ATEOF
+
+
+cat >plugin.c <<'_ATEOF'
+
+int i = 1;
+_ATEOF
+
+
+: ${LTDLINCL="-I$abs_top_srcdir/libltdl"}
+: ${LIBLTDL="$abs_builddir/../libltdl/libltdlc.la"}
+
+CPPFLAGS="$LTDLINCL $CPPFLAGS"
+inst=`pwd`/inst
+libdir=$inst/lib
+bindir=$inst/bin
+
+{ set +x
+$as_echo "$at_srcdir/lt_dlopen_a.at:78: \$CC \$CPPFLAGS \$CFLAGS -c main.c || exit 77"
+at_fn_check_prepare_dynamic "$CC $CPPFLAGS $CFLAGS -c main.c || exit 77" "lt_dlopen_a.at:78"
+( $at_check_trace; $CC $CPPFLAGS $CFLAGS -c main.c || exit 77
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+echo stderr:; cat "$at_stderr"
+echo stdout:; cat "$at_stdout"
+at_fn_check_status 0 $at_status "$at_srcdir/lt_dlopen_a.at:78"
+$at_failed && at_fn_log_failure
+$at_traceon; }
+
+{ set +x
+$as_echo "$at_srcdir/lt_dlopen_a.at:79: \$LIBTOOL --mode=compile \$CC \$CPPFLAGS \$CFLAGS -c plugin.c || exit 77"
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c plugin.c || exit 77" "lt_dlopen_a.at:79"
+( $at_check_trace; $LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c plugin.c || exit 77
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+echo stderr:; cat "$at_stderr"
+echo stdout:; cat "$at_stdout"
+at_fn_check_status 0 $at_status "$at_srcdir/lt_dlopen_a.at:79"
+$at_failed && at_fn_log_failure
+$at_traceon; }
+
+{ set +x
+$as_echo "$at_srcdir/lt_dlopen_a.at:81: \$LIBTOOL --mode=link \$CC \$CFLAGS \$LDFLAGS -o plugin.la -rpath 	 \$libdir -module -no-undefined -avoid-version plugin.lo || exit 77"
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o plugin.la -rpath 	 $libdir -module -no-undefined -avoid-version plugin.lo || exit 77" "lt_dlopen_a.at:81"
+( $at_check_trace; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o plugin.la -rpath 	 $libdir -module -no-undefined -avoid-version plugin.lo || exit 77
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+echo stderr:; cat "$at_stderr"
+echo stdout:; cat "$at_stdout"
+at_fn_check_status 0 $at_status "$at_srcdir/lt_dlopen_a.at:81"
+$at_failed && at_fn_log_failure
+$at_traceon; }
+
+
+{ set +x
+$as_echo "$at_srcdir/lt_dlopen_a.at:85: \$LIBTOOL --mode=link \$CC \$CFLAGS \$LDFLAGS -o main\$EXEEXT 	 main.\$OBJEXT -dlopen plugin.la \$LIBLTDL || exit 77"
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main$EXEEXT 	 main.$OBJEXT -dlopen plugin.la $LIBLTDL || exit 77" "lt_dlopen_a.at:85"
+( $at_check_trace; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main$EXEEXT 	 main.$OBJEXT -dlopen plugin.la $LIBLTDL || exit 77
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+echo stderr:; cat "$at_stderr"
+echo stdout:; cat "$at_stdout"
+at_fn_check_status 0 $at_status "$at_srcdir/lt_dlopen_a.at:85"
+$at_failed && at_fn_log_failure
+$at_traceon; }
+
+
+mkdir -p $libdir
+mkdir -p $bindir
+
+{ set +x
+$as_echo "$at_srcdir/lt_dlopen_a.at:92: \$LIBTOOL --mode=install cp plugin.la \$libdir"
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=install cp plugin.la $libdir" "lt_dlopen_a.at:92"
+( $at_check_trace; $LIBTOOL --mode=install cp plugin.la $libdir
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+echo stderr:; cat "$at_stderr"
+echo stdout:; cat "$at_stdout"
+at_fn_check_status 0 $at_status "$at_srcdir/lt_dlopen_a.at:92"
+$at_failed && at_fn_log_failure
+$at_traceon; }
+
+{ set +x
+$as_echo "$at_srcdir/lt_dlopen_a.at:93: \$LIBTOOL --mode=install cp main\$EXEEXT \$bindir"
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=install cp main$EXEEXT $bindir" "lt_dlopen_a.at:93"
+( $at_check_trace; $LIBTOOL --mode=install cp main$EXEEXT $bindir
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+echo stderr:; cat "$at_stderr"
+echo stdout:; cat "$at_stdout"
+at_fn_check_status 0 $at_status "$at_srcdir/lt_dlopen_a.at:93"
+$at_failed && at_fn_log_failure
+$at_traceon; }
+
+{ set +x
+$as_echo "$at_srcdir/lt_dlopen_a.at:94: test -f \$libdir/plugin.a || exit 77"
+at_fn_check_prepare_dynamic "test -f $libdir/plugin.a || exit 77" "lt_dlopen_a.at:94"
+( $at_check_trace; test -f $libdir/plugin.a || exit 77
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/lt_dlopen_a.at:94"
+$at_failed && at_fn_log_failure
+$at_traceon; }
+
+
+
+{ set +x
+$as_echo "$at_srcdir/lt_dlopen_a.at:95: \$bindir/main \$libdir/plugin.la; lt_status=\$?; if test \$lt_status -eq 0; then :;
+	   elif test \"X\$host\" != \"X\$build\" && \\
+	        { test -x \"\$bindir/main \$libdir/plugin.la\" || test -x \"\$bindir/main \$libdir/plugin.la\"\$EXEEXT; }
+	   then (exit 77); else (exit \$lt_status); fi"
+at_fn_check_prepare_notrace 'an embedded newline' "lt_dlopen_a.at:95"
+( $at_check_trace; $bindir/main $libdir/plugin.la; lt_status=$?; if test $lt_status -eq 0; then :;
+	   elif test "X$host" != "X$build" && \
+	        { test -x "$bindir/main $libdir/plugin.la" || test -x "$bindir/main $libdir/plugin.la"$EXEEXT; }
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+echo stderr:; cat "$at_stderr"
+echo stdout:; cat "$at_stdout"
+at_fn_check_status 0 $at_status "$at_srcdir/lt_dlopen_a.at:95"
+$at_failed && at_fn_log_failure
+$at_traceon; }
+
+
+
+  set +x
+  $at_times_p && times >"$at_times_file"
+) 5>&1 2>&1 | eval $at_tee_pipe
+read at_status <"$at_status_file"
+#AT_STOP_46
+#AT_START_47
+# 47. ltdl-api.at:25: ltdl API
 at_setup_line='ltdl-api.at:25'
-at_func_banner 6
+at_fn_banner 6
 at_desc="ltdl API"
-$at_quiet $as_echo_n " 46: $at_desc                                       "
+at_desc_line=" 47: $at_desc                                       "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
-  $as_echo "46. ltdl-api.at:25: testing ..."
+  $as_echo "47. ltdl-api.at:25: testing ..."
   $at_traceon
 
 
@@ -12150,102 +10603,77 @@ echo "#                             -*-
 # Ensure that no symbols from argz are unrenamed.
 eval `$LIBTOOL --config | $EGREP '^(NM|global_symbol_pipe|objext)='`
 argz_o=$abs_top_builddir/libltdl/argz.$objext
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/ltdl-api.at:31: test -f \"\$argz_o\" || exit 77"
-echo ltdl-api.at:31 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "test -f \"$argz_o\" || exit 77"; then
-  ( $at_traceon; test -f "$argz_o" || exit 77 ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; test -f "$argz_o" || exit 77 ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/ltdl-api.at:31"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_dynamic "test -f \"$argz_o\" || exit 77" "ltdl-api.at:31"
+( $at_check_trace; test -f "$argz_o" || exit 77
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/ltdl-api.at:31"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/ltdl-api.at:32: eval \"\$NM \\\"\\\$argz_o\\\" | \$global_symbol_pipe\""
-echo ltdl-api.at:32 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "eval \"$NM \\\"\\$argz_o\\\" | $global_symbol_pipe\""; then
-  ( $at_traceon; eval "$NM \"\$argz_o\" | $global_symbol_pipe" ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; eval "$NM \"\$argz_o\" | $global_symbol_pipe" ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "eval \"$NM \\\"\\$argz_o\\\" | $global_symbol_pipe\"" "ltdl-api.at:32"
+( $at_check_trace; eval "$NM \"\$argz_o\" | $global_symbol_pipe"
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; tee stdout <"$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/ltdl-api.at:32"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/ltdl-api.at:32"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 # Check for global symbols beginning with "argz_"
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/ltdl-api.at:35: grep \"^T argz_\" stdout"
-echo ltdl-api.at:35 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; grep "^T argz_" stdout ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; grep "^T argz_" stdout ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 1 $at_status "$at_srcdir/ltdl-api.at:35"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_trace "ltdl-api.at:35"
+( $at_check_trace; grep "^T argz_" stdout
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 1 $at_status "$at_srcdir/ltdl-api.at:35"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 # and also for the _ prefixed version "_argz_"
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/ltdl-api.at:37: grep \"^T _argz_\" stdout"
-echo ltdl-api.at:37 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; grep "^T _argz_" stdout ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; grep "^T _argz_" stdout ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 1 $at_status "$at_srcdir/ltdl-api.at:37"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_trace "ltdl-api.at:37"
+( $at_check_trace; grep "^T _argz_" stdout
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 1 $at_status "$at_srcdir/ltdl-api.at:37"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
-) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
-#AT_STOP_46
-#AT_START_47
-# 47. need_lib_prefix.at:25: enforced lib prefix
+) 5>&1 2>&1 | eval $at_tee_pipe
+read at_status <"$at_status_file"
+#AT_STOP_47
+#AT_START_48
+# 48. need_lib_prefix.at:25: enforced lib prefix
 at_setup_line='need_lib_prefix.at:25'
-at_func_banner 6
+at_fn_banner 6
 at_desc="enforced lib prefix"
-$at_quiet $as_echo_n " 47: $at_desc                            "
+at_desc_line=" 48: $at_desc                            "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
-  $as_echo "47. need_lib_prefix.at:25: testing ..."
+  $as_echo "48. need_lib_prefix.at:25: testing ..."
   $at_traceon
 
 
@@ -12370,30 +10798,21 @@ _ATEOF
 
 # Skip this test when called from:
 #    make distcheck DISTCHECK_CONFIGURE_FLAGS=--disable-ltdl-install
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/need_lib_prefix.at:144: case \$LIBLTDL in #(
  */_inst/lib/*) test -f \$LIBLTDL || (exit 77) ;;
 esac"
-echo need_lib_prefix.at:144 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; case $LIBLTDL in #(
+at_fn_check_prepare_notrace 'an embedded newline' "need_lib_prefix.at:144"
+( $at_check_trace; case $LIBLTDL in #(
  */_inst/lib/*) test -f $LIBLTDL || (exit 77) ;;
-esac ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; case $LIBLTDL in #(
- */_inst/lib/*) test -f $LIBLTDL || (exit 77) ;;
-esac ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+esac
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/need_lib_prefix.at:144"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/need_lib_prefix.at:144"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -12412,64 +10831,43 @@ for file in foo1 foo2; do
   $LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c $file.c
 done
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/need_lib_prefix.at:163: \$LIBTOOL --mode=link \$CC -module -avoid-version \$CFLAGS \$LDFLAGS -o foo1.la foo1.lo -rpath \$instdir/lib"
-echo need_lib_prefix.at:163 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=link $CC -module -avoid-version $CFLAGS $LDFLAGS -o foo1.la foo1.lo -rpath $instdir/lib"; then
-  ( $at_traceon; $LIBTOOL --mode=link $CC -module -avoid-version $CFLAGS $LDFLAGS -o foo1.la foo1.lo -rpath $instdir/lib ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link $CC -module -avoid-version $CFLAGS $LDFLAGS -o foo1.la foo1.lo -rpath $instdir/lib ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=link $CC -module -avoid-version $CFLAGS $LDFLAGS -o foo1.la foo1.lo -rpath $instdir/lib" "need_lib_prefix.at:163"
+( $at_check_trace; $LIBTOOL --mode=link $CC -module -avoid-version $CFLAGS $LDFLAGS -o foo1.la foo1.lo -rpath $instdir/lib
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/need_lib_prefix.at:163"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/need_lib_prefix.at:163"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/need_lib_prefix.at:165: \$LIBTOOL --mode=link \$CC -module -avoid-version \$CFLAGS \$LDFLAGS -o libfoo2.la foo2.lo -rpath \$instdir/lib"
-echo need_lib_prefix.at:165 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=link $CC -module -avoid-version $CFLAGS $LDFLAGS -o libfoo2.la foo2.lo -rpath $instdir/lib"; then
-  ( $at_traceon; $LIBTOOL --mode=link $CC -module -avoid-version $CFLAGS $LDFLAGS -o libfoo2.la foo2.lo -rpath $instdir/lib ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link $CC -module -avoid-version $CFLAGS $LDFLAGS -o libfoo2.la foo2.lo -rpath $instdir/lib ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=link $CC -module -avoid-version $CFLAGS $LDFLAGS -o libfoo2.la foo2.lo -rpath $instdir/lib" "need_lib_prefix.at:165"
+( $at_check_trace; $LIBTOOL --mode=link $CC -module -avoid-version $CFLAGS $LDFLAGS -o libfoo2.la foo2.lo -rpath $instdir/lib
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/need_lib_prefix.at:165"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/need_lib_prefix.at:165"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/need_lib_prefix.at:167: \$LIBTOOL --mode=link \$CC \$CFLAGS \$LDFLAGS -o main main.\$OBJEXT -dlpreopen foo1.la -dlpreopen libfoo2.la \$LIBLTDL"
-echo need_lib_prefix.at:167 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT -dlpreopen foo1.la -dlpreopen libfoo2.la $LIBLTDL"; then
-  ( $at_traceon; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT -dlpreopen foo1.la -dlpreopen libfoo2.la $LIBLTDL ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT -dlpreopen foo1.la -dlpreopen libfoo2.la $LIBLTDL ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT -dlpreopen foo1.la -dlpreopen libfoo2.la $LIBLTDL" "need_lib_prefix.at:167"
+( $at_check_trace; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main main.$OBJEXT -dlpreopen foo1.la -dlpreopen libfoo2.la $LIBLTDL
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/need_lib_prefix.at:167"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/need_lib_prefix.at:167"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -12478,36 +10876,25 @@ case $host_os in mingw*)
   mv -f expout.t expout ;;
 esac
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/need_lib_prefix.at:170: \$LIBTOOL --mode=execute -dlopen foo1.la -dlopen libfoo2.la ./main; lt_status=\$?;
 	   if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"./main\" || test -x \"./main\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo need_lib_prefix.at:170 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; $LIBTOOL --mode=execute -dlopen foo1.la -dlopen libfoo2.la ./main; lt_status=$?;
-	   if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "./main" || test -x "./main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=execute -dlopen foo1.la -dlopen libfoo2.la ./main; lt_status=$?;
+at_fn_check_prepare_notrace 'an embedded newline' "need_lib_prefix.at:170"
+( $at_check_trace; $LIBTOOL --mode=execute -dlopen foo1.la -dlopen libfoo2.la ./main; lt_status=$?;
 	   if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "./main" || test -x "./main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 $at_diff expout "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/need_lib_prefix.at:170"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/need_lib_prefix.at:170"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -12527,100 +10914,76 @@ case $host_os in mingw*)
   mv -f expout.t expout ;;
 esac
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/need_lib_prefix.at:183: \$instdir/bin/main; lt_status=\$?; if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"\$instdir/bin/main\" || test -x \"\$instdir/bin/main\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo need_lib_prefix.at:183 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; $instdir/bin/main; lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "$instdir/bin/main" || test -x "$instdir/bin/main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $instdir/bin/main; lt_status=$?; if test $lt_status -eq 0; then :;
+at_fn_check_prepare_notrace 'an embedded newline' "need_lib_prefix.at:183"
+( $at_check_trace; $instdir/bin/main; lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "$instdir/bin/main" || test -x "$instdir/bin/main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 $at_diff expout "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/need_lib_prefix.at:183"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/need_lib_prefix.at:183"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
-#AT_STOP_47
-#AT_START_48
-# 48. standalone.at:31: compiling softlinked libltdl
+read at_status <"$at_status_file"
+#AT_STOP_48
+#AT_START_49
+# 49. standalone.at:31: compiling softlinked libltdl
 at_setup_line='standalone.at:31'
-at_func_banner 7
+at_fn_banner 7
 at_desc="compiling softlinked libltdl"
-$at_quiet $as_echo_n " 48: $at_desc                   "
+at_desc_line=" 49: $at_desc                   "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
-  $as_echo "48. standalone.at:31: testing ..."
+  $as_echo "49. standalone.at:31: testing ..."
   $at_traceon
 
 
-{ $at_traceoff
-$as_echo "$at_srcdir/standalone.at:33: $LIBTOOLIZE --ltdl=.
+{ set +x
+$as_echo "$at_srcdir/standalone.at:33: \$LIBTOOLIZE --ltdl=.
 
 "
-echo standalone.at:33 >"$at_check_line_file"
+at_fn_check_prepare_notrace 'an embedded newline' "standalone.at:33"
+( $at_check_trace; $LIBTOOLIZE --ltdl=.
 
-if test -n "$at_traceon"; then
-  ( $at_traceon; $LIBTOOLIZE --ltdl=.
-
- ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOLIZE --ltdl=.
 
- ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/standalone.at:33"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/standalone.at:33"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 ( SHELL=${CONFIG_SHELL-/bin/sh}
-   { $at_traceoff
+   { set +x
 $as_echo "$at_srcdir/standalone.at:34: CONFIG_SHELL=\$SHELL \$SHELL ./configure \$configure_options "
-echo standalone.at:34 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options "; then
-  ( $at_traceon; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options " "standalone.at:34"
+( $at_check_trace; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/standalone.at:34"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/standalone.at:34"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
  )
@@ -12628,112 +10991,85 @@ $at_traceon; }
 ( $unset LIBTOOL LIBTOOLIZE
   for target in all $tst_dist
   do
-    { $at_traceoff
+    { set +x
 $as_echo "$at_srcdir/standalone.at:35: \$MAKE \$target "
-echo standalone.at:35 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$MAKE $target "; then
-  ( $at_traceon; $MAKE $target  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $MAKE $target  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$MAKE $target " "standalone.at:35"
+( $at_check_trace; $MAKE $target
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/standalone.at:35"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/standalone.at:35"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
   done )
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/standalone.at:37: test -f libltdlc.la"
-echo standalone.at:37 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; test -f libltdlc.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; test -f libltdlc.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/standalone.at:37"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_trace "standalone.at:37"
+( $at_check_trace; test -f libltdlc.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/standalone.at:37"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
-#AT_STOP_48
-#AT_START_49
-# 49. standalone.at:46: compiling copied libltdl
+read at_status <"$at_status_file"
+#AT_STOP_49
+#AT_START_50
+# 50. standalone.at:46: compiling copied libltdl
 at_setup_line='standalone.at:46'
-at_func_banner 7
+at_fn_banner 7
 at_desc="compiling copied libltdl"
-$at_quiet $as_echo_n " 49: $at_desc                       "
+at_desc_line=" 50: $at_desc                       "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
-  $as_echo "49. standalone.at:46: testing ..."
+  $as_echo "50. standalone.at:46: testing ..."
   $at_traceon
 
 
-{ $at_traceoff
-$as_echo "$at_srcdir/standalone.at:48: $LIBTOOLIZE --copy --ltdl=.
+{ set +x
+$as_echo "$at_srcdir/standalone.at:48: \$LIBTOOLIZE --copy --ltdl=.
 
 "
-echo standalone.at:48 >"$at_check_line_file"
+at_fn_check_prepare_notrace 'an embedded newline' "standalone.at:48"
+( $at_check_trace; $LIBTOOLIZE --copy --ltdl=.
 
-if test -n "$at_traceon"; then
-  ( $at_traceon; $LIBTOOLIZE --copy --ltdl=.
-
- ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOLIZE --copy --ltdl=.
 
- ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/standalone.at:48"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/standalone.at:48"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 ( SHELL=${CONFIG_SHELL-/bin/sh}
-   { $at_traceoff
+   { set +x
 $as_echo "$at_srcdir/standalone.at:49: CONFIG_SHELL=\$SHELL \$SHELL ./configure \$configure_options "
-echo standalone.at:49 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options "; then
-  ( $at_traceon; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options " "standalone.at:49"
+( $at_check_trace; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/standalone.at:49"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/standalone.at:49"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
  )
@@ -12741,114 +11077,87 @@ $at_traceon; }
 ( $unset LIBTOOL LIBTOOLIZE
   for target in all $tst_dist
   do
-    { $at_traceoff
+    { set +x
 $as_echo "$at_srcdir/standalone.at:50: \$MAKE \$target "
-echo standalone.at:50 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$MAKE $target "; then
-  ( $at_traceon; $MAKE $target  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $MAKE $target  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$MAKE $target " "standalone.at:50"
+( $at_check_trace; $MAKE $target
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/standalone.at:50"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/standalone.at:50"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
   done )
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/standalone.at:52: test -f libltdlc.la"
-echo standalone.at:52 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; test -f libltdlc.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; test -f libltdlc.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/standalone.at:52"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_trace "standalone.at:52"
+( $at_check_trace; test -f libltdlc.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/standalone.at:52"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
-#AT_STOP_49
-#AT_START_50
-# 50. standalone.at:61: installable libltdl
+read at_status <"$at_status_file"
+#AT_STOP_50
+#AT_START_51
+# 51. standalone.at:61: installable libltdl
 at_setup_line='standalone.at:61'
-at_func_banner 7
+at_fn_banner 7
 at_desc="installable libltdl"
-$at_quiet $as_echo_n " 50: $at_desc                            "
+at_desc_line=" 51: $at_desc                            "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
-  $as_echo "50. standalone.at:61: testing ..."
+  $as_echo "51. standalone.at:61: testing ..."
   $at_traceon
 
 
 prefix=`pwd`/_inst
 
-{ $at_traceoff
-$as_echo "$at_srcdir/standalone.at:65: $LIBTOOLIZE --copy --ltdl=.
+{ set +x
+$as_echo "$at_srcdir/standalone.at:65: \$LIBTOOLIZE --copy --ltdl=.
 
 "
-echo standalone.at:65 >"$at_check_line_file"
+at_fn_check_prepare_notrace 'an embedded newline' "standalone.at:65"
+( $at_check_trace; $LIBTOOLIZE --copy --ltdl=.
 
-if test -n "$at_traceon"; then
-  ( $at_traceon; $LIBTOOLIZE --copy --ltdl=.
-
- ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOLIZE --copy --ltdl=.
 
- ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/standalone.at:65"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/standalone.at:65"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 ( SHELL=${CONFIG_SHELL-/bin/sh}
-   { $at_traceoff
+   { set +x
 $as_echo "$at_srcdir/standalone.at:66: CONFIG_SHELL=\$SHELL \$SHELL ./configure \$configure_options --enable-ltdl-install --prefix=\$prefix"
-echo standalone.at:66 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options --enable-ltdl-install --prefix=$prefix"; then
-  ( $at_traceon; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options --enable-ltdl-install --prefix=$prefix ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options --enable-ltdl-install --prefix=$prefix ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options --enable-ltdl-install --prefix=$prefix" "standalone.at:66"
+( $at_check_trace; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options --enable-ltdl-install --prefix=$prefix
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/standalone.at:66"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/standalone.at:66"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
  )
@@ -12856,85 +11165,65 @@ $at_traceon; }
 ( $unset LIBTOOL LIBTOOLIZE
   for target in all install $tst_dist
   do
-    { $at_traceoff
+    { set +x
 $as_echo "$at_srcdir/standalone.at:67: \$MAKE \$target "
-echo standalone.at:67 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$MAKE $target "; then
-  ( $at_traceon; $MAKE $target  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $MAKE $target  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$MAKE $target " "standalone.at:67"
+( $at_check_trace; $MAKE $target
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/standalone.at:67"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/standalone.at:67"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
   done )
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/standalone.at:69: test -f \$prefix/lib/libltdl.la"
-echo standalone.at:69 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "test -f $prefix/lib/libltdl.la"; then
-  ( $at_traceon; test -f $prefix/lib/libltdl.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; test -f $prefix/lib/libltdl.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/standalone.at:69"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_dynamic "test -f $prefix/lib/libltdl.la" "standalone.at:69"
+( $at_check_trace; test -f $prefix/lib/libltdl.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/standalone.at:69"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/standalone.at:70: test -f \$prefix/include/ltdl.h"
-echo standalone.at:70 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "test -f $prefix/include/ltdl.h"; then
-  ( $at_traceon; test -f $prefix/include/ltdl.h ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; test -f $prefix/include/ltdl.h ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/standalone.at:70"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_dynamic "test -f $prefix/include/ltdl.h" "standalone.at:70"
+( $at_check_trace; test -f $prefix/include/ltdl.h
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/standalone.at:70"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
-#AT_STOP_50
-#AT_START_51
-# 51. standalone.at:79: linking libltdl without autotools
+read at_status <"$at_status_file"
+#AT_STOP_51
+#AT_START_52
+# 52. standalone.at:79: linking libltdl without autotools
 at_setup_line='standalone.at:79'
-at_func_banner 7
+at_fn_banner 7
 at_desc="linking libltdl without autotools"
-$at_quiet $as_echo_n " 51: $at_desc              "
+at_desc_line=" 52: $at_desc              "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
-  $as_echo "51. standalone.at:79: testing ..."
+  $as_echo "52. standalone.at:79: testing ..."
   $at_traceon
 
 
@@ -12967,9 +11256,9 @@ main ()
     return 1;
   }
 
-  module = lt_dlopen("module.la");
+  module = lt_dlopen("./module.la");
   if (!module) {
-    fprintf (stderr, "error dlopening module.la: %s\n", lt_dlerror());
+    fprintf (stderr, "error dlopening ./module.la: %s\n", lt_dlerror());
     goto finish;
   }
 
@@ -13037,59 +11326,42 @@ EOF
 
 
 
-{ $at_traceoff
-$as_echo "$at_srcdir/standalone.at:82: $LIBTOOLIZE --copy --ltdl
+{ set +x
+$as_echo "$at_srcdir/standalone.at:82: \$LIBTOOLIZE --copy --ltdl
 
 "
-echo standalone.at:82 >"$at_check_line_file"
+at_fn_check_prepare_notrace 'an embedded newline' "standalone.at:82"
+( $at_check_trace; $LIBTOOLIZE --copy --ltdl
 
-if test -n "$at_traceon"; then
-  ( $at_traceon; $LIBTOOLIZE --copy --ltdl
-
- ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOLIZE --copy --ltdl
 
- ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/standalone.at:82"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/standalone.at:82"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 ( $unset LIBTOOL LIBTOOLIZE
   for target in all
   do
-    { $at_traceoff
+    { set +x
 $as_echo "$at_srcdir/standalone.at:83: \$MAKE \$target CC=\"\$CC\" LIBTOOLFLAGS=\"\$LIBTOOLFLAGS\" CPPFLAGS=\"\$CPPFLAGS\" \\
         CFLAGS=\"\$CFLAGS\" LDFLAGS=\"\$LDFLAGS\" \\
 	CONFIGURE_OPTIONS=\"\$configure_options\""
-echo standalone.at:83 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; $MAKE $target CC="$CC" LIBTOOLFLAGS="$LIBTOOLFLAGS" CPPFLAGS="$CPPFLAGS" \
-        CFLAGS="$CFLAGS" LDFLAGS="$LDFLAGS" \
-	CONFIGURE_OPTIONS="$configure_options" ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $MAKE $target CC="$CC" LIBTOOLFLAGS="$LIBTOOLFLAGS" CPPFLAGS="$CPPFLAGS" \
+at_fn_check_prepare_notrace 'an embedded newline' "standalone.at:83"
+( $at_check_trace; $MAKE $target CC="$CC" LIBTOOLFLAGS="$LIBTOOLFLAGS" CPPFLAGS="$CPPFLAGS" \
         CFLAGS="$CFLAGS" LDFLAGS="$LDFLAGS" \
-	CONFIGURE_OPTIONS="$configure_options" ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+	CONFIGURE_OPTIONS="$configure_options"
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/standalone.at:83"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/standalone.at:83"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
   done )
@@ -13097,60 +11369,51 @@ $at_traceon; }
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/standalone.at:87: ./ltdldemo; lt_status=\$?; if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"./ltdldemo\" || test -x \"./ltdldemo\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo standalone.at:87 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; ./ltdldemo; lt_status=$?; if test $lt_status -eq 0; then :;
+at_fn_check_prepare_notrace 'an embedded newline' "standalone.at:87"
+( $at_check_trace; ./ltdldemo; lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "./ltdldemo" || test -x "./ltdldemo"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; ./ltdldemo; lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "./ltdldemo" || test -x "./ltdldemo"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/standalone.at:87"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/standalone.at:87"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
-#AT_STOP_51
-#AT_START_52
-# 52. subproject.at:57: compiling softlinked libltdl
+read at_status <"$at_status_file"
+#AT_STOP_52
+#AT_START_53
+# 53. subproject.at:57: compiling softlinked libltdl
 at_setup_line='subproject.at:57'
-at_func_banner 8
+at_fn_banner 8
 at_desc="compiling softlinked libltdl"
-$at_quiet $as_echo_n " 52: $at_desc                   "
+at_desc_line=" 53: $at_desc                   "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
       test "$ACLOCAL" = no && at_xfail=yes
       test "$AUTOMAKE" = no && at_xfail=yes
       test "$AUTOCONF" = no && at_xfail=yes
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
-  $as_echo "52. subproject.at:57: testing ..."
+  $as_echo "53. subproject.at:57: testing ..."
   $at_traceon
 
 
 cat >configure.ac <<'_ATEOF'
-AC_INIT([subproject-demo], 2.2.6, bug-libtool@gnu.org)
+AC_INIT([subproject-demo], 2.2.6b, bug-libtool@gnu.org)
 LT_CONFIG_LTDL_DIR([sub/ltdl])
 AC_CONFIG_AUX_DIR([sub/ltdl/config])
 AC_CONFIG_MACRO_DIR([sub/ltdl/m4])
@@ -13177,116 +11440,82 @@ echo 'int dummy = 0;' > foo.c
 $LIBTOOLIZE --ltdl
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/subproject.at:61: \$ACLOCAL -I sub/ltdl/m4"
-echo subproject.at:61 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$ACLOCAL -I sub/ltdl/m4"; then
-  ( $at_traceon; $ACLOCAL -I sub/ltdl/m4 ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $ACLOCAL -I sub/ltdl/m4 ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$ACLOCAL -I sub/ltdl/m4" "subproject.at:61"
+( $at_check_trace; $ACLOCAL -I sub/ltdl/m4
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/subproject.at:61"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/subproject.at:61"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/subproject.at:61: \$AUTOMAKE --add-missing --copy"
-echo subproject.at:61 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$AUTOMAKE --add-missing --copy"; then
-  ( $at_traceon; $AUTOMAKE --add-missing --copy ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $AUTOMAKE --add-missing --copy ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$AUTOMAKE --add-missing --copy" "subproject.at:61"
+( $at_check_trace; $AUTOMAKE --add-missing --copy
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; tee stderr <"$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/subproject.at:61"
-if $at_failed; then
-  { $at_traceoff
+at_fn_check_status 0 $at_status "$at_srcdir/subproject.at:61"
+if $at_failed; then :
+  { set +x
 $as_echo "$at_srcdir/subproject.at:61: grep 'require .*but have' stderr && (exit 77)"
-echo subproject.at:61 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; grep 'require .*but have' stderr && (exit 77) ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; grep 'require .*but have' stderr && (exit 77) ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 1 $at_status "$at_srcdir/subproject.at:61"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_trace "subproject.at:61"
+( $at_check_trace; grep 'require .*but have' stderr && (exit 77)
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 1 $at_status "$at_srcdir/subproject.at:61"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 fi
-
-$at_failed && at_func_log_failure
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/subproject.at:61: \$AUTOCONF "
-echo subproject.at:61 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$AUTOCONF "; then
-  ( $at_traceon; $AUTOCONF  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $AUTOCONF  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$AUTOCONF " "subproject.at:61"
+( $at_check_trace; $AUTOCONF
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/subproject.at:61"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/subproject.at:61"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
 ( SHELL=${CONFIG_SHELL-/bin/sh}
-   { $at_traceoff
+   { set +x
 $as_echo "$at_srcdir/subproject.at:61: CONFIG_SHELL=\$SHELL \$SHELL ./configure \$configure_options "
-echo subproject.at:61 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options "; then
-  ( $at_traceon; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options " "subproject.at:61"
+( $at_check_trace; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/subproject.at:61"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/subproject.at:61"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
  )
@@ -13294,73 +11523,61 @@ $at_traceon; }
 ( $unset LIBTOOL LIBTOOLIZE
   for target in all $tst_dist
   do
-    { $at_traceoff
+    { set +x
 $as_echo "$at_srcdir/subproject.at:61: \$MAKE \$target "
-echo subproject.at:61 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$MAKE $target "; then
-  ( $at_traceon; $MAKE $target  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $MAKE $target  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$MAKE $target " "subproject.at:61"
+( $at_check_trace; $MAKE $target
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/subproject.at:61"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/subproject.at:61"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
   done )
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/subproject.at:64: test -f sub/ltdl/libltdlc.la"
-echo subproject.at:64 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; test -f sub/ltdl/libltdlc.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; test -f sub/ltdl/libltdlc.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/subproject.at:64"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_trace "subproject.at:64"
+( $at_check_trace; test -f sub/ltdl/libltdlc.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/subproject.at:64"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
-#AT_STOP_52
-#AT_START_53
-# 53. subproject.at:73: compiling copied libltdl
+read at_status <"$at_status_file"
+#AT_STOP_53
+#AT_START_54
+# 54. subproject.at:73: compiling copied libltdl
 at_setup_line='subproject.at:73'
-at_func_banner 8
+at_fn_banner 8
 at_desc="compiling copied libltdl"
-$at_quiet $as_echo_n " 53: $at_desc                       "
+at_desc_line=" 54: $at_desc                       "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
       test "$ACLOCAL" = no && at_xfail=yes
       test "$AUTOMAKE" = no && at_xfail=yes
       test "$AUTOCONF" = no && at_xfail=yes
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
-  $as_echo "53. subproject.at:73: testing ..."
+  $as_echo "54. subproject.at:73: testing ..."
   $at_traceon
 
 
 cat >configure.ac <<'_ATEOF'
-AC_INIT([subproject-demo], 2.2.6, bug-libtool@gnu.org)
+AC_INIT([subproject-demo], 2.2.6b, bug-libtool@gnu.org)
 LT_CONFIG_LTDL_DIR([sub/ltdl])
 AC_CONFIG_AUX_DIR([sub/ltdl/config])
 AC_CONFIG_MACRO_DIR([sub/ltdl/m4])
@@ -13387,116 +11604,82 @@ echo 'int dummy = 0;' > foo.c
 $LIBTOOLIZE --copy --ltdl
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/subproject.at:77: \$ACLOCAL -I sub/ltdl/m4"
-echo subproject.at:77 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$ACLOCAL -I sub/ltdl/m4"; then
-  ( $at_traceon; $ACLOCAL -I sub/ltdl/m4 ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $ACLOCAL -I sub/ltdl/m4 ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$ACLOCAL -I sub/ltdl/m4" "subproject.at:77"
+( $at_check_trace; $ACLOCAL -I sub/ltdl/m4
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/subproject.at:77"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/subproject.at:77"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/subproject.at:77: \$AUTOMAKE --add-missing --copy"
-echo subproject.at:77 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$AUTOMAKE --add-missing --copy"; then
-  ( $at_traceon; $AUTOMAKE --add-missing --copy ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $AUTOMAKE --add-missing --copy ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$AUTOMAKE --add-missing --copy" "subproject.at:77"
+( $at_check_trace; $AUTOMAKE --add-missing --copy
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; tee stderr <"$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/subproject.at:77"
-if $at_failed; then
-  { $at_traceoff
+at_fn_check_status 0 $at_status "$at_srcdir/subproject.at:77"
+if $at_failed; then :
+  { set +x
 $as_echo "$at_srcdir/subproject.at:77: grep 'require .*but have' stderr && (exit 77)"
-echo subproject.at:77 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; grep 'require .*but have' stderr && (exit 77) ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; grep 'require .*but have' stderr && (exit 77) ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 1 $at_status "$at_srcdir/subproject.at:77"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_trace "subproject.at:77"
+( $at_check_trace; grep 'require .*but have' stderr && (exit 77)
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 1 $at_status "$at_srcdir/subproject.at:77"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 fi
-
-$at_failed && at_func_log_failure
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/subproject.at:77: \$AUTOCONF "
-echo subproject.at:77 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$AUTOCONF "; then
-  ( $at_traceon; $AUTOCONF  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $AUTOCONF  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$AUTOCONF " "subproject.at:77"
+( $at_check_trace; $AUTOCONF
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/subproject.at:77"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/subproject.at:77"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
 ( SHELL=${CONFIG_SHELL-/bin/sh}
-   { $at_traceoff
+   { set +x
 $as_echo "$at_srcdir/subproject.at:77: CONFIG_SHELL=\$SHELL \$SHELL ./configure \$configure_options "
-echo subproject.at:77 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options "; then
-  ( $at_traceon; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options " "subproject.at:77"
+( $at_check_trace; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/subproject.at:77"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/subproject.at:77"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
  )
@@ -13504,75 +11687,63 @@ $at_traceon; }
 ( $unset LIBTOOL LIBTOOLIZE
   for target in all $tst_dist
   do
-    { $at_traceoff
+    { set +x
 $as_echo "$at_srcdir/subproject.at:77: \$MAKE \$target "
-echo subproject.at:77 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$MAKE $target "; then
-  ( $at_traceon; $MAKE $target  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $MAKE $target  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$MAKE $target " "subproject.at:77"
+( $at_check_trace; $MAKE $target
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/subproject.at:77"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/subproject.at:77"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
   done )
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/subproject.at:80: test -f sub/ltdl/libltdlc.la"
-echo subproject.at:80 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; test -f sub/ltdl/libltdlc.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; test -f sub/ltdl/libltdlc.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/subproject.at:80"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_trace "subproject.at:80"
+( $at_check_trace; test -f sub/ltdl/libltdlc.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/subproject.at:80"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
-#AT_STOP_53
-#AT_START_54
-# 54. subproject.at:89: installable libltdl
+read at_status <"$at_status_file"
+#AT_STOP_54
+#AT_START_55
+# 55. subproject.at:89: installable libltdl
 at_setup_line='subproject.at:89'
-at_func_banner 8
+at_fn_banner 8
 at_desc="installable libltdl"
-$at_quiet $as_echo_n " 54: $at_desc                            "
+at_desc_line=" 55: $at_desc                            "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
       test "$ACLOCAL" = no && at_xfail=yes
       test "$AUTOMAKE" = no && at_xfail=yes
       test "$AUTOCONF" = no && at_xfail=yes
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
-  $as_echo "54. subproject.at:89: testing ..."
+  $as_echo "55. subproject.at:89: testing ..."
   $at_traceon
 
 
 prefix=`pwd`/_inst
 
 cat >configure.ac <<'_ATEOF'
-AC_INIT([subproject-demo], 2.2.6, bug-libtool@gnu.org)
+AC_INIT([subproject-demo], 2.2.6b, bug-libtool@gnu.org)
 LT_CONFIG_LTDL_DIR([sub/ltdl])
 AC_CONFIG_AUX_DIR([sub/ltdl/config])
 AC_CONFIG_MACRO_DIR([sub/ltdl/m4])
@@ -13599,116 +11770,82 @@ echo 'int dummy = 0;' > foo.c
 $LIBTOOLIZE --copy --ltdl
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/subproject.at:95: \$ACLOCAL -I sub/ltdl/m4"
-echo subproject.at:95 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$ACLOCAL -I sub/ltdl/m4"; then
-  ( $at_traceon; $ACLOCAL -I sub/ltdl/m4 ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $ACLOCAL -I sub/ltdl/m4 ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$ACLOCAL -I sub/ltdl/m4" "subproject.at:95"
+( $at_check_trace; $ACLOCAL -I sub/ltdl/m4
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/subproject.at:95"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/subproject.at:95"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/subproject.at:95: \$AUTOMAKE --add-missing --copy"
-echo subproject.at:95 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$AUTOMAKE --add-missing --copy"; then
-  ( $at_traceon; $AUTOMAKE --add-missing --copy ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $AUTOMAKE --add-missing --copy ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$AUTOMAKE --add-missing --copy" "subproject.at:95"
+( $at_check_trace; $AUTOMAKE --add-missing --copy
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; tee stderr <"$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/subproject.at:95"
-if $at_failed; then
-  { $at_traceoff
+at_fn_check_status 0 $at_status "$at_srcdir/subproject.at:95"
+if $at_failed; then :
+  { set +x
 $as_echo "$at_srcdir/subproject.at:95: grep 'require .*but have' stderr && (exit 77)"
-echo subproject.at:95 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; grep 'require .*but have' stderr && (exit 77) ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; grep 'require .*but have' stderr && (exit 77) ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 1 $at_status "$at_srcdir/subproject.at:95"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_trace "subproject.at:95"
+( $at_check_trace; grep 'require .*but have' stderr && (exit 77)
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 1 $at_status "$at_srcdir/subproject.at:95"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 fi
-
-$at_failed && at_func_log_failure
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/subproject.at:95: \$AUTOCONF "
-echo subproject.at:95 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$AUTOCONF "; then
-  ( $at_traceon; $AUTOCONF  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $AUTOCONF  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$AUTOCONF " "subproject.at:95"
+( $at_check_trace; $AUTOCONF
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/subproject.at:95"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/subproject.at:95"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
 ( SHELL=${CONFIG_SHELL-/bin/sh}
-   { $at_traceoff
+   { set +x
 $as_echo "$at_srcdir/subproject.at:95: CONFIG_SHELL=\$SHELL \$SHELL ./configure \$configure_options --enable-ltdl-install --prefix=\$prefix"
-echo subproject.at:95 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options --enable-ltdl-install --prefix=$prefix"; then
-  ( $at_traceon; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options --enable-ltdl-install --prefix=$prefix ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options --enable-ltdl-install --prefix=$prefix ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options --enable-ltdl-install --prefix=$prefix" "subproject.at:95"
+( $at_check_trace; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options --enable-ltdl-install --prefix=$prefix
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/subproject.at:95"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/subproject.at:95"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
  )
@@ -13716,86 +11853,66 @@ $at_traceon; }
 ( $unset LIBTOOL LIBTOOLIZE
   for target in all install $tst_dist
   do
-    { $at_traceoff
+    { set +x
 $as_echo "$at_srcdir/subproject.at:95: \$MAKE \$target "
-echo subproject.at:95 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$MAKE $target "; then
-  ( $at_traceon; $MAKE $target  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $MAKE $target  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$MAKE $target " "subproject.at:95"
+( $at_check_trace; $MAKE $target
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/subproject.at:95"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/subproject.at:95"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
   done )
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/subproject.at:99: test -f \$prefix/lib/libltdl.la"
-echo subproject.at:99 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "test -f $prefix/lib/libltdl.la"; then
-  ( $at_traceon; test -f $prefix/lib/libltdl.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; test -f $prefix/lib/libltdl.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/subproject.at:99"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_dynamic "test -f $prefix/lib/libltdl.la" "subproject.at:99"
+( $at_check_trace; test -f $prefix/lib/libltdl.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/subproject.at:99"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/subproject.at:100: test -f \$prefix/include/ltdl.h"
-echo subproject.at:100 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "test -f $prefix/include/ltdl.h"; then
-  ( $at_traceon; test -f $prefix/include/ltdl.h ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; test -f $prefix/include/ltdl.h ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/subproject.at:100"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_dynamic "test -f $prefix/include/ltdl.h" "subproject.at:100"
+( $at_check_trace; test -f $prefix/include/ltdl.h
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/subproject.at:100"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
-#AT_STOP_54
-#AT_START_55
-# 55. subproject.at:109: linking libltdl without autotools
+read at_status <"$at_status_file"
+#AT_STOP_55
+#AT_START_56
+# 56. subproject.at:109: linking libltdl without autotools
 at_setup_line='subproject.at:109'
-at_func_banner 8
+at_fn_banner 8
 at_desc="linking libltdl without autotools"
-$at_quiet $as_echo_n " 55: $at_desc              "
+at_desc_line=" 56: $at_desc              "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
-  $as_echo "55. subproject.at:109: testing ..."
+  $as_echo "56. subproject.at:109: testing ..."
   $at_traceon
 
 
@@ -13828,9 +11945,9 @@ main ()
     return 1;
   }
 
-  module = lt_dlopen("module.la");
+  module = lt_dlopen("./module.la");
   if (!module) {
-    fprintf (stderr, "error dlopening module.la: %s\n", lt_dlerror());
+    fprintf (stderr, "error dlopening ./module.la: %s\n", lt_dlerror());
     goto finish;
   }
 
@@ -13904,30 +12021,21 @@ $LIBTOOLIZE --copy --ltdl=sub/ltdl
 ( $unset LIBTOOL LIBTOOLIZE
   for target in all
   do
-    { $at_traceoff
+    { set +x
 $as_echo "$at_srcdir/subproject.at:113: \$MAKE \$target CC=\"\$CC\" LIBTOOLFLAGS=\"\$LIBTOOLFLAGS\" CPPFLAGS=\"\$CPPFLAGS\"  \\
      CFLAGS=\"\$CFLAGS\" LDFLAGS=\"\$LDFLAGS\" SHELL=\"\$SHELL\" MAKE=\"\${MAKE-make}\" \\
      CONFIGURE_OPTIONS=\"\$configure_options\""
-echo subproject.at:113 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains a ${...} parameter expansion)'
-   false; }; then
-  ( $at_traceon; $MAKE $target CC="$CC" LIBTOOLFLAGS="$LIBTOOLFLAGS" CPPFLAGS="$CPPFLAGS"  \
-     CFLAGS="$CFLAGS" LDFLAGS="$LDFLAGS" SHELL="$SHELL" MAKE="${MAKE-make}" \
-     CONFIGURE_OPTIONS="$configure_options" ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $MAKE $target CC="$CC" LIBTOOLFLAGS="$LIBTOOLFLAGS" CPPFLAGS="$CPPFLAGS"  \
+at_fn_check_prepare_notrace 'a ${...} parameter expansion' "subproject.at:113"
+( $at_check_trace; $MAKE $target CC="$CC" LIBTOOLFLAGS="$LIBTOOLFLAGS" CPPFLAGS="$CPPFLAGS"  \
      CFLAGS="$CFLAGS" LDFLAGS="$LDFLAGS" SHELL="$SHELL" MAKE="${MAKE-make}" \
-     CONFIGURE_OPTIONS="$configure_options" ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+     CONFIGURE_OPTIONS="$configure_options"
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/subproject.at:113"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/subproject.at:113"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
   done )
@@ -13935,48 +12043,39 @@ $at_traceon; }
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/subproject.at:117: ./ltdldemo; lt_status=\$?; if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"./ltdldemo\" || test -x \"./ltdldemo\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo subproject.at:117 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; ./ltdldemo; lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "./ltdldemo" || test -x "./ltdldemo"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; ./ltdldemo; lt_status=$?; if test $lt_status -eq 0; then :;
+at_fn_check_prepare_notrace 'an embedded newline' "subproject.at:117"
+( $at_check_trace; ./ltdldemo; lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "./ltdldemo" || test -x "./ltdldemo"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/subproject.at:117"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/subproject.at:117"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
-#AT_STOP_55
-#AT_START_56
-# 56. nonrecursive.at:78: compiling softlinked libltdl
+read at_status <"$at_status_file"
+#AT_STOP_56
+#AT_START_57
+# 57. nonrecursive.at:78: compiling softlinked libltdl
 at_setup_line='nonrecursive.at:78'
-at_func_banner 9
+at_fn_banner 9
 at_desc="compiling softlinked libltdl"
-$at_quiet $as_echo_n " 56: $at_desc                   "
+at_desc_line=" 57: $at_desc                   "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
       test "$ACLOCAL" = no && at_xfail=yes
       test "$AUTOHEADER" = no && at_xfail=yes
@@ -13984,12 +12083,12 @@ at_xfail=no
       test "$AUTOCONF" = no && at_xfail=yes
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
-  $as_echo "56. nonrecursive.at:78: testing ..."
+  $as_echo "57. nonrecursive.at:78: testing ..."
   $at_traceon
 
 
 cat >configure.ac <<'_ATEOF'
-AC_INIT([subdirectory-demo], 2.2.6, bug-libtool@gnu.org)
+AC_INIT([subdirectory-demo], 2.2.6b, bug-libtool@gnu.org)
 LT_CONFIG_LTDL_DIR([ltdl])
 AC_CONFIG_AUX_DIR([ltdl/config])
 AC_CONFIG_MACRO_DIR([ltdl/m4])
@@ -14036,23 +12135,17 @@ echo 'int dummy = 0;' > foo.c
 $LIBTOOLIZE --ltdl
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/nonrecursive.at:83: if test -f ltdl/configure.ac; then false; fi"
-echo nonrecursive.at:83 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; if test -f ltdl/configure.ac; then false; fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; if test -f ltdl/configure.ac; then false; fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/nonrecursive.at:83"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_trace "nonrecursive.at:83"
+( $at_check_trace; if test -f ltdl/configure.ac; then false; fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/nonrecursive.at:83"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -14062,138 +12155,97 @@ for file in argz.c lt__dirent.c lt__strl
 done
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/nonrecursive.at:90: \$ACLOCAL -I ltdl/m4"
-echo nonrecursive.at:90 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$ACLOCAL -I ltdl/m4"; then
-  ( $at_traceon; $ACLOCAL -I ltdl/m4 ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $ACLOCAL -I ltdl/m4 ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$ACLOCAL -I ltdl/m4" "nonrecursive.at:90"
+( $at_check_trace; $ACLOCAL -I ltdl/m4
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/nonrecursive.at:90"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/nonrecursive.at:90"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/nonrecursive.at:90: \$AUTOHEADER "
-echo nonrecursive.at:90 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$AUTOHEADER "; then
-  ( $at_traceon; $AUTOHEADER  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $AUTOHEADER  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$AUTOHEADER " "nonrecursive.at:90"
+( $at_check_trace; $AUTOHEADER
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/nonrecursive.at:90"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/nonrecursive.at:90"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/nonrecursive.at:90: \$AUTOMAKE --add-missing --copy"
-echo nonrecursive.at:90 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$AUTOMAKE --add-missing --copy"; then
-  ( $at_traceon; $AUTOMAKE --add-missing --copy ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $AUTOMAKE --add-missing --copy ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$AUTOMAKE --add-missing --copy" "nonrecursive.at:90"
+( $at_check_trace; $AUTOMAKE --add-missing --copy
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; tee stderr <"$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/nonrecursive.at:90"
-if $at_failed; then
-  { $at_traceoff
-$as_echo "$at_srcdir/nonrecursive.at:90: grep 'require .*but have' stderr && (exit 77)"
-echo nonrecursive.at:90 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; grep 'require .*but have' stderr && (exit 77) ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; grep 'require .*but have' stderr && (exit 77) ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 1 $at_status "$at_srcdir/nonrecursive.at:90"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/nonrecursive.at:90"
+if $at_failed; then :
+  { set +x
+$as_echo "$at_srcdir/nonrecursive.at:90: grep 'require .*but have' stderr && (exit 77)"
+at_fn_check_prepare_trace "nonrecursive.at:90"
+( $at_check_trace; grep 'require .*but have' stderr && (exit 77)
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 1 $at_status "$at_srcdir/nonrecursive.at:90"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 fi
-
-$at_failed && at_func_log_failure
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/nonrecursive.at:90: \$AUTOCONF "
-echo nonrecursive.at:90 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$AUTOCONF "; then
-  ( $at_traceon; $AUTOCONF  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $AUTOCONF  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$AUTOCONF " "nonrecursive.at:90"
+( $at_check_trace; $AUTOCONF
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/nonrecursive.at:90"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/nonrecursive.at:90"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
 ( SHELL=${CONFIG_SHELL-/bin/sh}
-   { $at_traceoff
+   { set +x
 $as_echo "$at_srcdir/nonrecursive.at:90: CONFIG_SHELL=\$SHELL \$SHELL ./configure \$configure_options "
-echo nonrecursive.at:90 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options "; then
-  ( $at_traceon; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options " "nonrecursive.at:90"
+( $at_check_trace; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/nonrecursive.at:90"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/nonrecursive.at:90"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
  )
@@ -14201,61 +12253,49 @@ $at_traceon; }
 ( $unset LIBTOOL LIBTOOLIZE
   for target in all $tst_dist
   do
-    { $at_traceoff
+    { set +x
 $as_echo "$at_srcdir/nonrecursive.at:90: \$MAKE \$target "
-echo nonrecursive.at:90 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$MAKE $target "; then
-  ( $at_traceon; $MAKE $target  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $MAKE $target  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$MAKE $target " "nonrecursive.at:90"
+( $at_check_trace; $MAKE $target
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/nonrecursive.at:90"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/nonrecursive.at:90"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
   done )
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/nonrecursive.at:93: test -f ltdl/libltdlc.la"
-echo nonrecursive.at:93 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; test -f ltdl/libltdlc.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; test -f ltdl/libltdlc.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/nonrecursive.at:93"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_trace "nonrecursive.at:93"
+( $at_check_trace; test -f ltdl/libltdlc.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/nonrecursive.at:93"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
-#AT_STOP_56
-#AT_START_57
-# 57. nonrecursive.at:102: compiling copied libltdl
+read at_status <"$at_status_file"
+#AT_STOP_57
+#AT_START_58
+# 58. nonrecursive.at:102: compiling copied libltdl
 at_setup_line='nonrecursive.at:102'
-at_func_banner 9
+at_fn_banner 9
 at_desc="compiling copied libltdl"
-$at_quiet $as_echo_n " 57: $at_desc                       "
+at_desc_line=" 58: $at_desc                       "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
       test "$ACLOCAL" = no && at_xfail=yes
       test "$AUTOHEADER" = no && at_xfail=yes
@@ -14263,12 +12303,12 @@ at_xfail=no
       test "$AUTOCONF" = no && at_xfail=yes
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
-  $as_echo "57. nonrecursive.at:102: testing ..."
+  $as_echo "58. nonrecursive.at:102: testing ..."
   $at_traceon
 
 
 cat >configure.ac <<'_ATEOF'
-AC_INIT([subdirectory-demo], 2.2.6, bug-libtool@gnu.org)
+AC_INIT([subdirectory-demo], 2.2.6b, bug-libtool@gnu.org)
 LT_CONFIG_LTDL_DIR([ltdl])
 AC_CONFIG_AUX_DIR([ltdl/config])
 AC_CONFIG_MACRO_DIR([ltdl/m4])
@@ -14315,23 +12355,17 @@ echo 'int dummy = 0;' > foo.c
 $LIBTOOLIZE --copy --ltdl
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/nonrecursive.at:107: if test -f ltdl/configure.ac; then false; fi"
-echo nonrecursive.at:107 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; if test -f ltdl/configure.ac; then false; fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; if test -f ltdl/configure.ac; then false; fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/nonrecursive.at:107"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_trace "nonrecursive.at:107"
+( $at_check_trace; if test -f ltdl/configure.ac; then false; fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/nonrecursive.at:107"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -14341,138 +12375,97 @@ for file in argz.c lt__dirent.c lt__strl
 done
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/nonrecursive.at:114: \$ACLOCAL -I ltdl/m4"
-echo nonrecursive.at:114 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$ACLOCAL -I ltdl/m4"; then
-  ( $at_traceon; $ACLOCAL -I ltdl/m4 ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $ACLOCAL -I ltdl/m4 ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$ACLOCAL -I ltdl/m4" "nonrecursive.at:114"
+( $at_check_trace; $ACLOCAL -I ltdl/m4
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/nonrecursive.at:114"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/nonrecursive.at:114"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/nonrecursive.at:114: \$AUTOHEADER "
-echo nonrecursive.at:114 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$AUTOHEADER "; then
-  ( $at_traceon; $AUTOHEADER  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $AUTOHEADER  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$AUTOHEADER " "nonrecursive.at:114"
+( $at_check_trace; $AUTOHEADER
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/nonrecursive.at:114"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/nonrecursive.at:114"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/nonrecursive.at:114: \$AUTOMAKE --add-missing --copy"
-echo nonrecursive.at:114 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$AUTOMAKE --add-missing --copy"; then
-  ( $at_traceon; $AUTOMAKE --add-missing --copy ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $AUTOMAKE --add-missing --copy ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$AUTOMAKE --add-missing --copy" "nonrecursive.at:114"
+( $at_check_trace; $AUTOMAKE --add-missing --copy
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; tee stderr <"$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/nonrecursive.at:114"
-if $at_failed; then
-  { $at_traceoff
+at_fn_check_status 0 $at_status "$at_srcdir/nonrecursive.at:114"
+if $at_failed; then :
+  { set +x
 $as_echo "$at_srcdir/nonrecursive.at:114: grep 'require .*but have' stderr && (exit 77)"
-echo nonrecursive.at:114 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; grep 'require .*but have' stderr && (exit 77) ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; grep 'require .*but have' stderr && (exit 77) ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 1 $at_status "$at_srcdir/nonrecursive.at:114"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_trace "nonrecursive.at:114"
+( $at_check_trace; grep 'require .*but have' stderr && (exit 77)
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 1 $at_status "$at_srcdir/nonrecursive.at:114"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 fi
-
-$at_failed && at_func_log_failure
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/nonrecursive.at:114: \$AUTOCONF "
-echo nonrecursive.at:114 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$AUTOCONF "; then
-  ( $at_traceon; $AUTOCONF  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $AUTOCONF  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$AUTOCONF " "nonrecursive.at:114"
+( $at_check_trace; $AUTOCONF
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/nonrecursive.at:114"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/nonrecursive.at:114"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
 ( SHELL=${CONFIG_SHELL-/bin/sh}
-   { $at_traceoff
+   { set +x
 $as_echo "$at_srcdir/nonrecursive.at:114: CONFIG_SHELL=\$SHELL \$SHELL ./configure \$configure_options "
-echo nonrecursive.at:114 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options "; then
-  ( $at_traceon; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options " "nonrecursive.at:114"
+( $at_check_trace; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/nonrecursive.at:114"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/nonrecursive.at:114"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
  )
@@ -14480,61 +12473,49 @@ $at_traceon; }
 ( $unset LIBTOOL LIBTOOLIZE
   for target in all $tst_dist
   do
-    { $at_traceoff
+    { set +x
 $as_echo "$at_srcdir/nonrecursive.at:114: \$MAKE \$target "
-echo nonrecursive.at:114 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$MAKE $target "; then
-  ( $at_traceon; $MAKE $target  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $MAKE $target  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$MAKE $target " "nonrecursive.at:114"
+( $at_check_trace; $MAKE $target
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/nonrecursive.at:114"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/nonrecursive.at:114"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
   done )
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/nonrecursive.at:117: test -f ltdl/libltdlc.la"
-echo nonrecursive.at:117 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; test -f ltdl/libltdlc.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; test -f ltdl/libltdlc.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/nonrecursive.at:117"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_trace "nonrecursive.at:117"
+( $at_check_trace; test -f ltdl/libltdlc.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/nonrecursive.at:117"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
-#AT_STOP_57
-#AT_START_58
-# 58. nonrecursive.at:126: installable libltdl
+read at_status <"$at_status_file"
+#AT_STOP_58
+#AT_START_59
+# 59. nonrecursive.at:126: installable libltdl
 at_setup_line='nonrecursive.at:126'
-at_func_banner 9
+at_fn_banner 9
 at_desc="installable libltdl"
-$at_quiet $as_echo_n " 58: $at_desc                            "
+at_desc_line=" 59: $at_desc                            "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
       test "$ACLOCAL" = no && at_xfail=yes
       test "$AUTOHEADER" = no && at_xfail=yes
@@ -14542,12 +12523,12 @@ at_xfail=no
       test "$AUTOCONF" = no && at_xfail=yes
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
-  $as_echo "58. nonrecursive.at:126: testing ..."
+  $as_echo "59. nonrecursive.at:126: testing ..."
   $at_traceon
 
 
 cat >configure.ac <<'_ATEOF'
-AC_INIT([subdirectory-demo], 2.2.6, bug-libtool@gnu.org)
+AC_INIT([subdirectory-demo], 2.2.6b, bug-libtool@gnu.org)
 LT_CONFIG_LTDL_DIR([ltdl])
 AC_CONFIG_AUX_DIR([ltdl/config])
 AC_CONFIG_MACRO_DIR([ltdl/m4])
@@ -14596,23 +12577,17 @@ prefix=`pwd`/_inst
 $LIBTOOLIZE --copy --ltdl
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/nonrecursive.at:133: if test -f ltdl/configure.ac; then false; fi"
-echo nonrecursive.at:133 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; if test -f ltdl/configure.ac; then false; fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; if test -f ltdl/configure.ac; then false; fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/nonrecursive.at:133"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_trace "nonrecursive.at:133"
+( $at_check_trace; if test -f ltdl/configure.ac; then false; fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/nonrecursive.at:133"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -14622,138 +12597,97 @@ for file in argz.c lt__dirent.c lt__strl
 done
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/nonrecursive.at:140: \$ACLOCAL -I ltdl/m4"
-echo nonrecursive.at:140 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$ACLOCAL -I ltdl/m4"; then
-  ( $at_traceon; $ACLOCAL -I ltdl/m4 ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $ACLOCAL -I ltdl/m4 ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$ACLOCAL -I ltdl/m4" "nonrecursive.at:140"
+( $at_check_trace; $ACLOCAL -I ltdl/m4
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/nonrecursive.at:140"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/nonrecursive.at:140"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/nonrecursive.at:140: \$AUTOHEADER "
-echo nonrecursive.at:140 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$AUTOHEADER "; then
-  ( $at_traceon; $AUTOHEADER  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $AUTOHEADER  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$AUTOHEADER " "nonrecursive.at:140"
+( $at_check_trace; $AUTOHEADER
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/nonrecursive.at:140"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/nonrecursive.at:140"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/nonrecursive.at:140: \$AUTOMAKE --add-missing --copy"
-echo nonrecursive.at:140 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$AUTOMAKE --add-missing --copy"; then
-  ( $at_traceon; $AUTOMAKE --add-missing --copy ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $AUTOMAKE --add-missing --copy ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$AUTOMAKE --add-missing --copy" "nonrecursive.at:140"
+( $at_check_trace; $AUTOMAKE --add-missing --copy
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; tee stderr <"$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/nonrecursive.at:140"
-if $at_failed; then
-  { $at_traceoff
+at_fn_check_status 0 $at_status "$at_srcdir/nonrecursive.at:140"
+if $at_failed; then :
+  { set +x
 $as_echo "$at_srcdir/nonrecursive.at:140: grep 'require .*but have' stderr && (exit 77)"
-echo nonrecursive.at:140 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; grep 'require .*but have' stderr && (exit 77) ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; grep 'require .*but have' stderr && (exit 77) ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 1 $at_status "$at_srcdir/nonrecursive.at:140"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_trace "nonrecursive.at:140"
+( $at_check_trace; grep 'require .*but have' stderr && (exit 77)
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 1 $at_status "$at_srcdir/nonrecursive.at:140"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 fi
-
-$at_failed && at_func_log_failure
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/nonrecursive.at:140: \$AUTOCONF "
-echo nonrecursive.at:140 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$AUTOCONF "; then
-  ( $at_traceon; $AUTOCONF  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $AUTOCONF  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$AUTOCONF " "nonrecursive.at:140"
+( $at_check_trace; $AUTOCONF
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/nonrecursive.at:140"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/nonrecursive.at:140"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
 ( SHELL=${CONFIG_SHELL-/bin/sh}
-   { $at_traceoff
+   { set +x
 $as_echo "$at_srcdir/nonrecursive.at:140: CONFIG_SHELL=\$SHELL \$SHELL ./configure \$configure_options --enable-ltdl-install --prefix=\$prefix"
-echo nonrecursive.at:140 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options --enable-ltdl-install --prefix=$prefix"; then
-  ( $at_traceon; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options --enable-ltdl-install --prefix=$prefix ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options --enable-ltdl-install --prefix=$prefix ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options --enable-ltdl-install --prefix=$prefix" "nonrecursive.at:140"
+( $at_check_trace; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options --enable-ltdl-install --prefix=$prefix
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/nonrecursive.at:140"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/nonrecursive.at:140"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
  )
@@ -14761,92 +12695,72 @@ $at_traceon; }
 ( $unset LIBTOOL LIBTOOLIZE
   for target in all install $tst_dist
   do
-    { $at_traceoff
+    { set +x
 $as_echo "$at_srcdir/nonrecursive.at:140: \$MAKE \$target "
-echo nonrecursive.at:140 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$MAKE $target "; then
-  ( $at_traceon; $MAKE $target  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $MAKE $target  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$MAKE $target " "nonrecursive.at:140"
+( $at_check_trace; $MAKE $target
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/nonrecursive.at:140"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/nonrecursive.at:140"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
   done )
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/nonrecursive.at:143: test -f \$prefix/lib/libltdl.la"
-echo nonrecursive.at:143 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "test -f $prefix/lib/libltdl.la"; then
-  ( $at_traceon; test -f $prefix/lib/libltdl.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; test -f $prefix/lib/libltdl.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/nonrecursive.at:143"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_dynamic "test -f $prefix/lib/libltdl.la" "nonrecursive.at:143"
+( $at_check_trace; test -f $prefix/lib/libltdl.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/nonrecursive.at:143"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/nonrecursive.at:144: test -f \$prefix/include/ltdl.h"
-echo nonrecursive.at:144 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "test -f $prefix/include/ltdl.h"; then
-  ( $at_traceon; test -f $prefix/include/ltdl.h ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; test -f $prefix/include/ltdl.h ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/nonrecursive.at:144"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_dynamic "test -f $prefix/include/ltdl.h" "nonrecursive.at:144"
+( $at_check_trace; test -f $prefix/include/ltdl.h
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/nonrecursive.at:144"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
-#AT_STOP_58
-#AT_START_59
-# 59. recursive.at:60: compiling softlinked libltdl
+read at_status <"$at_status_file"
+#AT_STOP_59
+#AT_START_60
+# 60. recursive.at:60: compiling softlinked libltdl
 at_setup_line='recursive.at:60'
-at_func_banner 10
+at_fn_banner 10
 at_desc="compiling softlinked libltdl"
-$at_quiet $as_echo_n " 59: $at_desc                   "
+at_desc_line=" 60: $at_desc                   "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
       case ,$AUTORECONF,$AUTOCONF,$AUTOHEADER,$ACLOCAL,$AUTOMAKE, in *,no,*) :;; *) false;; esac && at_xfail=yes
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
-  $as_echo "59. recursive.at:60: testing ..."
+  $as_echo "60. recursive.at:60: testing ..."
   $at_traceon
 
 
 cat >configure.ac <<'_ATEOF'
-AC_INIT([subdirectory-demo], 2.2.6, bug-libtool@gnu.org)
+AC_INIT([subdirectory-demo], 2.2.6b, bug-libtool@gnu.org)
 LT_CONFIG_LTDL_DIR([ltdl])
 AC_CONFIG_AUX_DIR([ltdl/config])
 AC_CONFIG_MACRO_DIR([ltdl/m4])
@@ -14876,89 +12790,63 @@ echo 'int dummy = 0;' > foo.c
 $LIBTOOLIZE --ltdl
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/recursive.at:65: if test -f ltdl/configure.ac; then false; fi"
-echo recursive.at:65 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; if test -f ltdl/configure.ac; then false; fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; if test -f ltdl/configure.ac; then false; fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/recursive.at:65"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_trace "recursive.at:65"
+( $at_check_trace; if test -f ltdl/configure.ac; then false; fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/recursive.at:65"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/recursive.at:67: \$AUTORECONF --force --verbose --install"
-echo recursive.at:67 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$AUTORECONF --force --verbose --install"; then
-  ( $at_traceon; $AUTORECONF --force --verbose --install ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $AUTORECONF --force --verbose --install ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$AUTORECONF --force --verbose --install" "recursive.at:67"
+( $at_check_trace; $AUTORECONF --force --verbose --install
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; tee stderr <"$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/recursive.at:67"
-if $at_failed; then
-  { $at_traceoff
+at_fn_check_status 0 $at_status "$at_srcdir/recursive.at:67"
+if $at_failed; then :
+  { set +x
 $as_echo "$at_srcdir/recursive.at:67: grep 'require .*but have' stderr && (exit 77)"
-echo recursive.at:67 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; grep 'require .*but have' stderr && (exit 77) ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; grep 'require .*but have' stderr && (exit 77) ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 1 $at_status "$at_srcdir/recursive.at:67"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_trace "recursive.at:67"
+( $at_check_trace; grep 'require .*but have' stderr && (exit 77)
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 1 $at_status "$at_srcdir/recursive.at:67"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 fi
-
-$at_failed && at_func_log_failure
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
 ( SHELL=${CONFIG_SHELL-/bin/sh}
-   { $at_traceoff
+   { set +x
 $as_echo "$at_srcdir/recursive.at:68: CONFIG_SHELL=\$SHELL \$SHELL ./configure \$configure_options "
-echo recursive.at:68 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options "; then
-  ( $at_traceon; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options " "recursive.at:68"
+( $at_check_trace; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/recursive.at:68"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/recursive.at:68"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
  )
@@ -14966,70 +12854,58 @@ $at_traceon; }
 ( $unset LIBTOOL LIBTOOLIZE
   for target in all $tst_dist
   do
-    { $at_traceoff
+    { set +x
 $as_echo "$at_srcdir/recursive.at:69: \$MAKE \$target "
-echo recursive.at:69 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$MAKE $target "; then
-  ( $at_traceon; $MAKE $target  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $MAKE $target  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$MAKE $target " "recursive.at:69"
+( $at_check_trace; $MAKE $target
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/recursive.at:69"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/recursive.at:69"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
   done )
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/recursive.at:71: test -f ltdl/libltdlc.la"
-echo recursive.at:71 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; test -f ltdl/libltdlc.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; test -f ltdl/libltdlc.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/recursive.at:71"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_trace "recursive.at:71"
+( $at_check_trace; test -f ltdl/libltdlc.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/recursive.at:71"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
-#AT_STOP_59
-#AT_START_60
-# 60. recursive.at:80: compiling copied libltdl
+read at_status <"$at_status_file"
+#AT_STOP_60
+#AT_START_61
+# 61. recursive.at:80: compiling copied libltdl
 at_setup_line='recursive.at:80'
-at_func_banner 10
+at_fn_banner 10
 at_desc="compiling copied libltdl"
-$at_quiet $as_echo_n " 60: $at_desc                       "
+at_desc_line=" 61: $at_desc                       "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
       case ,$AUTORECONF,$AUTOCONF,$AUTOHEADER,$ACLOCAL,$AUTOMAKE, in *,no,*) :;; *) false;; esac && at_xfail=yes
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
-  $as_echo "60. recursive.at:80: testing ..."
+  $as_echo "61. recursive.at:80: testing ..."
   $at_traceon
 
 
 cat >configure.ac <<'_ATEOF'
-AC_INIT([subdirectory-demo], 2.2.6, bug-libtool@gnu.org)
+AC_INIT([subdirectory-demo], 2.2.6b, bug-libtool@gnu.org)
 LT_CONFIG_LTDL_DIR([ltdl])
 AC_CONFIG_AUX_DIR([ltdl/config])
 AC_CONFIG_MACRO_DIR([ltdl/m4])
@@ -15059,89 +12935,63 @@ echo 'int dummy = 0;' > foo.c
 $LIBTOOLIZE --copy --ltdl
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/recursive.at:85: if test -f ltdl/configure.ac; then false; fi"
-echo recursive.at:85 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; if test -f ltdl/configure.ac; then false; fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; if test -f ltdl/configure.ac; then false; fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/recursive.at:85"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_trace "recursive.at:85"
+( $at_check_trace; if test -f ltdl/configure.ac; then false; fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/recursive.at:85"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/recursive.at:87: \$AUTORECONF --force --verbose --install"
-echo recursive.at:87 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$AUTORECONF --force --verbose --install"; then
-  ( $at_traceon; $AUTORECONF --force --verbose --install ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $AUTORECONF --force --verbose --install ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$AUTORECONF --force --verbose --install" "recursive.at:87"
+( $at_check_trace; $AUTORECONF --force --verbose --install
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; tee stderr <"$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/recursive.at:87"
-if $at_failed; then
-  { $at_traceoff
+at_fn_check_status 0 $at_status "$at_srcdir/recursive.at:87"
+if $at_failed; then :
+  { set +x
 $as_echo "$at_srcdir/recursive.at:87: grep 'require .*but have' stderr && (exit 77)"
-echo recursive.at:87 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; grep 'require .*but have' stderr && (exit 77) ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; grep 'require .*but have' stderr && (exit 77) ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 1 $at_status "$at_srcdir/recursive.at:87"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_trace "recursive.at:87"
+( $at_check_trace; grep 'require .*but have' stderr && (exit 77)
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 1 $at_status "$at_srcdir/recursive.at:87"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 fi
-
-$at_failed && at_func_log_failure
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
 ( SHELL=${CONFIG_SHELL-/bin/sh}
-   { $at_traceoff
+   { set +x
 $as_echo "$at_srcdir/recursive.at:88: CONFIG_SHELL=\$SHELL \$SHELL ./configure \$configure_options "
-echo recursive.at:88 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options "; then
-  ( $at_traceon; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options " "recursive.at:88"
+( $at_check_trace; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/recursive.at:88"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/recursive.at:88"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
  )
@@ -15149,70 +12999,58 @@ $at_traceon; }
 ( $unset LIBTOOL LIBTOOLIZE
   for target in all $tst_dist
   do
-    { $at_traceoff
+    { set +x
 $as_echo "$at_srcdir/recursive.at:89: \$MAKE \$target "
-echo recursive.at:89 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$MAKE $target "; then
-  ( $at_traceon; $MAKE $target  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $MAKE $target  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$MAKE $target " "recursive.at:89"
+( $at_check_trace; $MAKE $target
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/recursive.at:89"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/recursive.at:89"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
   done )
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/recursive.at:91: test -f ltdl/libltdlc.la"
-echo recursive.at:91 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; test -f ltdl/libltdlc.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; test -f ltdl/libltdlc.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/recursive.at:91"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_trace "recursive.at:91"
+( $at_check_trace; test -f ltdl/libltdlc.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/recursive.at:91"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
-#AT_STOP_60
-#AT_START_61
-# 61. recursive.at:100: installable libltdl
+read at_status <"$at_status_file"
+#AT_STOP_61
+#AT_START_62
+# 62. recursive.at:100: installable libltdl
 at_setup_line='recursive.at:100'
-at_func_banner 10
+at_fn_banner 10
 at_desc="installable libltdl"
-$at_quiet $as_echo_n " 61: $at_desc                            "
+at_desc_line=" 62: $at_desc                            "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
       case ,$AUTORECONF,$AUTOCONF,$AUTOHEADER,$ACLOCAL,$AUTOMAKE, in *,no,*) :;; *) false;; esac && at_xfail=yes
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
-  $as_echo "61. recursive.at:100: testing ..."
+  $as_echo "62. recursive.at:100: testing ..."
   $at_traceon
 
 
 cat >configure.ac <<'_ATEOF'
-AC_INIT([subdirectory-demo], 2.2.6, bug-libtool@gnu.org)
+AC_INIT([subdirectory-demo], 2.2.6b, bug-libtool@gnu.org)
 LT_CONFIG_LTDL_DIR([ltdl])
 AC_CONFIG_AUX_DIR([ltdl/config])
 AC_CONFIG_MACRO_DIR([ltdl/m4])
@@ -15244,89 +13082,63 @@ prefix=`pwd`/_inst
 $LIBTOOLIZE --copy --ltdl
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/recursive.at:107: if test -f ltdl/configure.ac; then false; fi"
-echo recursive.at:107 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; if test -f ltdl/configure.ac; then false; fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; if test -f ltdl/configure.ac; then false; fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/recursive.at:107"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_trace "recursive.at:107"
+( $at_check_trace; if test -f ltdl/configure.ac; then false; fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/recursive.at:107"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/recursive.at:109: \$AUTORECONF --force --verbose --install"
-echo recursive.at:109 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$AUTORECONF --force --verbose --install"; then
-  ( $at_traceon; $AUTORECONF --force --verbose --install ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $AUTORECONF --force --verbose --install ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$AUTORECONF --force --verbose --install" "recursive.at:109"
+( $at_check_trace; $AUTORECONF --force --verbose --install
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; tee stderr <"$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/recursive.at:109"
-if $at_failed; then
-  { $at_traceoff
+at_fn_check_status 0 $at_status "$at_srcdir/recursive.at:109"
+if $at_failed; then :
+  { set +x
 $as_echo "$at_srcdir/recursive.at:109: grep 'require .*but have' stderr && (exit 77)"
-echo recursive.at:109 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; grep 'require .*but have' stderr && (exit 77) ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; grep 'require .*but have' stderr && (exit 77) ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 1 $at_status "$at_srcdir/recursive.at:109"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_trace "recursive.at:109"
+( $at_check_trace; grep 'require .*but have' stderr && (exit 77)
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 1 $at_status "$at_srcdir/recursive.at:109"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 fi
-
-$at_failed && at_func_log_failure
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
 ( SHELL=${CONFIG_SHELL-/bin/sh}
-   { $at_traceoff
+   { set +x
 $as_echo "$at_srcdir/recursive.at:110: CONFIG_SHELL=\$SHELL \$SHELL ./configure \$configure_options --enable-ltdl-install --prefix=\$prefix"
-echo recursive.at:110 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options --enable-ltdl-install --prefix=$prefix"; then
-  ( $at_traceon; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options --enable-ltdl-install --prefix=$prefix ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options --enable-ltdl-install --prefix=$prefix ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options --enable-ltdl-install --prefix=$prefix" "recursive.at:110"
+( $at_check_trace; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options --enable-ltdl-install --prefix=$prefix
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/recursive.at:110"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/recursive.at:110"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
  )
@@ -15334,126 +13146,92 @@ $at_traceon; }
 ( $unset LIBTOOL LIBTOOLIZE
   for target in all install $tst_dist
   do
-    { $at_traceoff
+    { set +x
 $as_echo "$at_srcdir/recursive.at:111: \$MAKE \$target "
-echo recursive.at:111 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$MAKE $target "; then
-  ( $at_traceon; $MAKE $target  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $MAKE $target  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$MAKE $target " "recursive.at:111"
+( $at_check_trace; $MAKE $target
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/recursive.at:111"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/recursive.at:111"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
   done )
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/recursive.at:113: test -f \$prefix/lib/libltdl.la"
-echo recursive.at:113 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "test -f $prefix/lib/libltdl.la"; then
-  ( $at_traceon; test -f $prefix/lib/libltdl.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; test -f $prefix/lib/libltdl.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/recursive.at:113"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_dynamic "test -f $prefix/lib/libltdl.la" "recursive.at:113"
+( $at_check_trace; test -f $prefix/lib/libltdl.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/recursive.at:113"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/recursive.at:114: test -f \$prefix/include/ltdl.h"
-echo recursive.at:114 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "test -f $prefix/include/ltdl.h"; then
-  ( $at_traceon; test -f $prefix/include/ltdl.h ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; test -f $prefix/include/ltdl.h ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/recursive.at:114"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_dynamic "test -f $prefix/include/ltdl.h" "recursive.at:114"
+( $at_check_trace; test -f $prefix/include/ltdl.h
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/recursive.at:114"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
-#AT_STOP_61
-#AT_START_62
-# 62. template.at:27: simple template test
+read at_status <"$at_status_file"
+#AT_STOP_62
+#AT_START_63
+# 63. template.at:27: simple template test
 at_setup_line='template.at:27'
-at_func_banner 11
+at_fn_banner 11
 at_desc="simple template test"
-$at_quiet $as_echo_n " 62: $at_desc                           "
+at_desc_line=" 63: $at_desc                           "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
-  $as_echo "62. template.at:27: testing ..."
+  $as_echo "63. template.at:27: testing ..."
   $at_traceon
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/template.at:28: { test -n \"\$CXX\" && test \"X\$CXX\" != Xno; } || (exit 77)"
-echo template.at:28 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "{ test -n \"$CXX\" && test \"X$CXX\" != Xno; } || (exit 77)"; then
-  ( $at_traceon; { test -n "$CXX" && test "X$CXX" != Xno; } || (exit 77) ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; { test -n "$CXX" && test "X$CXX" != Xno; } || (exit 77) ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/template.at:28"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_dynamic "{ test -n \"$CXX\" && test \"X$CXX\" != Xno; } || (exit 77)" "template.at:28"
+( $at_check_trace; { test -n "$CXX" && test "X$CXX" != Xno; } || (exit 77)
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/template.at:28"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/template.at:28: test \"X\$CXX\" != Xg++ || (g++ -v >/dev/null 2>&1) || (exit 77)"
-echo template.at:28 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "test \"X$CXX\" != Xg++ || (g++ -v >/dev/null 2>&1) || (exit 77)"; then
-  ( $at_traceon; test "X$CXX" != Xg++ || (g++ -v >/dev/null 2>&1) || (exit 77) ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; test "X$CXX" != Xg++ || (g++ -v >/dev/null 2>&1) || (exit 77) ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/template.at:28"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_dynamic "test \"X$CXX\" != Xg++ || (g++ -v >/dev/null 2>&1) || (exit 77)" "template.at:28"
+( $at_check_trace; test "X$CXX" != Xg++ || (g++ -v >/dev/null 2>&1) || (exit 77)
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/template.at:28"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -15512,156 +13290,104 @@ int main()
 _ATEOF
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/template.at:79: \$LIBTOOL --tag=CXX --mode=compile \$CXX -I. \$CPPFLAGS \$CXXFLAGS -c -o alib.lo alib.cpp"
-echo template.at:79 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --tag=CXX --mode=compile $CXX -I. $CPPFLAGS $CXXFLAGS -c -o alib.lo alib.cpp"; then
-  ( $at_traceon; $LIBTOOL --tag=CXX --mode=compile $CXX -I. $CPPFLAGS $CXXFLAGS -c -o alib.lo alib.cpp ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --tag=CXX --mode=compile $CXX -I. $CPPFLAGS $CXXFLAGS -c -o alib.lo alib.cpp ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --tag=CXX --mode=compile $CXX -I. $CPPFLAGS $CXXFLAGS -c -o alib.lo alib.cpp" "template.at:79"
+( $at_check_trace; $LIBTOOL --tag=CXX --mode=compile $CXX -I. $CPPFLAGS $CXXFLAGS -c -o alib.lo alib.cpp
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/template.at:79"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/template.at:79"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/template.at:81: \$LIBTOOL --tag=CXX --mode=compile \$CXX -I. \$CPPFLAGS \$CXXFLAGS -c -o aclib.lo aclib.cpp"
-echo template.at:81 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --tag=CXX --mode=compile $CXX -I. $CPPFLAGS $CXXFLAGS -c -o aclib.lo aclib.cpp"; then
-  ( $at_traceon; $LIBTOOL --tag=CXX --mode=compile $CXX -I. $CPPFLAGS $CXXFLAGS -c -o aclib.lo aclib.cpp ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --tag=CXX --mode=compile $CXX -I. $CPPFLAGS $CXXFLAGS -c -o aclib.lo aclib.cpp ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --tag=CXX --mode=compile $CXX -I. $CPPFLAGS $CXXFLAGS -c -o aclib.lo aclib.cpp" "template.at:81"
+( $at_check_trace; $LIBTOOL --tag=CXX --mode=compile $CXX -I. $CPPFLAGS $CXXFLAGS -c -o aclib.lo aclib.cpp
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/template.at:81"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/template.at:81"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/template.at:83: \$LIBTOOL --tag=CXX --mode=link \$CXX \$CPPFLAGS \$CXXFLAGS \$LDFLAGS -o libaclib.la aclib.lo"
-echo template.at:83 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --tag=CXX --mode=link $CXX $CPPFLAGS $CXXFLAGS $LDFLAGS -o libaclib.la aclib.lo"; then
-  ( $at_traceon; $LIBTOOL --tag=CXX --mode=link $CXX $CPPFLAGS $CXXFLAGS $LDFLAGS -o libaclib.la aclib.lo ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --tag=CXX --mode=link $CXX $CPPFLAGS $CXXFLAGS $LDFLAGS -o libaclib.la aclib.lo ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --tag=CXX --mode=link $CXX $CPPFLAGS $CXXFLAGS $LDFLAGS -o libaclib.la aclib.lo" "template.at:83"
+( $at_check_trace; $LIBTOOL --tag=CXX --mode=link $CXX $CPPFLAGS $CXXFLAGS $LDFLAGS -o libaclib.la aclib.lo
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/template.at:83"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/template.at:83"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/template.at:85: \$LIBTOOL --tag=CXX --mode=link \$CXX \$CPPFLAGS \$CXXFLAGS \$LDFLAGS -o libalib.la -rpath /nonexistent alib.lo libaclib.la"
-echo template.at:85 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --tag=CXX --mode=link $CXX $CPPFLAGS $CXXFLAGS $LDFLAGS -o libalib.la -rpath /nonexistent alib.lo libaclib.la"; then
-  ( $at_traceon; $LIBTOOL --tag=CXX --mode=link $CXX $CPPFLAGS $CXXFLAGS $LDFLAGS -o libalib.la -rpath /nonexistent alib.lo libaclib.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --tag=CXX --mode=link $CXX $CPPFLAGS $CXXFLAGS $LDFLAGS -o libalib.la -rpath /nonexistent alib.lo libaclib.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --tag=CXX --mode=link $CXX $CPPFLAGS $CXXFLAGS $LDFLAGS -o libalib.la -rpath /nonexistent alib.lo libaclib.la" "template.at:85"
+( $at_check_trace; $LIBTOOL --tag=CXX --mode=link $CXX $CPPFLAGS $CXXFLAGS $LDFLAGS -o libalib.la -rpath /nonexistent alib.lo libaclib.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/template.at:85"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/template.at:85"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/template.at:87: \$CXX -I. \$CPPFLAGS \$CXXFLAGS -c prog.cpp"
-echo template.at:87 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$CXX -I. $CPPFLAGS $CXXFLAGS -c prog.cpp"; then
-  ( $at_traceon; $CXX -I. $CPPFLAGS $CXXFLAGS -c prog.cpp ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $CXX -I. $CPPFLAGS $CXXFLAGS -c prog.cpp ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$CXX -I. $CPPFLAGS $CXXFLAGS -c prog.cpp" "template.at:87"
+( $at_check_trace; $CXX -I. $CPPFLAGS $CXXFLAGS -c prog.cpp
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/template.at:87"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/template.at:87"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/template.at:89: \$LIBTOOL --tag=CXX --mode=link \$CXX \$CPPFLAGS \$CXXFLAGS \$LDFLAGS -o prog prog.\$OBJEXT libalib.la"
-echo template.at:89 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --tag=CXX --mode=link $CXX $CPPFLAGS $CXXFLAGS $LDFLAGS -o prog prog.$OBJEXT libalib.la"; then
-  ( $at_traceon; $LIBTOOL --tag=CXX --mode=link $CXX $CPPFLAGS $CXXFLAGS $LDFLAGS -o prog prog.$OBJEXT libalib.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --tag=CXX --mode=link $CXX $CPPFLAGS $CXXFLAGS $LDFLAGS -o prog prog.$OBJEXT libalib.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --tag=CXX --mode=link $CXX $CPPFLAGS $CXXFLAGS $LDFLAGS -o prog prog.$OBJEXT libalib.la" "template.at:89"
+( $at_check_trace; $LIBTOOL --tag=CXX --mode=link $CXX $CPPFLAGS $CXXFLAGS $LDFLAGS -o prog prog.$OBJEXT libalib.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/template.at:89"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/template.at:89"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/template.at:92: ./prog; lt_status=\$?; if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"./prog\" || test -x \"./prog\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo template.at:92 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; ./prog; lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "./prog" || test -x "./prog"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; ./prog; lt_status=$?; if test $lt_status -eq 0; then :;
+at_fn_check_prepare_notrace 'an embedded newline' "template.at:92"
+( $at_check_trace; ./prog; lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "./prog" || test -x "./prog"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/template.at:92"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/template.at:92"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -15670,62 +13396,49 @@ $at_traceon; }
 
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
-#AT_STOP_62
-#AT_START_63
-# 63. template.at:126: template test with subdirs
+read at_status <"$at_status_file"
+#AT_STOP_63
+#AT_START_64
+# 64. template.at:126: template test with subdirs
 at_setup_line='template.at:126'
-at_func_banner 11
+at_fn_banner 11
 at_desc="template test with subdirs"
-$at_quiet $as_echo_n " 63: $at_desc                     "
+at_desc_line=" 64: $at_desc                     "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
-  $as_echo "63. template.at:126: testing ..."
+  $as_echo "64. template.at:126: testing ..."
   $at_traceon
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/template.at:127: { test -n \"\$CXX\" && test \"X\$CXX\" != Xno; } || (exit 77)"
-echo template.at:127 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "{ test -n \"$CXX\" && test \"X$CXX\" != Xno; } || (exit 77)"; then
-  ( $at_traceon; { test -n "$CXX" && test "X$CXX" != Xno; } || (exit 77) ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; { test -n "$CXX" && test "X$CXX" != Xno; } || (exit 77) ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/template.at:127"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_dynamic "{ test -n \"$CXX\" && test \"X$CXX\" != Xno; } || (exit 77)" "template.at:127"
+( $at_check_trace; { test -n "$CXX" && test "X$CXX" != Xno; } || (exit 77)
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/template.at:127"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/template.at:127: test \"X\$CXX\" != Xg++ || (g++ -v >/dev/null 2>&1) || (exit 77)"
-echo template.at:127 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "test \"X$CXX\" != Xg++ || (g++ -v >/dev/null 2>&1) || (exit 77)"; then
-  ( $at_traceon; test "X$CXX" != Xg++ || (g++ -v >/dev/null 2>&1) || (exit 77) ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; test "X$CXX" != Xg++ || (g++ -v >/dev/null 2>&1) || (exit 77) ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/template.at:127"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_dynamic "test \"X$CXX\" != Xg++ || (g++ -v >/dev/null 2>&1) || (exit 77)" "template.at:127"
+( $at_check_trace; test "X$CXX" != Xg++ || (g++ -v >/dev/null 2>&1) || (exit 77)
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/template.at:127"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -15826,614 +13539,414 @@ eval `$LIBTOOL --tag=CXX --config | grep
 case $compiler_c_o in
 yes)
   main_o=sub/main.$OBJEXT
-  { $at_traceoff
+  { set +x
 $as_echo "$at_srcdir/template.at:220: \$CXX \$CPPFLAGS \$CXXFLAGS -c -o \$main_o ../src/sub/main.cpp"
-echo template.at:220 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$CXX $CPPFLAGS $CXXFLAGS -c -o $main_o ../src/sub/main.cpp"; then
-  ( $at_traceon; $CXX $CPPFLAGS $CXXFLAGS -c -o $main_o ../src/sub/main.cpp ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $CXX $CPPFLAGS $CXXFLAGS -c -o $main_o ../src/sub/main.cpp ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$CXX $CPPFLAGS $CXXFLAGS -c -o $main_o ../src/sub/main.cpp" "template.at:220"
+( $at_check_trace; $CXX $CPPFLAGS $CXXFLAGS -c -o $main_o ../src/sub/main.cpp
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/template.at:220"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/template.at:220"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
   ;;
 *)
   main_o=main.$OBJEXT
-  { $at_traceoff
+  { set +x
 $as_echo "$at_srcdir/template.at:225: \$CXX \$CPPFLAGS \$CXXFLAGS -c ../src/sub/main.cpp"
-echo template.at:225 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$CXX $CPPFLAGS $CXXFLAGS -c ../src/sub/main.cpp"; then
-  ( $at_traceon; $CXX $CPPFLAGS $CXXFLAGS -c ../src/sub/main.cpp ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $CXX $CPPFLAGS $CXXFLAGS -c ../src/sub/main.cpp ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$CXX $CPPFLAGS $CXXFLAGS -c ../src/sub/main.cpp" "template.at:225"
+( $at_check_trace; $CXX $CPPFLAGS $CXXFLAGS -c ../src/sub/main.cpp
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/template.at:225"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/template.at:225"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
   ;;
 esac
 
-{ $at_traceoff
-$as_echo "$at_srcdir/template.at:230: \$LIBTOOL --tag=CXX --mode=compile \$CXX \$CPPFLAGS \$CXXFLAGS -c -o lib/a.lo ../src/lib/a.cpp"
-echo template.at:230 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --tag=CXX --mode=compile $CXX $CPPFLAGS $CXXFLAGS -c -o lib/a.lo ../src/lib/a.cpp"; then
-  ( $at_traceon; $LIBTOOL --tag=CXX --mode=compile $CXX $CPPFLAGS $CXXFLAGS -c -o lib/a.lo ../src/lib/a.cpp ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --tag=CXX --mode=compile $CXX $CPPFLAGS $CXXFLAGS -c -o lib/a.lo ../src/lib/a.cpp ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+{ set +x
+$as_echo "$at_srcdir/template.at:230: \$LIBTOOL --tag=CXX --mode=compile \$CXX \$CPPFLAGS \$CXXFLAGS -c -o lib/a.lo ../src/lib/a.cpp"
+at_fn_check_prepare_dynamic "$LIBTOOL --tag=CXX --mode=compile $CXX $CPPFLAGS $CXXFLAGS -c -o lib/a.lo ../src/lib/a.cpp" "template.at:230"
+( $at_check_trace; $LIBTOOL --tag=CXX --mode=compile $CXX $CPPFLAGS $CXXFLAGS -c -o lib/a.lo ../src/lib/a.cpp
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/template.at:230"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/template.at:230"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/template.at:232: \$LIBTOOL --tag=CXX --mode=compile \$CXX \$CPPFLAGS \$CXXFLAGS -c -o lib2/b.lo ../src/lib2/b.cpp"
-echo template.at:232 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --tag=CXX --mode=compile $CXX $CPPFLAGS $CXXFLAGS -c -o lib2/b.lo ../src/lib2/b.cpp"; then
-  ( $at_traceon; $LIBTOOL --tag=CXX --mode=compile $CXX $CPPFLAGS $CXXFLAGS -c -o lib2/b.lo ../src/lib2/b.cpp ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --tag=CXX --mode=compile $CXX $CPPFLAGS $CXXFLAGS -c -o lib2/b.lo ../src/lib2/b.cpp ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --tag=CXX --mode=compile $CXX $CPPFLAGS $CXXFLAGS -c -o lib2/b.lo ../src/lib2/b.cpp" "template.at:232"
+( $at_check_trace; $LIBTOOL --tag=CXX --mode=compile $CXX $CPPFLAGS $CXXFLAGS -c -o lib2/b.lo ../src/lib2/b.cpp
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/template.at:232"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/template.at:232"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/template.at:234: \$CXX \$CPPFLAGS \$CXXFLAGS -c ../src/sub/main.cpp"
-echo template.at:234 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$CXX $CPPFLAGS $CXXFLAGS -c ../src/sub/main.cpp"; then
-  ( $at_traceon; $CXX $CPPFLAGS $CXXFLAGS -c ../src/sub/main.cpp ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $CXX $CPPFLAGS $CXXFLAGS -c ../src/sub/main.cpp ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$CXX $CPPFLAGS $CXXFLAGS -c ../src/sub/main.cpp" "template.at:234"
+( $at_check_trace; $CXX $CPPFLAGS $CXXFLAGS -c ../src/sub/main.cpp
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/template.at:234"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/template.at:234"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 # both convenience
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/template.at:237: \$LIBTOOL --tag=CXX --mode=link \$CXX \$CXXFLAGS \$LDFLAGS -o lib/liba.la lib/a.lo"
-echo template.at:237 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o lib/liba.la lib/a.lo"; then
-  ( $at_traceon; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o lib/liba.la lib/a.lo ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o lib/liba.la lib/a.lo ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o lib/liba.la lib/a.lo" "template.at:237"
+( $at_check_trace; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o lib/liba.la lib/a.lo
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/template.at:237"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/template.at:237"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/template.at:239: \$LIBTOOL --tag=CXX --mode=link \$CXX \$CXXFLAGS \$LDFLAGS -o lib2/libb.la lib2/b.lo"
-echo template.at:239 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o lib2/libb.la lib2/b.lo"; then
-  ( $at_traceon; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o lib2/libb.la lib2/b.lo ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o lib2/libb.la lib2/b.lo ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o lib2/libb.la lib2/b.lo" "template.at:239"
+( $at_check_trace; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o lib2/libb.la lib2/b.lo
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/template.at:239"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/template.at:239"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/template.at:241: \$LIBTOOL --tag=CXX --mode=link \$CXX \$CXXFLAGS \$LDFLAGS -o sub/main \$main_o lib2/libb.la lib/liba.la"
-echo template.at:241 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o sub/main $main_o lib2/libb.la lib/liba.la"; then
-  ( $at_traceon; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o sub/main $main_o lib2/libb.la lib/liba.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o sub/main $main_o lib2/libb.la lib/liba.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o sub/main $main_o lib2/libb.la lib/liba.la" "template.at:241"
+( $at_check_trace; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o sub/main $main_o lib2/libb.la lib/liba.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/template.at:241"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/template.at:241"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/template.at:243: ./sub/main; lt_status=\$?; if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"./sub/main\" || test -x \"./sub/main\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo template.at:243 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; ./sub/main; lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "./sub/main" || test -x "./sub/main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; ./sub/main; lt_status=$?; if test $lt_status -eq 0; then :;
+at_fn_check_prepare_notrace 'an embedded newline' "template.at:243"
+( $at_check_trace; ./sub/main; lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "./sub/main" || test -x "./sub/main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_skip $at_status "$at_srcdir/template.at:243"
-
-$at_failed && at_func_log_failure
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_skip $at_status "$at_srcdir/template.at:243"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 # lib convenience
 if $noskip; then
-  { $at_traceoff
+  { set +x
 $as_echo "$at_srcdir/template.at:246: \$LIBTOOL --tag=CXX --mode=link \$CXX \$CXXFLAGS \$LDFLAGS -o lib2/libb.la lib2/b.lo -rpath /foo"
-echo template.at:246 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o lib2/libb.la lib2/b.lo -rpath /foo"; then
-  ( $at_traceon; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o lib2/libb.la lib2/b.lo -rpath /foo ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o lib2/libb.la lib2/b.lo -rpath /foo ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o lib2/libb.la lib2/b.lo -rpath /foo" "template.at:246"
+( $at_check_trace; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o lib2/libb.la lib2/b.lo -rpath /foo
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/template.at:246"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/template.at:246"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-  { $at_traceoff
+  { set +x
 $as_echo "$at_srcdir/template.at:248: \$LIBTOOL --tag=CXX --mode=link \$CXX \$CXXFLAGS \$LDFLAGS -o sub/main \$main_o lib2/libb.la lib/liba.la"
-echo template.at:248 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o sub/main $main_o lib2/libb.la lib/liba.la"; then
-  ( $at_traceon; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o sub/main $main_o lib2/libb.la lib/liba.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o sub/main $main_o lib2/libb.la lib/liba.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o sub/main $main_o lib2/libb.la lib/liba.la" "template.at:248"
+( $at_check_trace; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o sub/main $main_o lib2/libb.la lib/liba.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/template.at:248"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/template.at:248"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/template.at:250: ./sub/main; lt_status=\$?; if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"./sub/main\" || test -x \"./sub/main\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo template.at:250 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; ./sub/main; lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "./sub/main" || test -x "./sub/main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; ./sub/main; lt_status=$?; if test $lt_status -eq 0; then :;
+at_fn_check_prepare_notrace 'an embedded newline' "template.at:250"
+( $at_check_trace; ./sub/main; lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "./sub/main" || test -x "./sub/main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/template.at:250"
-
-$at_failed && at_func_log_failure
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/template.at:250"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 fi
 
 # both installed
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/template.at:254: \$LIBTOOL --tag=CXX --mode=link \$CXX \$CXXFLAGS \$LDFLAGS -o lib/liba.la lib/a.lo -rpath /foo"
-echo template.at:254 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o lib/liba.la lib/a.lo -rpath /foo"; then
-  ( $at_traceon; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o lib/liba.la lib/a.lo -rpath /foo ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o lib/liba.la lib/a.lo -rpath /foo ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o lib/liba.la lib/a.lo -rpath /foo" "template.at:254"
+( $at_check_trace; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o lib/liba.la lib/a.lo -rpath /foo
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/template.at:254"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/template.at:254"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/template.at:256: \$LIBTOOL --tag=CXX --mode=link \$CXX \$CXXFLAGS \$LDFLAGS -o lib2/libb.la lib2/b.lo -rpath /bar"
-echo template.at:256 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o lib2/libb.la lib2/b.lo -rpath /bar"; then
-  ( $at_traceon; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o lib2/libb.la lib2/b.lo -rpath /bar ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o lib2/libb.la lib2/b.lo -rpath /bar ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o lib2/libb.la lib2/b.lo -rpath /bar" "template.at:256"
+( $at_check_trace; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o lib2/libb.la lib2/b.lo -rpath /bar
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/template.at:256"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/template.at:256"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/template.at:258: \$LIBTOOL --tag=CXX --mode=link \$CXX \$CXXFLAGS \$LDFLAGS -o sub/main \$main_o lib2/libb.la lib/liba.la"
-echo template.at:258 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o sub/main $main_o lib2/libb.la lib/liba.la"; then
-  ( $at_traceon; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o sub/main $main_o lib2/libb.la lib/liba.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o sub/main $main_o lib2/libb.la lib/liba.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o sub/main $main_o lib2/libb.la lib/liba.la" "template.at:258"
+( $at_check_trace; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o sub/main $main_o lib2/libb.la lib/liba.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/template.at:258"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/template.at:258"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/template.at:260: ./sub/main; lt_status=\$?; if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"./sub/main\" || test -x \"./sub/main\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo template.at:260 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; ./sub/main; lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "./sub/main" || test -x "./sub/main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; ./sub/main; lt_status=$?; if test $lt_status -eq 0; then :;
+at_fn_check_prepare_notrace 'an embedded newline' "template.at:260"
+( $at_check_trace; ./sub/main; lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "./sub/main" || test -x "./sub/main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/template.at:260"
-
-$at_failed && at_func_log_failure
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/template.at:260"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 # both convenience, libb depending on liba
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/template.at:262: \$LIBTOOL --tag=CXX --mode=link \$CXX \$CXXFLAGS \$LDFLAGS -o lib/liba.la lib/a.lo"
-echo template.at:262 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o lib/liba.la lib/a.lo"; then
-  ( $at_traceon; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o lib/liba.la lib/a.lo ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o lib/liba.la lib/a.lo ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o lib/liba.la lib/a.lo" "template.at:262"
+( $at_check_trace; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o lib/liba.la lib/a.lo
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/template.at:262"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/template.at:262"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/template.at:264: \$LIBTOOL --tag=CXX --mode=link \$CXX \$CXXFLAGS \$LDFLAGS -o lib2/libb.la lib2/b.lo lib/liba.la"
-echo template.at:264 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o lib2/libb.la lib2/b.lo lib/liba.la"; then
-  ( $at_traceon; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o lib2/libb.la lib2/b.lo lib/liba.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o lib2/libb.la lib2/b.lo lib/liba.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o lib2/libb.la lib2/b.lo lib/liba.la" "template.at:264"
+( $at_check_trace; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o lib2/libb.la lib2/b.lo lib/liba.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/template.at:264"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/template.at:264"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/template.at:266: \$LIBTOOL --tag=CXX --mode=link \$CXX \$CXXFLAGS \$LDFLAGS -o sub/main \$main_o lib2/libb.la"
-echo template.at:266 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o sub/main $main_o lib2/libb.la"; then
-  ( $at_traceon; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o sub/main $main_o lib2/libb.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o sub/main $main_o lib2/libb.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o sub/main $main_o lib2/libb.la" "template.at:266"
+( $at_check_trace; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o sub/main $main_o lib2/libb.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/template.at:266"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/template.at:266"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/template.at:268: ./sub/main; lt_status=\$?; if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"./sub/main\" || test -x \"./sub/main\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo template.at:268 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; ./sub/main; lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "./sub/main" || test -x "./sub/main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; ./sub/main; lt_status=$?; if test $lt_status -eq 0; then :;
+at_fn_check_prepare_notrace 'an embedded newline' "template.at:268"
+( $at_check_trace; ./sub/main; lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "./sub/main" || test -x "./sub/main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/template.at:268"
-
-$at_failed && at_func_log_failure
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/template.at:268"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 # lib convenience
 if $noskip; then
 
-  { $at_traceoff
+  { set +x
 $as_echo "$at_srcdir/template.at:272: \$LIBTOOL --tag=CXX --mode=link \$CXX \$CXXFLAGS \$LDFLAGS -o lib2/libb.la lib2/b.lo lib/liba.la -rpath /foo"
-echo template.at:272 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o lib2/libb.la lib2/b.lo lib/liba.la -rpath /foo"; then
-  ( $at_traceon; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o lib2/libb.la lib2/b.lo lib/liba.la -rpath /foo ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o lib2/libb.la lib2/b.lo lib/liba.la -rpath /foo ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o lib2/libb.la lib2/b.lo lib/liba.la -rpath /foo" "template.at:272"
+( $at_check_trace; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o lib2/libb.la lib2/b.lo lib/liba.la -rpath /foo
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/template.at:272"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/template.at:272"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-  { $at_traceoff
+  { set +x
 $as_echo "$at_srcdir/template.at:274: \$LIBTOOL --tag=CXX --mode=link \$CXX \$CXXFLAGS \$LDFLAGS -o sub/main \$main_o lib2/libb.la"
-echo template.at:274 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o sub/main $main_o lib2/libb.la"; then
-  ( $at_traceon; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o sub/main $main_o lib2/libb.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o sub/main $main_o lib2/libb.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o sub/main $main_o lib2/libb.la" "template.at:274"
+( $at_check_trace; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o sub/main $main_o lib2/libb.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/template.at:274"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/template.at:274"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/template.at:276: ./sub/main; lt_status=\$?; if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"./sub/main\" || test -x \"./sub/main\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo template.at:276 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; ./sub/main; lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "./sub/main" || test -x "./sub/main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; ./sub/main; lt_status=$?; if test $lt_status -eq 0; then :;
+at_fn_check_prepare_notrace 'an embedded newline' "template.at:276"
+( $at_check_trace; ./sub/main; lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "./sub/main" || test -x "./sub/main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/template.at:276"
-
-$at_failed && at_func_log_failure
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/template.at:276"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 fi
 # both installed
 if $noskip; then
-  { $at_traceoff
+  { set +x
 $as_echo "$at_srcdir/template.at:280: \$LIBTOOL --tag=CXX --mode=link \$CXX \$CXXFLAGS \$LDFLAGS -o lib2/libb.la lib2/b.lo lib/liba.la -rpath /bar"
-echo template.at:280 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o lib2/libb.la lib2/b.lo lib/liba.la -rpath /bar"; then
-  ( $at_traceon; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o lib2/libb.la lib2/b.lo lib/liba.la -rpath /bar ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o lib2/libb.la lib2/b.lo lib/liba.la -rpath /bar ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o lib2/libb.la lib2/b.lo lib/liba.la -rpath /bar" "template.at:280"
+( $at_check_trace; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o lib2/libb.la lib2/b.lo lib/liba.la -rpath /bar
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/template.at:280"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/template.at:280"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-  { $at_traceoff
+  { set +x
 $as_echo "$at_srcdir/template.at:282: \$LIBTOOL --tag=CXX --mode=link \$CXX \$CXXFLAGS \$LDFLAGS -o sub/main \$main_o lib2/libb.la"
-echo template.at:282 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o sub/main $main_o lib2/libb.la"; then
-  ( $at_traceon; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o sub/main $main_o lib2/libb.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o sub/main $main_o lib2/libb.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o sub/main $main_o lib2/libb.la" "template.at:282"
+( $at_check_trace; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o sub/main $main_o lib2/libb.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/template.at:282"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/template.at:282"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/template.at:284: ./sub/main; lt_status=\$?; if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"./sub/main\" || test -x \"./sub/main\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo template.at:284 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; ./sub/main; lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "./sub/main" || test -x "./sub/main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; ./sub/main; lt_status=$?; if test $lt_status -eq 0; then :;
+at_fn_check_prepare_notrace 'an embedded newline' "template.at:284"
+( $at_check_trace; ./sub/main; lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "./sub/main" || test -x "./sub/main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/template.at:284"
-
-$at_failed && at_func_log_failure
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/template.at:284"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -16441,84 +13954,64 @@ fi
 
 cd ..
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/template.at:289: \$noskip || (exit 77)"
-echo template.at:289 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$noskip || (exit 77)"; then
-  ( $at_traceon; $noskip || (exit 77) ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $noskip || (exit 77) ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/template.at:289"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_dynamic "$noskip || (exit 77)" "template.at:289"
+( $at_check_trace; $noskip || (exit 77)
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/template.at:289"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
-#AT_STOP_63
-#AT_START_64
-# 64. ctor.at:27: C++ static constructors
+read at_status <"$at_status_file"
+#AT_STOP_64
+#AT_START_65
+# 65. ctor.at:27: C++ static constructors
 at_setup_line='ctor.at:27'
-at_func_banner 12
+at_fn_banner 12
 at_desc="C++ static constructors"
-$at_quiet $as_echo_n " 64: $at_desc                        "
+at_desc_line=" 65: $at_desc                        "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
-  $as_echo "64. ctor.at:27: testing ..."
+  $as_echo "65. ctor.at:27: testing ..."
   $at_traceon
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/ctor.at:28: { test -n \"\$CXX\" && test \"X\$CXX\" != Xno; } || (exit 77)"
-echo ctor.at:28 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "{ test -n \"$CXX\" && test \"X$CXX\" != Xno; } || (exit 77)"; then
-  ( $at_traceon; { test -n "$CXX" && test "X$CXX" != Xno; } || (exit 77) ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; { test -n "$CXX" && test "X$CXX" != Xno; } || (exit 77) ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/ctor.at:28"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_dynamic "{ test -n \"$CXX\" && test \"X$CXX\" != Xno; } || (exit 77)" "ctor.at:28"
+( $at_check_trace; { test -n "$CXX" && test "X$CXX" != Xno; } || (exit 77)
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/ctor.at:28"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/ctor.at:28: test \"X\$CXX\" != Xg++ || (g++ -v >/dev/null 2>&1) || (exit 77)"
-echo ctor.at:28 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "test \"X$CXX\" != Xg++ || (g++ -v >/dev/null 2>&1) || (exit 77)"; then
-  ( $at_traceon; test "X$CXX" != Xg++ || (g++ -v >/dev/null 2>&1) || (exit 77) ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; test "X$CXX" != Xg++ || (g++ -v >/dev/null 2>&1) || (exit 77) ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/ctor.at:28"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_dynamic "test \"X$CXX\" != Xg++ || (g++ -v >/dev/null 2>&1) || (exit 77)" "ctor.at:28"
+( $at_check_trace; test "X$CXX" != Xg++ || (g++ -v >/dev/null 2>&1) || (exit 77)
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/ctor.at:28"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -16552,154 +14045,113 @@ int main(void)
 _ATEOF
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/ctor.at:56: \$LIBTOOL --tag=CXX --mode=compile \$CXX \$CPPFLAGS \$CXXFLAGS \\
 	  -c libctor.cpp -o libctor.lo"
-echo ctor.at:56 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; $LIBTOOL --tag=CXX --mode=compile $CXX $CPPFLAGS $CXXFLAGS \
-	  -c libctor.cpp -o libctor.lo ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --tag=CXX --mode=compile $CXX $CPPFLAGS $CXXFLAGS \
-	  -c libctor.cpp -o libctor.lo ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_notrace 'an embedded newline' "ctor.at:56"
+( $at_check_trace; $LIBTOOL --tag=CXX --mode=compile $CXX $CPPFLAGS $CXXFLAGS \
+	  -c libctor.cpp -o libctor.lo
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/ctor.at:56"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/ctor.at:56"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/ctor.at:58: \$LIBTOOL --tag=CXX --mode=compile \$CXX \$CPPFLAGS \$CXXFLAGS \\
 	  -c main.cpp -o main.lo"
-echo ctor.at:58 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; $LIBTOOL --tag=CXX --mode=compile $CXX $CPPFLAGS $CXXFLAGS \
-	  -c main.cpp -o main.lo ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --tag=CXX --mode=compile $CXX $CPPFLAGS $CXXFLAGS \
-	  -c main.cpp -o main.lo ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_notrace 'an embedded newline' "ctor.at:58"
+( $at_check_trace; $LIBTOOL --tag=CXX --mode=compile $CXX $CPPFLAGS $CXXFLAGS \
+	  -c main.cpp -o main.lo
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/ctor.at:58"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/ctor.at:58"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/ctor.at:60: \$LIBTOOL --tag=CXX --mode=link \$CXX \$CXXFLAGS \$LDFLAGS \\
 	  libctor.lo -o libctor.la -rpath /none"
-echo ctor.at:60 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS \
-	  libctor.lo -o libctor.la -rpath /none ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS \
-	  libctor.lo -o libctor.la -rpath /none ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_notrace 'an embedded newline' "ctor.at:60"
+( $at_check_trace; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS \
+	  libctor.lo -o libctor.la -rpath /none
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/ctor.at:60"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/ctor.at:60"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/ctor.at:62: \$LIBTOOL --tag=CXX --mode=link \$CXX \$CXXFLAGS \$LDFLAGS \\
 	  main.lo libctor.la -o main"
-echo ctor.at:62 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS \
-	  main.lo libctor.la -o main ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS \
-	  main.lo libctor.la -o main ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_notrace 'an embedded newline' "ctor.at:62"
+( $at_check_trace; $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS \
+	  main.lo libctor.la -o main
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/ctor.at:62"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/ctor.at:62"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/ctor.at:65: ./main; lt_status=\$?; if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"./main\" || test -x \"./main\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo ctor.at:65 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; ./main; lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "./main" || test -x "./main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; ./main; lt_status=$?; if test $lt_status -eq 0; then :;
+at_fn_check_prepare_notrace 'an embedded newline' "ctor.at:65"
+( $at_check_trace; ./main; lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "./main" || test -x "./main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/ctor.at:65"
-
-$at_failed && at_func_log_failure
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/ctor.at:65"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
-#AT_STOP_64
-#AT_START_65
-# 65. early-libtool.at:32: config.status
+read at_status <"$at_status_file"
+#AT_STOP_65
+#AT_START_66
+# 66. early-libtool.at:32: config.status
 at_setup_line='early-libtool.at:32'
-at_func_banner 13
+at_fn_banner 13
 at_desc="config.status"
-$at_quiet $as_echo_n " 65: $at_desc                                  "
+at_desc_line=" 66: $at_desc                                  "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
       test "$ACLOCAL" = no && at_xfail=yes
       test "$AUTOCONF" = no && at_xfail=yes
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
-  $as_echo "65. early-libtool.at:32: testing ..."
+  $as_echo "66. early-libtool.at:32: testing ..."
   $at_traceon
 
 
 cat >configure.ac <<'_ATEOF'
-AC_INIT([libtool-demo], 2.2.6, bug-libtool@gnu.org)
+AC_INIT([libtool-demo], 2.2.6b, bug-libtool@gnu.org)
 AC_CONFIG_MACRO_DIR([m4])
 LT_INIT
 AC_CONFIG_FILES([Makefile])
@@ -16779,71 +14231,50 @@ chmod a+x missing
 $LIBTOOLIZE --copy --verbose --install
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/early-libtool.at:109: \$ACLOCAL -I m4"
-echo early-libtool.at:109 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$ACLOCAL -I m4"; then
-  ( $at_traceon; $ACLOCAL -I m4 ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $ACLOCAL -I m4 ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$ACLOCAL -I m4" "early-libtool.at:109"
+( $at_check_trace; $ACLOCAL -I m4
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/early-libtool.at:109"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/early-libtool.at:109"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/early-libtool.at:110: \$AUTOCONF --force"
-echo early-libtool.at:110 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$AUTOCONF --force"; then
-  ( $at_traceon; $AUTOCONF --force ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $AUTOCONF --force ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$AUTOCONF --force" "early-libtool.at:110"
+( $at_check_trace; $AUTOCONF --force
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/early-libtool.at:110"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/early-libtool.at:110"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
 ( SHELL=${CONFIG_SHELL-/bin/sh}
-   { $at_traceoff
+   { set +x
 $as_echo "$at_srcdir/early-libtool.at:111: CONFIG_SHELL=\$SHELL \$SHELL ./configure \$configure_options "
-echo early-libtool.at:111 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options "; then
-  ( $at_traceon; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options " "early-libtool.at:111"
+( $at_check_trace; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/early-libtool.at:111"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/early-libtool.at:111"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
  )
@@ -16851,24 +14282,17 @@ $at_traceon; }
 ( $unset LIBTOOL LIBTOOLIZE
   for target in all
   do
-    { $at_traceoff
+    { set +x
 $as_echo "$at_srcdir/early-libtool.at:112: \$MAKE \$target "
-echo early-libtool.at:112 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$MAKE $target "; then
-  ( $at_traceon; $MAKE $target  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $MAKE $target  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$MAKE $target " "early-libtool.at:112"
+( $at_check_trace; $MAKE $target
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/early-libtool.at:112"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/early-libtool.at:112"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
   done )
@@ -16876,97 +14300,76 @@ $at_traceon; }
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/early-libtool.at:114: ./hell; lt_status=\$?; if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"./hell\" || test -x \"./hell\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo early-libtool.at:114 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; ./hell; lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "./hell" || test -x "./hell"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; ./hell; lt_status=$?; if test $lt_status -eq 0; then :;
+at_fn_check_prepare_notrace 'an embedded newline' "early-libtool.at:114"
+( $at_check_trace; ./hell; lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "./hell" || test -x "./hell"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 echo stdout:; tee stdout <"$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/early-libtool.at:114"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/early-libtool.at:114"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/early-libtool.at:115: grep 'Welcome to GNU Hell' stdout"
-echo early-libtool.at:115 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; grep 'Welcome to GNU Hell' stdout ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; grep 'Welcome to GNU Hell' stdout ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+at_fn_check_prepare_trace "early-libtool.at:115"
+( $at_check_trace; grep 'Welcome to GNU Hell' stdout
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/early-libtool.at:115"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/early-libtool.at:115"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/early-libtool.at:116: grep 'This is not GNU Hello.' stdout"
-echo early-libtool.at:116 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; grep 'This is not GNU Hello.' stdout ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; grep 'This is not GNU Hello.' stdout ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+at_fn_check_prepare_trace "early-libtool.at:116"
+( $at_check_trace; grep 'This is not GNU Hello.' stdout
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/early-libtool.at:116"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/early-libtool.at:116"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
-#AT_STOP_65
-#AT_START_66
-# 66. early-libtool.at:126: config.lt
+read at_status <"$at_status_file"
+#AT_STOP_66
+#AT_START_67
+# 67. early-libtool.at:126: config.lt
 at_setup_line='early-libtool.at:126'
-at_func_banner 13
+at_fn_banner 13
 at_desc="config.lt"
-$at_quiet $as_echo_n " 66: $at_desc                                      "
+at_desc_line=" 67: $at_desc                                      "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
       test "$ACLOCAL" = no && at_xfail=yes
       test "$AUTOCONF" = no && at_xfail=yes
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
-  $as_echo "66. early-libtool.at:126: testing ..."
+  $as_echo "67. early-libtool.at:126: testing ..."
   $at_traceon
 
 
 cat >configure.ac <<'_ATEOF'
-AC_INIT([libtool-demo], 2.2.6, bug-libtool@gnu.org)
+AC_INIT([libtool-demo], 2.2.6b, bug-libtool@gnu.org)
 AC_CONFIG_MACRO_DIR([m4])
 LT_INIT
 LT_OUTPUT
@@ -17059,71 +14462,50 @@ chmod a+x missing
 $LIBTOOLIZE --copy --verbose --install
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/early-libtool.at:216: \$ACLOCAL -I m4"
-echo early-libtool.at:216 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$ACLOCAL -I m4"; then
-  ( $at_traceon; $ACLOCAL -I m4 ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $ACLOCAL -I m4 ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$ACLOCAL -I m4" "early-libtool.at:216"
+( $at_check_trace; $ACLOCAL -I m4
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/early-libtool.at:216"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/early-libtool.at:216"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/early-libtool.at:217: \$AUTOCONF --force"
-echo early-libtool.at:217 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$AUTOCONF --force"; then
-  ( $at_traceon; $AUTOCONF --force ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $AUTOCONF --force ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$AUTOCONF --force" "early-libtool.at:217"
+( $at_check_trace; $AUTOCONF --force
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/early-libtool.at:217"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/early-libtool.at:217"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
 ( SHELL=${CONFIG_SHELL-/bin/sh}
-   { $at_traceoff
+   { set +x
 $as_echo "$at_srcdir/early-libtool.at:218: CONFIG_SHELL=\$SHELL \$SHELL ./configure \$configure_options "
-echo early-libtool.at:218 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options "; then
-  ( $at_traceon; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options " "early-libtool.at:218"
+( $at_check_trace; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/early-libtool.at:218"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/early-libtool.at:218"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
  )
@@ -17131,24 +14513,17 @@ $at_traceon; }
 ( $unset LIBTOOL LIBTOOLIZE
   for target in all
   do
-    { $at_traceoff
+    { set +x
 $as_echo "$at_srcdir/early-libtool.at:219: \$MAKE \$target "
-echo early-libtool.at:219 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$MAKE $target "; then
-  ( $at_traceon; $MAKE $target  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $MAKE $target  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$MAKE $target " "early-libtool.at:219"
+( $at_check_trace; $MAKE $target
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/early-libtool.at:219"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/early-libtool.at:219"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
   done )
@@ -17156,86 +14531,65 @@ $at_traceon; }
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/early-libtool.at:221: ./hell; lt_status=\$?; if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"./hell\" || test -x \"./hell\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo early-libtool.at:221 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; ./hell; lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "./hell" || test -x "./hell"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; ./hell; lt_status=$?; if test $lt_status -eq 0; then :;
+at_fn_check_prepare_notrace 'an embedded newline' "early-libtool.at:221"
+( $at_check_trace; ./hell; lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "./hell" || test -x "./hell"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 echo stdout:; tee stdout <"$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/early-libtool.at:221"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/early-libtool.at:221"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/early-libtool.at:222: grep 'Welcome to GNU Hell' stdout"
-echo early-libtool.at:222 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; grep 'Welcome to GNU Hell' stdout ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; grep 'Welcome to GNU Hell' stdout ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+at_fn_check_prepare_trace "early-libtool.at:222"
+( $at_check_trace; grep 'Welcome to GNU Hell' stdout
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/early-libtool.at:222"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/early-libtool.at:222"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/early-libtool.at:223: grep 'This is not GNU Hello.' stdout"
-echo early-libtool.at:223 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; grep 'This is not GNU Hello.' stdout ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; grep 'This is not GNU Hello.' stdout ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+at_fn_check_prepare_trace "early-libtool.at:223"
+( $at_check_trace; grep 'This is not GNU Hello.' stdout
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/early-libtool.at:223"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/early-libtool.at:223"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
-#AT_STOP_66
-#AT_START_67
-# 67. deplibs-ident.at:32: build tree relpaths
+read at_status <"$at_status_file"
+#AT_STOP_67
+#AT_START_68
+# 68. deplibs-ident.at:32: build tree relpaths
 at_setup_line='deplibs-ident.at:32'
-at_func_banner 14
+at_fn_banner 14
 at_desc="build tree relpaths"
-$at_quiet $as_echo_n " 67: $at_desc                            "
+at_desc_line=" 68: $at_desc                            "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
       case $host in
                  *-*-aix*|hppa*-*-hpux*|*-*-interix*|*-*-openbsd*) false;;
@@ -17243,51 +14597,37 @@ at_xfail=no
                esac && at_xfail=yes
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
-  $as_echo "67. deplibs-ident.at:32: testing ..."
+  $as_echo "68. deplibs-ident.at:32: testing ..."
   $at_traceon
 
 
 
 mkdir a a/b c
 echo 'int c() { return 0; }' > c/libcee.c
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/deplibs-ident.at:37: \$LIBTOOL --mode=compile \$CC \$CPPFLAGS \$CFLAGS -c c/libcee.c -o c/libcee.lo"
-echo deplibs-ident.at:37 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c c/libcee.c -o c/libcee.lo"; then
-  ( $at_traceon; $LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c c/libcee.c -o c/libcee.lo ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c c/libcee.c -o c/libcee.lo ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c c/libcee.c -o c/libcee.lo" "deplibs-ident.at:37"
+( $at_check_trace; $LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c c/libcee.c -o c/libcee.lo
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/deplibs-ident.at:37"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/deplibs-ident.at:37"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/deplibs-ident.at:39: \$LIBTOOL --mode=link \$CC \$CFLAGS \$LDFLAGS -o c/libcee.la c/libcee.lo -rpath /nowhere"
-echo deplibs-ident.at:39 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o c/libcee.la c/libcee.lo -rpath /nowhere"; then
-  ( $at_traceon; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o c/libcee.la c/libcee.lo -rpath /nowhere ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o c/libcee.la c/libcee.lo -rpath /nowhere ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o c/libcee.la c/libcee.lo -rpath /nowhere" "deplibs-ident.at:39"
+( $at_check_trace; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o c/libcee.la c/libcee.lo -rpath /nowhere
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/deplibs-ident.at:39"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/deplibs-ident.at:39"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -17300,44 +14640,30 @@ depl_3="-L../c -lcee"
   for i in 1 2 3; do
     eval depend_on_c=\"\$depl_$i\"
     echo "extern int c(void); int a$i() { return c(); }" > liba$i.c
-    { $at_traceoff
+    { set +x
 $as_echo "$at_srcdir/deplibs-ident.at:51: \$LIBTOOL --mode=compile \$CC \$CPPFLAGS \$CFLAGS -c liba\$i.c"
-echo deplibs-ident.at:51 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c liba$i.c"; then
-  ( $at_traceon; $LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c liba$i.c ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c liba$i.c ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c liba$i.c" "deplibs-ident.at:51"
+( $at_check_trace; $LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c liba$i.c
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/deplibs-ident.at:51"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/deplibs-ident.at:51"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-    { $at_traceoff
+    { set +x
 $as_echo "$at_srcdir/deplibs-ident.at:53: \$LIBTOOL --mode=link \$CC \$CFLAGS \$LDFLAGS -o liba\$i.la liba\$i.lo \$depend_on_c -rpath /nowhere"
-echo deplibs-ident.at:53 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o liba$i.la liba$i.lo $depend_on_c -rpath /nowhere"; then
-  ( $at_traceon; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o liba$i.la liba$i.lo $depend_on_c -rpath /nowhere ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o liba$i.la liba$i.lo $depend_on_c -rpath /nowhere ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o liba$i.la liba$i.lo $depend_on_c -rpath /nowhere" "deplibs-ident.at:53"
+( $at_check_trace; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o liba$i.la liba$i.lo $depend_on_c -rpath /nowhere
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/deplibs-ident.at:53"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/deplibs-ident.at:53"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
   done
@@ -17351,80 +14677,60 @@ _ATEOF
 
 (
   cd a/b
-  { $at_traceoff
+  { set +x
 $as_echo "$at_srcdir/deplibs-ident.at:65: \$CC \$CFLAGS -c b.c"
-echo deplibs-ident.at:65 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$CC $CFLAGS -c b.c"; then
-  ( $at_traceon; $CC $CFLAGS -c b.c ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $CC $CFLAGS -c b.c ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$CC $CFLAGS -c b.c" "deplibs-ident.at:65"
+( $at_check_trace; $CC $CFLAGS -c b.c
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/deplibs-ident.at:65"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/deplibs-ident.at:65"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-  { $at_traceoff
+  { set +x
 $as_echo "$at_srcdir/deplibs-ident.at:66: \$LIBTOOL --mode=link \$CC \$CFLAGS \$LDFLAGS -o b b.\$OBJEXT ../liba1.la ../liba2.la ../liba3.la ../../c/libcee.la -rpath /nowhere"
-echo deplibs-ident.at:66 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o b b.$OBJEXT ../liba1.la ../liba2.la ../liba3.la ../../c/libcee.la -rpath /nowhere"; then
-  ( $at_traceon; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o b b.$OBJEXT ../liba1.la ../liba2.la ../liba3.la ../../c/libcee.la -rpath /nowhere ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o b b.$OBJEXT ../liba1.la ../liba2.la ../liba3.la ../../c/libcee.la -rpath /nowhere ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o b b.$OBJEXT ../liba1.la ../liba2.la ../liba3.la ../../c/libcee.la -rpath /nowhere" "deplibs-ident.at:66"
+( $at_check_trace; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o b b.$OBJEXT ../liba1.la ../liba2.la ../liba3.la ../../c/libcee.la -rpath /nowhere
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; tee stdout <"$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/deplibs-ident.at:66"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/deplibs-ident.at:66"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-  { $at_traceoff
+  { set +x
 $as_echo "$at_srcdir/deplibs-ident.at:68: \$EGREP 'cee.*cee' stdout"
-echo deplibs-ident.at:68 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$EGREP 'cee.*cee' stdout"; then
-  ( $at_traceon; $EGREP 'cee.*cee' stdout ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $EGREP 'cee.*cee' stdout ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$EGREP 'cee.*cee' stdout" "deplibs-ident.at:68"
+( $at_check_trace; $EGREP 'cee.*cee' stdout
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 1 $at_status "$at_srcdir/deplibs-ident.at:68"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 1 $at_status "$at_srcdir/deplibs-ident.at:68"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
   )
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
-#AT_STOP_67
-#AT_START_68
-# 68. configure-iface.at:102: installable libltdl
+read at_status <"$at_status_file"
+#AT_STOP_68
+#AT_START_69
+# 69. configure-iface.at:102: installable libltdl
 at_setup_line='configure-iface.at:102'
-at_func_banner 15
+at_fn_banner 15
 at_desc="installable libltdl"
-$at_quiet $as_echo_n " 68: $at_desc                            "
+at_desc_line=" 69: $at_desc                            "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
       test "$ACLOCAL" = no && at_xfail=yes
       test "$AUTOHEADER" = no && at_xfail=yes
@@ -17432,7 +14738,7 @@ at_xfail=no
       test "$AUTOCONF" = no && at_xfail=yes
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
-  $as_echo "68. configure-iface.at:102: testing ..."
+  $as_echo "69. configure-iface.at:102: testing ..."
   $at_traceon
 
 
@@ -17508,7 +14814,7 @@ _ATEOF
 
 
 cat >configure.ac <<'_ATEOF'
-AC_INIT([installable-ltdl-demo], 2.2.6, bug-libtool@gnu.org)
+AC_INIT([installable-ltdl-demo], 2.2.6b, bug-libtool@gnu.org)
 AC_CONFIG_AUX_DIR([libltdl/config])
 AC_CONFIG_MACRO_DIR([libltdl/m4])
 AC_CONFIG_HEADERS([config.h:config.hin])
@@ -17546,138 +14852,97 @@ prefix=`pwd`/_inst
 $LIBTOOLIZE --ltdl
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/configure-iface.at:141: \$ACLOCAL -I libltdl/m4"
-echo configure-iface.at:141 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$ACLOCAL -I libltdl/m4"; then
-  ( $at_traceon; $ACLOCAL -I libltdl/m4 ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $ACLOCAL -I libltdl/m4 ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$ACLOCAL -I libltdl/m4" "configure-iface.at:141"
+( $at_check_trace; $ACLOCAL -I libltdl/m4
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/configure-iface.at:141"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/configure-iface.at:141"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
-{ $at_traceoff
-$as_echo "$at_srcdir/configure-iface.at:141: \$AUTOHEADER "
-echo configure-iface.at:141 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$AUTOHEADER "; then
-  ( $at_traceon; $AUTOHEADER  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $AUTOHEADER  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+{ set +x
+$as_echo "$at_srcdir/configure-iface.at:141: \$AUTOHEADER "
+at_fn_check_prepare_dynamic "$AUTOHEADER " "configure-iface.at:141"
+( $at_check_trace; $AUTOHEADER
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/configure-iface.at:141"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/configure-iface.at:141"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/configure-iface.at:141: \$AUTOMAKE --add-missing"
-echo configure-iface.at:141 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$AUTOMAKE --add-missing"; then
-  ( $at_traceon; $AUTOMAKE --add-missing ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $AUTOMAKE --add-missing ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$AUTOMAKE --add-missing" "configure-iface.at:141"
+( $at_check_trace; $AUTOMAKE --add-missing
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; tee stderr <"$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/configure-iface.at:141"
-if $at_failed; then
-  { $at_traceoff
+at_fn_check_status 0 $at_status "$at_srcdir/configure-iface.at:141"
+if $at_failed; then :
+  { set +x
 $as_echo "$at_srcdir/configure-iface.at:141: grep 'require .*but have' stderr && (exit 77)"
-echo configure-iface.at:141 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; grep 'require .*but have' stderr && (exit 77) ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; grep 'require .*but have' stderr && (exit 77) ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 1 $at_status "$at_srcdir/configure-iface.at:141"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_trace "configure-iface.at:141"
+( $at_check_trace; grep 'require .*but have' stderr && (exit 77)
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 1 $at_status "$at_srcdir/configure-iface.at:141"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 fi
-
-$at_failed && at_func_log_failure
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/configure-iface.at:141: \$AUTOCONF "
-echo configure-iface.at:141 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$AUTOCONF "; then
-  ( $at_traceon; $AUTOCONF  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $AUTOCONF  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$AUTOCONF " "configure-iface.at:141"
+( $at_check_trace; $AUTOCONF
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/configure-iface.at:141"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/configure-iface.at:141"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
 ( SHELL=${CONFIG_SHELL-/bin/sh}
-   { $at_traceoff
+   { set +x
 $as_echo "$at_srcdir/configure-iface.at:141: CONFIG_SHELL=\$SHELL \$SHELL ./configure \$configure_options --with-included-ltdl --prefix=\$prefix"
-echo configure-iface.at:141 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options --with-included-ltdl --prefix=$prefix"; then
-  ( $at_traceon; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options --with-included-ltdl --prefix=$prefix ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options --with-included-ltdl --prefix=$prefix ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options --with-included-ltdl --prefix=$prefix" "configure-iface.at:141"
+( $at_check_trace; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options --with-included-ltdl --prefix=$prefix
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/configure-iface.at:141"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/configure-iface.at:141"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
  )
@@ -17685,24 +14950,17 @@ $at_traceon; }
 ( $unset LIBTOOL LIBTOOLIZE
   for target in all install
   do
-    { $at_traceoff
+    { set +x
 $as_echo "$at_srcdir/configure-iface.at:141: \$MAKE \$target "
-echo configure-iface.at:141 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$MAKE $target "; then
-  ( $at_traceon; $MAKE $target  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $MAKE $target  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$MAKE $target " "configure-iface.at:141"
+( $at_check_trace; $MAKE $target
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/configure-iface.at:141"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/configure-iface.at:141"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
   done )
@@ -17710,81 +14968,61 @@ $at_traceon; }
 
 
 # TODO: Check that the installed program `main' is linked against our libltdl
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/configure-iface.at:145: test -f \$prefix/lib/libltdl.la"
-echo configure-iface.at:145 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "test -f $prefix/lib/libltdl.la"; then
-  ( $at_traceon; test -f $prefix/lib/libltdl.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; test -f $prefix/lib/libltdl.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/configure-iface.at:145"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_dynamic "test -f $prefix/lib/libltdl.la" "configure-iface.at:145"
+( $at_check_trace; test -f $prefix/lib/libltdl.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/configure-iface.at:145"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/configure-iface.at:146: test -f \$prefix/include/ltdl.h"
-echo configure-iface.at:146 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "test -f $prefix/include/ltdl.h"; then
-  ( $at_traceon; test -f $prefix/include/ltdl.h ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; test -f $prefix/include/ltdl.h ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/configure-iface.at:146"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_dynamic "test -f $prefix/include/ltdl.h" "configure-iface.at:146"
+( $at_check_trace; test -f $prefix/include/ltdl.h
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/configure-iface.at:146"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 # Check that main is rebuilt if libltdl.la is newer
 rm -f libltdl/libltdl.la
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/configure-iface.at:150: \$MAKE -q main\$EXEEXT || exit 1"
-echo configure-iface.at:150 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$MAKE -q main$EXEEXT || exit 1"; then
-  ( $at_traceon; $MAKE -q main$EXEEXT || exit 1 ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $MAKE -q main$EXEEXT || exit 1 ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$MAKE -q main$EXEEXT || exit 1" "configure-iface.at:150"
+( $at_check_trace; $MAKE -q main$EXEEXT || exit 1
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 1 $at_status "$at_srcdir/configure-iface.at:150"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 1 $at_status "$at_srcdir/configure-iface.at:150"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
-#AT_STOP_68
-#AT_START_69
-# 69. configure-iface.at:159: --with-ltdl-include/lib
+read at_status <"$at_status_file"
+#AT_STOP_69
+#AT_START_70
+# 70. configure-iface.at:159: --with-ltdl-include/lib
 at_setup_line='configure-iface.at:159'
-at_func_banner 15
+at_fn_banner 15
 at_desc="--with-ltdl-include/lib"
-$at_quiet $as_echo_n " 69: $at_desc                        "
+at_desc_line=" 70: $at_desc                        "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
       test "$ACLOCAL" = no && at_xfail=yes
       test "$AUTOHEADER" = no && at_xfail=yes
@@ -17792,7 +15030,7 @@ at_xfail=no
       test "$AUTOCONF" = no && at_xfail=yes
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
-  $as_echo "69. configure-iface.at:159: testing ..."
+  $as_echo "70. configure-iface.at:159: testing ..."
   $at_traceon
 
 
@@ -17806,24 +15044,17 @@ $LIBTOOLIZE --copy --ltdl=ltdl
 
 (cd ltdl
 ( SHELL=${CONFIG_SHELL-/bin/sh}
-   { $at_traceoff
+   { set +x
 $as_echo "$at_srcdir/configure-iface.at:168: CONFIG_SHELL=\$SHELL \$SHELL ./configure \$configure_options --enable-ltdl-install --prefix=\$prefix"
-echo configure-iface.at:168 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options --enable-ltdl-install --prefix=$prefix"; then
-  ( $at_traceon; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options --enable-ltdl-install --prefix=$prefix ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options --enable-ltdl-install --prefix=$prefix ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options --enable-ltdl-install --prefix=$prefix" "configure-iface.at:168"
+( $at_check_trace; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options --enable-ltdl-install --prefix=$prefix
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/configure-iface.at:168"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/configure-iface.at:168"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
  )
@@ -17831,24 +15062,17 @@ $at_traceon; }
 ( $unset LIBTOOL LIBTOOLIZE
   for target in all install
   do
-    { $at_traceoff
+    { set +x
 $as_echo "$at_srcdir/configure-iface.at:169: \$MAKE \$target "
-echo configure-iface.at:169 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$MAKE $target "; then
-  ( $at_traceon; $MAKE $target  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $MAKE $target  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$MAKE $target " "configure-iface.at:169"
+( $at_check_trace; $MAKE $target
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/configure-iface.at:169"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/configure-iface.at:169"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
   done )
@@ -17858,44 +15082,30 @@ $at_traceon; }
 # Remove build files
 rm -rf ltdl/
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/configure-iface.at:175: test -f \$prefix/lib/libltdl.la"
-echo configure-iface.at:175 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "test -f $prefix/lib/libltdl.la"; then
-  ( $at_traceon; test -f $prefix/lib/libltdl.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; test -f $prefix/lib/libltdl.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/configure-iface.at:175"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_dynamic "test -f $prefix/lib/libltdl.la" "configure-iface.at:175"
+( $at_check_trace; test -f $prefix/lib/libltdl.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/configure-iface.at:175"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/configure-iface.at:176: test -f \$prefix/include/ltdl.h"
-echo configure-iface.at:176 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "test -f $prefix/include/ltdl.h"; then
-  ( $at_traceon; test -f $prefix/include/ltdl.h ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; test -f $prefix/include/ltdl.h ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/configure-iface.at:176"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_dynamic "test -f $prefix/include/ltdl.h" "configure-iface.at:176"
+( $at_check_trace; test -f $prefix/include/ltdl.h
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/configure-iface.at:176"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -17970,7 +15180,7 @@ _ATEOF
 
 
 cat >configure.ac <<'_ATEOF'
-AC_INIT([configure-iface-demo], 2.2.6, bug-libtool@gnu.org)
+AC_INIT([configure-iface-demo], 2.2.6b, bug-libtool@gnu.org)
 AC_CONFIG_MACRO_DIR([_inst/aclocal])
 AC_CONFIG_HEADERS([config.h:config.hin])
 AM_INIT_AUTOMAKE([foreign])
@@ -18003,138 +15213,97 @@ _ATEOF
 $LIBTOOLIZE
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/configure-iface.at:209: \$ACLOCAL -I _inst/aclocal"
-echo configure-iface.at:209 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$ACLOCAL -I _inst/aclocal"; then
-  ( $at_traceon; $ACLOCAL -I _inst/aclocal ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $ACLOCAL -I _inst/aclocal ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$ACLOCAL -I _inst/aclocal" "configure-iface.at:209"
+( $at_check_trace; $ACLOCAL -I _inst/aclocal
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/configure-iface.at:209"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/configure-iface.at:209"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/configure-iface.at:209: \$AUTOHEADER "
-echo configure-iface.at:209 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$AUTOHEADER "; then
-  ( $at_traceon; $AUTOHEADER  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $AUTOHEADER  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$AUTOHEADER " "configure-iface.at:209"
+( $at_check_trace; $AUTOHEADER
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/configure-iface.at:209"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/configure-iface.at:209"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/configure-iface.at:209: \$AUTOMAKE --add-missing"
-echo configure-iface.at:209 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$AUTOMAKE --add-missing"; then
-  ( $at_traceon; $AUTOMAKE --add-missing ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $AUTOMAKE --add-missing ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$AUTOMAKE --add-missing" "configure-iface.at:209"
+( $at_check_trace; $AUTOMAKE --add-missing
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; tee stderr <"$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/configure-iface.at:209"
-if $at_failed; then
-  { $at_traceoff
+at_fn_check_status 0 $at_status "$at_srcdir/configure-iface.at:209"
+if $at_failed; then :
+  { set +x
 $as_echo "$at_srcdir/configure-iface.at:209: grep 'require .*but have' stderr && (exit 77)"
-echo configure-iface.at:209 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; grep 'require .*but have' stderr && (exit 77) ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; grep 'require .*but have' stderr && (exit 77) ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 1 $at_status "$at_srcdir/configure-iface.at:209"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_trace "configure-iface.at:209"
+( $at_check_trace; grep 'require .*but have' stderr && (exit 77)
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 1 $at_status "$at_srcdir/configure-iface.at:209"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 fi
-
-$at_failed && at_func_log_failure
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/configure-iface.at:209: \$AUTOCONF "
-echo configure-iface.at:209 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$AUTOCONF "; then
-  ( $at_traceon; $AUTOCONF  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $AUTOCONF  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$AUTOCONF " "configure-iface.at:209"
+( $at_check_trace; $AUTOCONF
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/configure-iface.at:209"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/configure-iface.at:209"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
 ( SHELL=${CONFIG_SHELL-/bin/sh}
-   { $at_traceoff
+   { set +x
 $as_echo "$at_srcdir/configure-iface.at:209: CONFIG_SHELL=\$SHELL \$SHELL ./configure \$configure_options --with-ltdl-lib=\$prefix/lib --with-ltdl-include=\$prefix/include"
-echo configure-iface.at:209 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options --with-ltdl-lib=$prefix/lib --with-ltdl-include=$prefix/include"; then
-  ( $at_traceon; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options --with-ltdl-lib=$prefix/lib --with-ltdl-include=$prefix/include ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options --with-ltdl-lib=$prefix/lib --with-ltdl-include=$prefix/include ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options --with-ltdl-lib=$prefix/lib --with-ltdl-include=$prefix/include" "configure-iface.at:209"
+( $at_check_trace; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options --with-ltdl-lib=$prefix/lib --with-ltdl-include=$prefix/include
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/configure-iface.at:209"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/configure-iface.at:209"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
  )
@@ -18142,24 +15311,17 @@ $at_traceon; }
 ( $unset LIBTOOL LIBTOOLIZE
   for target in all
   do
-    { $at_traceoff
+    { set +x
 $as_echo "$at_srcdir/configure-iface.at:209: \$MAKE \$target "
-echo configure-iface.at:209 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$MAKE $target "; then
-  ( $at_traceon; $MAKE $target  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $MAKE $target  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$MAKE $target " "configure-iface.at:209"
+( $at_check_trace; $MAKE $target
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/configure-iface.at:209"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/configure-iface.at:209"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
   done )
@@ -18174,51 +15336,41 @@ case $host_os in mingw*)
   mv -f expout.t expout ;;
 esac
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/configure-iface.at:216: \$LIBTOOL --mode=execute -dlopen libmodule.la ./main; lt_status=\$?;
 	   if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"./main\" || test -x \"./main\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo configure-iface.at:216 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; $LIBTOOL --mode=execute -dlopen libmodule.la ./main; lt_status=$?;
-	   if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "./main" || test -x "./main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=execute -dlopen libmodule.la ./main; lt_status=$?;
+at_fn_check_prepare_notrace 'an embedded newline' "configure-iface.at:216"
+( $at_check_trace; $LIBTOOL --mode=execute -dlopen libmodule.la ./main; lt_status=$?;
 	   if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "./main" || test -x "./main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 $at_diff expout "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/configure-iface.at:216"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/configure-iface.at:216"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
-#AT_STOP_69
-#AT_START_70
-# 70. configure-iface.at:225: --with-included-ltdl
+read at_status <"$at_status_file"
+#AT_STOP_70
+#AT_START_71
+# 71. configure-iface.at:225: --with-included-ltdl
 at_setup_line='configure-iface.at:225'
-at_func_banner 15
+at_fn_banner 15
 at_desc="--with-included-ltdl"
-$at_quiet $as_echo_n " 70: $at_desc                           "
+at_desc_line=" 71: $at_desc                           "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
       test "$ACLOCAL" = no && at_xfail=yes
       test "$AUTOHEADER" = no && at_xfail=yes
@@ -18226,7 +15378,7 @@ at_xfail=no
       test "$AUTOCONF" = no && at_xfail=yes
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
-  $as_echo "70. configure-iface.at:225: testing ..."
+  $as_echo "71. configure-iface.at:225: testing ..."
   $at_traceon
 
 
@@ -18302,7 +15454,7 @@ _ATEOF
 
 
 cat >configure.ac <<'_ATEOF'
-AC_INIT([configure-iface-demo], 2.2.6, bug-libtool@gnu.org)
+AC_INIT([configure-iface-demo], 2.2.6b, bug-libtool@gnu.org)
 AC_CONFIG_AUX_DIR([libltdl/config])
 AC_CONFIG_MACRO_DIR([libltdl/m4])
 AC_CONFIG_HEADERS([config.h:config.hin])
@@ -18337,138 +15489,97 @@ _ATEOF
 $LIBTOOLIZE --ltdl
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/configure-iface.at:261: \$ACLOCAL -I libltdl/m4"
-echo configure-iface.at:261 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$ACLOCAL -I libltdl/m4"; then
-  ( $at_traceon; $ACLOCAL -I libltdl/m4 ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $ACLOCAL -I libltdl/m4 ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$ACLOCAL -I libltdl/m4" "configure-iface.at:261"
+( $at_check_trace; $ACLOCAL -I libltdl/m4
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/configure-iface.at:261"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/configure-iface.at:261"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/configure-iface.at:261: \$AUTOHEADER "
-echo configure-iface.at:261 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$AUTOHEADER "; then
-  ( $at_traceon; $AUTOHEADER  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $AUTOHEADER  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$AUTOHEADER " "configure-iface.at:261"
+( $at_check_trace; $AUTOHEADER
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/configure-iface.at:261"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/configure-iface.at:261"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/configure-iface.at:261: \$AUTOMAKE --add-missing"
-echo configure-iface.at:261 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$AUTOMAKE --add-missing"; then
-  ( $at_traceon; $AUTOMAKE --add-missing ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $AUTOMAKE --add-missing ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$AUTOMAKE --add-missing" "configure-iface.at:261"
+( $at_check_trace; $AUTOMAKE --add-missing
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; tee stderr <"$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/configure-iface.at:261"
-if $at_failed; then
-  { $at_traceoff
+at_fn_check_status 0 $at_status "$at_srcdir/configure-iface.at:261"
+if $at_failed; then :
+  { set +x
 $as_echo "$at_srcdir/configure-iface.at:261: grep 'require .*but have' stderr && (exit 77)"
-echo configure-iface.at:261 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; grep 'require .*but have' stderr && (exit 77) ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; grep 'require .*but have' stderr && (exit 77) ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 1 $at_status "$at_srcdir/configure-iface.at:261"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_trace "configure-iface.at:261"
+( $at_check_trace; grep 'require .*but have' stderr && (exit 77)
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 1 $at_status "$at_srcdir/configure-iface.at:261"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 fi
-
-$at_failed && at_func_log_failure
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/configure-iface.at:261: \$AUTOCONF "
-echo configure-iface.at:261 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$AUTOCONF "; then
-  ( $at_traceon; $AUTOCONF  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $AUTOCONF  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$AUTOCONF " "configure-iface.at:261"
+( $at_check_trace; $AUTOCONF
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/configure-iface.at:261"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/configure-iface.at:261"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
 ( SHELL=${CONFIG_SHELL-/bin/sh}
-   { $at_traceoff
+   { set +x
 $as_echo "$at_srcdir/configure-iface.at:261: CONFIG_SHELL=\$SHELL \$SHELL ./configure \$configure_options --with-included-ltdl"
-echo configure-iface.at:261 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options --with-included-ltdl"; then
-  ( $at_traceon; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options --with-included-ltdl ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options --with-included-ltdl ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options --with-included-ltdl" "configure-iface.at:261"
+( $at_check_trace; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options --with-included-ltdl
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/configure-iface.at:261"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/configure-iface.at:261"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
  )
@@ -18476,24 +15587,17 @@ $at_traceon; }
 ( $unset LIBTOOL LIBTOOLIZE
   for target in all
   do
-    { $at_traceoff
+    { set +x
 $as_echo "$at_srcdir/configure-iface.at:261: \$MAKE \$target "
-echo configure-iface.at:261 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$MAKE $target "; then
-  ( $at_traceon; $MAKE $target  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $MAKE $target  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$MAKE $target " "configure-iface.at:261"
+( $at_check_trace; $MAKE $target
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/configure-iface.at:261"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/configure-iface.at:261"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
   done )
@@ -18501,23 +15605,17 @@ $at_traceon; }
 
 
 # --with-included-ltdl should build a convenience lib by default
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/configure-iface.at:265: test -f libltdl/libltdlc.la"
-echo configure-iface.at:265 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; test -f libltdl/libltdlc.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; test -f libltdl/libltdlc.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/configure-iface.at:265"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_trace "configure-iface.at:265"
+( $at_check_trace; test -f libltdl/libltdlc.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/configure-iface.at:265"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -18529,80 +15627,63 @@ case $host_os in mingw*)
   mv -f expout.t expout ;;
 esac
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/configure-iface.at:270: \$LIBTOOL --mode=execute -dlopen libmodule.la ./main; lt_status=\$?;
 	   if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"./main\" || test -x \"./main\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo configure-iface.at:270 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; $LIBTOOL --mode=execute -dlopen libmodule.la ./main; lt_status=$?;
-	   if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "./main" || test -x "./main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=execute -dlopen libmodule.la ./main; lt_status=$?;
+at_fn_check_prepare_notrace 'an embedded newline' "configure-iface.at:270"
+( $at_check_trace; $LIBTOOL --mode=execute -dlopen libmodule.la ./main; lt_status=$?;
 	   if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "./main" || test -x "./main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 $at_diff expout "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/configure-iface.at:270"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/configure-iface.at:270"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 # Check that main is rebuilt if libltdlc.la is newer
 rm -f libltdl/libltdlc.la
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/configure-iface.at:274: \$MAKE -q main\$EXEEXT || exit 1"
-echo configure-iface.at:274 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$MAKE -q main$EXEEXT || exit 1"; then
-  ( $at_traceon; $MAKE -q main$EXEEXT || exit 1 ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $MAKE -q main$EXEEXT || exit 1 ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$MAKE -q main$EXEEXT || exit 1" "configure-iface.at:274"
+( $at_check_trace; $MAKE -q main$EXEEXT || exit 1
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 1 $at_status "$at_srcdir/configure-iface.at:274"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 1 $at_status "$at_srcdir/configure-iface.at:274"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
-#AT_STOP_70
-#AT_START_71
-# 71. configure-iface.at:283: convenience libltdl
+read at_status <"$at_status_file"
+#AT_STOP_71
+#AT_START_72
+# 72. configure-iface.at:283: convenience libltdl
 at_setup_line='configure-iface.at:283'
-at_func_banner 15
+at_fn_banner 15
 at_desc="convenience libltdl"
-$at_quiet $as_echo_n " 71: $at_desc                            "
+at_desc_line=" 72: $at_desc                            "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
       test "$ACLOCAL" = no && at_xfail=yes
       test "$AUTOCONF" = no && at_xfail=yes
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
-  $as_echo "71. configure-iface.at:283: testing ..."
+  $as_echo "72. configure-iface.at:283: testing ..."
   $at_traceon
 
 
@@ -18626,24 +15707,17 @@ _ATEOF
 $LIBTOOLIZE --ltdl
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/configure-iface.at:300: \$ACLOCAL -I libltdl/m4"
-echo configure-iface.at:300 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$ACLOCAL -I libltdl/m4"; then
-  ( $at_traceon; $ACLOCAL -I libltdl/m4 ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $ACLOCAL -I libltdl/m4 ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$ACLOCAL -I libltdl/m4" "configure-iface.at:300"
+( $at_check_trace; $ACLOCAL -I libltdl/m4
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/configure-iface.at:300"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/configure-iface.at:300"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -18651,109 +15725,83 @@ $at_traceon; }
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/configure-iface.at:300: \$AUTOCONF "
-echo configure-iface.at:300 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$AUTOCONF "; then
-  ( $at_traceon; $AUTOCONF  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $AUTOCONF  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$AUTOCONF " "configure-iface.at:300"
+( $at_check_trace; $AUTOCONF
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/configure-iface.at:300"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/configure-iface.at:300"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
 
 ( SHELL=${CONFIG_SHELL-/bin/sh}
-   { $at_traceoff
+   { set +x
 $as_echo "$at_srcdir/configure-iface.at:300: CONFIG_SHELL=\$SHELL \$SHELL ./configure \$configure_options "
-echo configure-iface.at:300 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options "; then
-  ( $at_traceon; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options  ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options  ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options " "configure-iface.at:300"
+( $at_check_trace; CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/configure-iface.at:300"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/configure-iface.at:300"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
  )
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/configure-iface.at:301: \$MAKE print-ltdl"
-echo configure-iface.at:301 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$MAKE print-ltdl"; then
-  ( $at_traceon; $MAKE print-ltdl ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $MAKE print-ltdl ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$MAKE print-ltdl" "configure-iface.at:301"
+( $at_check_trace; $MAKE print-ltdl
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; tee stdout <"$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/configure-iface.at:301"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/configure-iface.at:301"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/configure-iface.at:302: grep libltdl/libltdlc.la stdout"
-echo configure-iface.at:302 >"$at_check_line_file"
-
-if test -n "$at_traceon"; then
-  ( $at_traceon; grep libltdl/libltdlc.la stdout ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; grep libltdl/libltdlc.la stdout ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
+at_fn_check_prepare_trace "configure-iface.at:302"
+( $at_check_trace; grep libltdl/libltdlc.la stdout
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/configure-iface.at:302"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/configure-iface.at:302"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
-#AT_STOP_71
-#AT_START_72
-# 72. stresstest.at:31: Link option thorough search test
+read at_status <"$at_status_file"
+#AT_STOP_72
+#AT_START_73
+# 73. stresstest.at:31: Link option thorough search test
 at_setup_line='stresstest.at:31'
-at_func_banner 16
+at_fn_banner 16
 at_desc="Link option thorough search test"
-$at_quiet $as_echo_n " 72: $at_desc               "
+at_desc_line=" 73: $at_desc               "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
-  $as_echo "72. stresstest.at:31: testing ..."
+  $as_echo "73. stresstest.at:31: testing ..."
   $at_traceon
 
 
@@ -18951,124 +15999,82 @@ _ATEOF
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/stresstest.at:221: \$LIBTOOL --mode=compile \$CC \$CPPFLAGS \$CFLAGS -c a.c -o sub/a.lo"
-echo stresstest.at:221 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c a.c -o sub/a.lo"; then
-  ( $at_traceon; $LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c a.c -o sub/a.lo ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c a.c -o sub/a.lo ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c a.c -o sub/a.lo" "stresstest.at:221"
+( $at_check_trace; $LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c a.c -o sub/a.lo
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/stresstest.at:221"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/stresstest.at:221"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/stresstest.at:223: \$LIBTOOL --mode=compile \$CC \$CPPFLAGS \$CFLAGS -c b.c -o sub/b.lo"
-echo stresstest.at:223 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c b.c -o sub/b.lo"; then
-  ( $at_traceon; $LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c b.c -o sub/b.lo ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c b.c -o sub/b.lo ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c b.c -o sub/b.lo" "stresstest.at:223"
+( $at_check_trace; $LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c b.c -o sub/b.lo
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/stresstest.at:223"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/stresstest.at:223"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/stresstest.at:225: \$LIBTOOL --mode=compile \$CC \$CPPFLAGS -DLIBA_DLL_IMPORT \$CFLAGS -c main.c"
-echo stresstest.at:225 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=compile $CC $CPPFLAGS -DLIBA_DLL_IMPORT $CFLAGS -c main.c"; then
-  ( $at_traceon; $LIBTOOL --mode=compile $CC $CPPFLAGS -DLIBA_DLL_IMPORT $CFLAGS -c main.c ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=compile $CC $CPPFLAGS -DLIBA_DLL_IMPORT $CFLAGS -c main.c ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=compile $CC $CPPFLAGS -DLIBA_DLL_IMPORT $CFLAGS -c main.c" "stresstest.at:225"
+( $at_check_trace; $LIBTOOL --mode=compile $CC $CPPFLAGS -DLIBA_DLL_IMPORT $CFLAGS -c main.c
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/stresstest.at:225"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/stresstest.at:225"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/stresstest.at:227: \$LIBTOOL --mode=compile \$CC \$CPPFLAGS \$CFLAGS -c main.c -o main-static.lo"
-echo stresstest.at:227 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c main.c -o main-static.lo"; then
-  ( $at_traceon; $LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c main.c -o main-static.lo ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c main.c -o main-static.lo ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c main.c -o main-static.lo" "stresstest.at:227"
+( $at_check_trace; $LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c main.c -o main-static.lo
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/stresstest.at:227"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/stresstest.at:227"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/stresstest.at:229: \$LIBTOOL --mode=compile \$CC \$CPPFLAGS -DLIBA_DLL_IMPORT \$CFLAGS -c dlself.c -o sub3/dlself.lo"
-echo stresstest.at:229 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=compile $CC $CPPFLAGS -DLIBA_DLL_IMPORT $CFLAGS -c dlself.c -o sub3/dlself.lo"; then
-  ( $at_traceon; $LIBTOOL --mode=compile $CC $CPPFLAGS -DLIBA_DLL_IMPORT $CFLAGS -c dlself.c -o sub3/dlself.lo ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=compile $CC $CPPFLAGS -DLIBA_DLL_IMPORT $CFLAGS -c dlself.c -o sub3/dlself.lo ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=compile $CC $CPPFLAGS -DLIBA_DLL_IMPORT $CFLAGS -c dlself.c -o sub3/dlself.lo" "stresstest.at:229"
+( $at_check_trace; $LIBTOOL --mode=compile $CC $CPPFLAGS -DLIBA_DLL_IMPORT $CFLAGS -c dlself.c -o sub3/dlself.lo
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/stresstest.at:229"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/stresstest.at:229"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/stresstest.at:231: \$LIBTOOL --mode=compile \$CC \$CPPFLAGS \$CFLAGS -c dlself.c -o sub3/dlself-static.lo"
-echo stresstest.at:231 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c dlself.c -o sub3/dlself-static.lo"; then
-  ( $at_traceon; $LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c dlself.c -o sub3/dlself-static.lo ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c dlself.c -o sub3/dlself-static.lo ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c dlself.c -o sub3/dlself-static.lo" "stresstest.at:231"
+( $at_check_trace; $LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c dlself.c -o sub3/dlself-static.lo
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/stresstest.at:231"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/stresstest.at:231"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -19089,24 +16095,17 @@ do
       linkargs="$l1 $l2 $l3"
       for rel in '' ./ `pwd`/
       do
-	echo "eval '$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o \"$rel\"sub2/liba.la \"$rel\"sub/a.lo' $linkargs"; { $at_traceoff
+	echo "eval '$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o \"$rel\"sub2/liba.la \"$rel\"sub/a.lo' $linkargs"; { set +x
 $as_echo "$at_srcdir/stresstest.at:251: eval '\$LIBTOOL --mode=link \$CC \$CFLAGS \$LDFLAGS -o \"\$rel\"sub2/liba.la \"\$rel\"sub/a.lo' \$linkargs"
-echo stresstest.at:251 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "eval '$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o \"$rel\"sub2/liba.la \"$rel\"sub/a.lo' $linkargs"; then
-  ( $at_traceon; eval '$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o "$rel"sub2/liba.la "$rel"sub/a.lo' $linkargs ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; eval '$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o "$rel"sub2/liba.la "$rel"sub/a.lo' $linkargs ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "eval '$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o \"$rel\"sub2/liba.la \"$rel\"sub/a.lo' $linkargs" "stresstest.at:251"
+( $at_check_trace; eval '$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o "$rel"sub2/liba.la "$rel"sub/a.lo' $linkargs
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/stresstest.at:251"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/stresstest.at:251"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 	for st in '' '-static' '-no-install'
@@ -19116,109 +16115,75 @@ $at_traceon; }
           *) mst=-static ;;
 	  esac
 
-	  echo "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS $st -o \"$rel\"main \"$rel\"main$mst.lo \"$rel\"sub2/liba.la"; { $at_traceoff
+	  echo "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS $st -o \"$rel\"main \"$rel\"main$mst.lo \"$rel\"sub2/liba.la"; { set +x
 $as_echo "$at_srcdir/stresstest.at:260: \$LIBTOOL --mode=link \$CC \$CFLAGS \$LDFLAGS \$st -o \"\$rel\"main \"\$rel\"main\$mst.lo \"\$rel\"sub2/liba.la"
-echo stresstest.at:260 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS $st -o \"$rel\"main \"$rel\"main$mst.lo \"$rel\"sub2/liba.la"; then
-  ( $at_traceon; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS $st -o "$rel"main "$rel"main$mst.lo "$rel"sub2/liba.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS $st -o "$rel"main "$rel"main$mst.lo "$rel"sub2/liba.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS $st -o \"$rel\"main \"$rel\"main$mst.lo \"$rel\"sub2/liba.la" "stresstest.at:260"
+( $at_check_trace; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS $st -o "$rel"main "$rel"main$mst.lo "$rel"sub2/liba.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/stresstest.at:260"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/stresstest.at:260"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/stresstest.at:262: ./main; lt_status=\$?; if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"./main\" || test -x \"./main\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo stresstest.at:262 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; ./main; lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "./main" || test -x "./main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; ./main; lt_status=$?; if test $lt_status -eq 0; then :;
+at_fn_check_prepare_notrace 'an embedded newline' "stresstest.at:262"
+( $at_check_trace; ./main; lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "./main" || test -x "./main"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/stresstest.at:262"
-
-$at_failed && at_func_log_failure
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/stresstest.at:262"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 	  for l10 in '' '-export-symbols dlselfsyms'
 	  do
-	    echo "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS $st -o \"$rel\"sub3/dlself \"$rel\"sub3/dlself$mst.lo \"$rel\"sub2/liba.la sub/b.lo -dlopen self $l10"; { $at_traceoff
+	    echo "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS $st -o \"$rel\"sub3/dlself \"$rel\"sub3/dlself$mst.lo \"$rel\"sub2/liba.la sub/b.lo -dlopen self $l10"; { set +x
 $as_echo "$at_srcdir/stresstest.at:265: \$LIBTOOL --mode=link \$CC \$CFLAGS \$LDFLAGS \$st -o \"\$rel\"sub3/dlself \"\$rel\"sub3/dlself\$mst.lo \"\$rel\"sub2/liba.la sub/b.lo -dlopen self \$l10"
-echo stresstest.at:265 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS $st -o \"$rel\"sub3/dlself \"$rel\"sub3/dlself$mst.lo \"$rel\"sub2/liba.la sub/b.lo -dlopen self $l10"; then
-  ( $at_traceon; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS $st -o "$rel"sub3/dlself "$rel"sub3/dlself$mst.lo "$rel"sub2/liba.la sub/b.lo -dlopen self $l10 ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS $st -o "$rel"sub3/dlself "$rel"sub3/dlself$mst.lo "$rel"sub2/liba.la sub/b.lo -dlopen self $l10 ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS $st -o \"$rel\"sub3/dlself \"$rel\"sub3/dlself$mst.lo \"$rel\"sub2/liba.la sub/b.lo -dlopen self $l10" "stresstest.at:265"
+( $at_check_trace; $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS $st -o "$rel"sub3/dlself "$rel"sub3/dlself$mst.lo "$rel"sub2/liba.la sub/b.lo -dlopen self $l10
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/stresstest.at:265"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/stresstest.at:265"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/stresstest.at:267: ./sub3/dlself; lt_status=\$?; if test \$lt_status -eq 0; then :;
 	   elif test \"X\$host\" != \"X\$build\" && \\
 	        { test -x \"./sub3/dlself\" || test -x \"./sub3/dlself\"\$EXEEXT; }
 	   then (exit 77); else (exit \$lt_status); fi"
-echo stresstest.at:267 >"$at_check_line_file"
-
-if { echo 'Not enabling shell tracing (command contains an embedded newline)'
-   false; }; then
-  ( $at_traceon; ./sub3/dlself; lt_status=$?; if test $lt_status -eq 0; then :;
-	   elif test "X$host" != "X$build" && \
-	        { test -x "./sub3/dlself" || test -x "./sub3/dlself"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; ./sub3/dlself; lt_status=$?; if test $lt_status -eq 0; then :;
+at_fn_check_prepare_notrace 'an embedded newline' "stresstest.at:267"
+( $at_check_trace; ./sub3/dlself; lt_status=$?; if test $lt_status -eq 0; then :;
 	   elif test "X$host" != "X$build" && \
 	        { test -x "./sub3/dlself" || test -x "./sub3/dlself"$EXEEXT; }
-	   then (exit 77); else (exit $lt_status); fi ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/stresstest.at:267"
-
-$at_failed && at_func_log_failure
+	   then (exit 77); else (exit $lt_status); fi
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/stresstest.at:267"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -19229,21 +16194,22 @@ $at_traceon; }
   done
 done
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
-#AT_STOP_72
-#AT_START_73
-# 73. cmdline_wrap.at:28: Run tests with low max_cmd_len
+read at_status <"$at_status_file"
+#AT_STOP_73
+#AT_START_74
+# 74. cmdline_wrap.at:28: Run tests with low max_cmd_len
 at_setup_line='cmdline_wrap.at:28'
-at_func_banner 16
+at_fn_banner 16
 at_desc="Run tests with low max_cmd_len"
-$at_quiet $as_echo_n " 73: $at_desc                 "
+at_desc_line=" 74: $at_desc                 "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
-  $as_echo "73. cmdline_wrap.at:28: testing ..."
+  $as_echo "74. cmdline_wrap.at:28: testing ..."
   $at_traceon
 
 
@@ -19259,43 +16225,37 @@ mkdir tests
 cd tests
 INNER_TESTSUITEFLAGS="$INNER_TESTSUITEFLAGS abs_top_srcdir=$abs_top_srcdir \
   abs_builddir=$abs_builddir"
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/cmdline_wrap.at:43: \$CONFIG_SHELL \$abs_srcdir/testsuite -k libtool \$INNER_TESTSUITEFLAGS"
-echo cmdline_wrap.at:43 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$CONFIG_SHELL $abs_srcdir/testsuite -k libtool $INNER_TESTSUITEFLAGS"; then
-  ( $at_traceon; $CONFIG_SHELL $abs_srcdir/testsuite -k libtool $INNER_TESTSUITEFLAGS ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $CONFIG_SHELL $abs_srcdir/testsuite -k libtool $INNER_TESTSUITEFLAGS ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$CONFIG_SHELL $abs_srcdir/testsuite -k libtool $INNER_TESTSUITEFLAGS" "cmdline_wrap.at:43"
+( $at_check_trace; $CONFIG_SHELL $abs_srcdir/testsuite -k libtool $INNER_TESTSUITEFLAGS
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/cmdline_wrap.at:43"
-
-$at_failed && at_func_log_failure  \
+at_fn_check_status 0 $at_status "$at_srcdir/cmdline_wrap.at:43"
+$at_failed && at_fn_log_failure  \
 "testsuite.log"
 $at_traceon; }
 
 
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
-#AT_STOP_73
-#AT_START_74
-# 74. darwin.at:26: darwin fat compile
+read at_status <"$at_status_file"
+#AT_STOP_74
+#AT_START_75
+# 75. darwin.at:26: darwin fat compile
 at_setup_line='darwin.at:26'
-at_func_banner 17
+at_fn_banner 17
 at_desc="darwin fat compile"
-$at_quiet $as_echo_n " 74: $at_desc                             "
+at_desc_line=" 75: $at_desc                             "
+$at_quiet $as_echo_n "$at_desc_line"
 at_xfail=no
 echo "#                             -*- compilation -*-" >> "$at_group_log"
 (
-  $as_echo "74. darwin.at:26: testing ..."
+  $as_echo "75. darwin.at:26: testing ..."
   $at_traceon
 
 noskip=:
@@ -19315,24 +16275,17 @@ $CC $CPPFLAGS $CFLAGS -arch ppc -arch i3
 rm -f simple
 }
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/darwin.at:42: \$noskip || (exit 77)"
-echo darwin.at:42 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$noskip || (exit 77)"; then
-  ( $at_traceon; $noskip || (exit 77) ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $noskip || (exit 77) ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
-at_func_diff_devnull "$at_stderr" || at_failed=:
-at_func_diff_devnull "$at_stdout" || at_failed=:
-at_func_check_status 0 $at_status "$at_srcdir/darwin.at:42"
-
-$at_failed && at_func_log_failure
+at_fn_check_prepare_dynamic "$noskip || (exit 77)" "darwin.at:42"
+( $at_check_trace; $noskip || (exit 77)
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
+at_fn_diff_devnull "$at_stderr" || at_failed=:
+at_fn_diff_devnull "$at_stdout" || at_failed=:
+at_fn_check_status 0 $at_status "$at_srcdir/darwin.at:42"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
@@ -19387,156 +16340,107 @@ save_PATH=$PATH
 PATH=`pwd`/bin:$PATH
 export PATH
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/darwin.at:85: \$LIBTOOL --mode=compile --tag=CC \$CC -c -o foo.lo \$CPPFLAGS \$CFLAGS -arch ppc -arch i386 foo.c"
-echo darwin.at:85 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=compile --tag=CC $CC -c -o foo.lo $CPPFLAGS $CFLAGS -arch ppc -arch i386 foo.c"; then
-  ( $at_traceon; $LIBTOOL --mode=compile --tag=CC $CC -c -o foo.lo $CPPFLAGS $CFLAGS -arch ppc -arch i386 foo.c ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=compile --tag=CC $CC -c -o foo.lo $CPPFLAGS $CFLAGS -arch ppc -arch i386 foo.c ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=compile --tag=CC $CC -c -o foo.lo $CPPFLAGS $CFLAGS -arch ppc -arch i386 foo.c" "darwin.at:85"
+( $at_check_trace; $LIBTOOL --mode=compile --tag=CC $CC -c -o foo.lo $CPPFLAGS $CFLAGS -arch ppc -arch i386 foo.c
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/darwin.at:85"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/darwin.at:85"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/darwin.at:87: \$LIBTOOL --mode=compile --tag=CC \$CC -c -o baz.lo \$CPPFLAGS \$CFLAGS -arch ppc -arch i386 baz.c"
-echo darwin.at:87 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=compile --tag=CC $CC -c -o baz.lo $CPPFLAGS $CFLAGS -arch ppc -arch i386 baz.c"; then
-  ( $at_traceon; $LIBTOOL --mode=compile --tag=CC $CC -c -o baz.lo $CPPFLAGS $CFLAGS -arch ppc -arch i386 baz.c ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=compile --tag=CC $CC -c -o baz.lo $CPPFLAGS $CFLAGS -arch ppc -arch i386 baz.c ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=compile --tag=CC $CC -c -o baz.lo $CPPFLAGS $CFLAGS -arch ppc -arch i386 baz.c" "darwin.at:87"
+( $at_check_trace; $LIBTOOL --mode=compile --tag=CC $CC -c -o baz.lo $CPPFLAGS $CFLAGS -arch ppc -arch i386 baz.c
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/darwin.at:87"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/darwin.at:87"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/darwin.at:89: \$LIBTOOL --mode=link --tag=CC \$CC -o libfoo.la \$CPPFLAGS \$CFLAGS \$LDFLAGS -arch ppc -arch i386 foo.lo baz.lo"
-echo darwin.at:89 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=link --tag=CC $CC -o libfoo.la $CPPFLAGS $CFLAGS $LDFLAGS -arch ppc -arch i386 foo.lo baz.lo"; then
-  ( $at_traceon; $LIBTOOL --mode=link --tag=CC $CC -o libfoo.la $CPPFLAGS $CFLAGS $LDFLAGS -arch ppc -arch i386 foo.lo baz.lo ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link --tag=CC $CC -o libfoo.la $CPPFLAGS $CFLAGS $LDFLAGS -arch ppc -arch i386 foo.lo baz.lo ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=link --tag=CC $CC -o libfoo.la $CPPFLAGS $CFLAGS $LDFLAGS -arch ppc -arch i386 foo.lo baz.lo" "darwin.at:89"
+( $at_check_trace; $LIBTOOL --mode=link --tag=CC $CC -o libfoo.la $CPPFLAGS $CFLAGS $LDFLAGS -arch ppc -arch i386 foo.lo baz.lo
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/darwin.at:89"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/darwin.at:89"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/darwin.at:91: \$LIBTOOL --mode=compile --tag=CC \$CC -c -o bar.lo \$CPPFLAGS \$CFLAGS -arch ppc -arch i386 bar.c"
-echo darwin.at:91 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=compile --tag=CC $CC -c -o bar.lo $CPPFLAGS $CFLAGS -arch ppc -arch i386 bar.c"; then
-  ( $at_traceon; $LIBTOOL --mode=compile --tag=CC $CC -c -o bar.lo $CPPFLAGS $CFLAGS -arch ppc -arch i386 bar.c ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=compile --tag=CC $CC -c -o bar.lo $CPPFLAGS $CFLAGS -arch ppc -arch i386 bar.c ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=compile --tag=CC $CC -c -o bar.lo $CPPFLAGS $CFLAGS -arch ppc -arch i386 bar.c" "darwin.at:91"
+( $at_check_trace; $LIBTOOL --mode=compile --tag=CC $CC -c -o bar.lo $CPPFLAGS $CFLAGS -arch ppc -arch i386 bar.c
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/darwin.at:91"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/darwin.at:91"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/darwin.at:93: \$LIBTOOL --mode=link --tag=CC \$CC  -o libbar.la \$CPPFLAGS \$CFLAGS \$LDFLAGS -arch ppc -arch i386 bar.lo libfoo.la -rpath /nonexistent"
-echo darwin.at:93 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=link --tag=CC $CC  -o libbar.la $CPPFLAGS $CFLAGS $LDFLAGS -arch ppc -arch i386 bar.lo libfoo.la -rpath /nonexistent"; then
-  ( $at_traceon; $LIBTOOL --mode=link --tag=CC $CC  -o libbar.la $CPPFLAGS $CFLAGS $LDFLAGS -arch ppc -arch i386 bar.lo libfoo.la -rpath /nonexistent ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link --tag=CC $CC  -o libbar.la $CPPFLAGS $CFLAGS $LDFLAGS -arch ppc -arch i386 bar.lo libfoo.la -rpath /nonexistent ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=link --tag=CC $CC  -o libbar.la $CPPFLAGS $CFLAGS $LDFLAGS -arch ppc -arch i386 bar.lo libfoo.la -rpath /nonexistent" "darwin.at:93"
+( $at_check_trace; $LIBTOOL --mode=link --tag=CC $CC  -o libbar.la $CPPFLAGS $CFLAGS $LDFLAGS -arch ppc -arch i386 bar.lo libfoo.la -rpath /nonexistent
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/darwin.at:93"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/darwin.at:93"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/darwin.at:95: \$LIBTOOL --mode=compile --tag=CC \$CC -c -o main.lo \$CPPFLAGS \$CFLAGS -arch ppc -arch i386 main.c"
-echo darwin.at:95 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=compile --tag=CC $CC -c -o main.lo $CPPFLAGS $CFLAGS -arch ppc -arch i386 main.c"; then
-  ( $at_traceon; $LIBTOOL --mode=compile --tag=CC $CC -c -o main.lo $CPPFLAGS $CFLAGS -arch ppc -arch i386 main.c ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=compile --tag=CC $CC -c -o main.lo $CPPFLAGS $CFLAGS -arch ppc -arch i386 main.c ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=compile --tag=CC $CC -c -o main.lo $CPPFLAGS $CFLAGS -arch ppc -arch i386 main.c" "darwin.at:95"
+( $at_check_trace; $LIBTOOL --mode=compile --tag=CC $CC -c -o main.lo $CPPFLAGS $CFLAGS -arch ppc -arch i386 main.c
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/darwin.at:95"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/darwin.at:95"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
-{ $at_traceoff
+{ set +x
 $as_echo "$at_srcdir/darwin.at:97: \$LIBTOOL --mode=link --tag=CC \$CC  -o main \$CPPFLAGS \$CFLAGS \$LDFLAGS -arch ppc -arch i386 main.lo libbar.la"
-echo darwin.at:97 >"$at_check_line_file"
-
-if test -n "$at_traceon" \
-  && at_func_check_newline "$LIBTOOL --mode=link --tag=CC $CC  -o main $CPPFLAGS $CFLAGS $LDFLAGS -arch ppc -arch i386 main.lo libbar.la"; then
-  ( $at_traceon; $LIBTOOL --mode=link --tag=CC $CC  -o main $CPPFLAGS $CFLAGS $LDFLAGS -arch ppc -arch i386 main.lo libbar.la ) >"$at_stdout" 2>"$at_stder1"
-  at_func_filter_trace $?
-else
-  ( :; $LIBTOOL --mode=link --tag=CC $CC  -o main $CPPFLAGS $CFLAGS $LDFLAGS -arch ppc -arch i386 main.lo libbar.la ) >"$at_stdout" 2>"$at_stderr"
-fi
-at_status=$?
-at_failed=false
+at_fn_check_prepare_dynamic "$LIBTOOL --mode=link --tag=CC $CC  -o main $CPPFLAGS $CFLAGS $LDFLAGS -arch ppc -arch i386 main.lo libbar.la" "darwin.at:97"
+( $at_check_trace; $LIBTOOL --mode=link --tag=CC $CC  -o main $CPPFLAGS $CFLAGS $LDFLAGS -arch ppc -arch i386 main.lo libbar.la
+) >>"$at_stdout" 2>>"$at_stderr"
+at_status=$? at_failed=false
+$at_check_filter
 echo stderr:; cat "$at_stderr"
 echo stdout:; cat "$at_stdout"
-at_func_check_status 0 $at_status "$at_srcdir/darwin.at:97"
-
-$at_failed && at_func_log_failure
+at_fn_check_status 0 $at_status "$at_srcdir/darwin.at:97"
+$at_failed && at_fn_log_failure
 $at_traceon; }
 
 
 PATH=$save_PATH
-  $at_traceoff
+  set +x
   $at_times_p && times >"$at_times_file"
 ) 5>&1 2>&1 | eval $at_tee_pipe
-at_status=`cat "$at_status_file"`
-#AT_STOP_74
+read at_status <"$at_status_file"
+#AT_STOP_75

--- tests/testsuite.at	2008-09-06 15:51:29.000000000 +0200
+++ tests/testsuite.at	2009-11-16 14:11:59.000000000 +0100
@@ -288,9 +288,9 @@ main ()
     return 1;
   }
 
-  module = lt_dlopen("module.la");
+  module = lt_dlopen("./module.la");
   if (!module) {
-    fprintf (stderr, "error dlopening module.la: %s\n", lt_dlerror());
+    fprintf (stderr, "error dlopening ./module.la: %s\n", lt_dlerror());
     goto finish;
   }
 
openSUSE Build Service is sponsored by