commit bash-20070913 snapshot

This commit is contained in:
Chet Ramey
2011-12-07 09:12:38 -05:00
parent 0684f2769b
commit 53ac45a3eb
27 changed files with 1097 additions and 281 deletions
+36
View File
@@ -14857,3 +14857,39 @@ stringlib.c
even if the pattern and replacement strings are empty, and set
to a copy of string (like ${foo//})
Bug report from Timo Lindfors <timo.lindfors@iki.fi>
9/10
----
{config.h,Makefile,configure}.in,aclocal.m4
- new tests for fpurge and __fpurge
lib/sh/fpurge.c, externs.h
- new file, fpurge(3) implementation with external decl in externs.h
builtins/common.c
- add call to fpurge(stdout) to sh_chkwrite
{redir,execute_cmd}.c
- add call to fpurge(stdout) after fflush(stdout) before changing
stdout file descriptor and after a builtin or function executes
9/12
----
expr.c
- make sure noeval is set to 0 when a longjmp occurs, since it will
not be reset otherwise, and it can be set to 1 while processing
a {pre,post}-increment or {pre,post}-decrement token
- set noeval to 0 at the beginning of evalexp, since it's never
called recursively
9/14
----
config-top.h
- new builder-modifiable define: DONT_REPORT_BROKEN_PIPE_WRITE_ERRORS
Turning it on will cause errors from EPIPE to not be reported by
the normal shell write error message mechanism
builtins/common.c
- if DONT_REPORT_BROKEN_PIPE_WRITE_ERRORS is defined, don't print an
error message from sh_wrerror if errno == EPIPE. Suggestion from
Petr Sumbera <petr.sumbera@sun.com>
+33 -1
View File
@@ -14854,5 +14854,37 @@ subst.c
stringlib.c
- change strsub to check whether or not temp is non-null before
trying to null-terminate it. Also make sure temp is allocated
even if the pattern and replacement strings are empty.
even if the pattern and replacement strings are empty, and set
to a copy of string (like ${foo//})
Bug report from Timo Lindfors <timo.lindfors@iki.fi>
9/10
----
{config.h,Makefile,configure}.in,aclocal.m4
- new tests for fpurge and __fpurge
lib/sh/fpurge.c, externs.h
- new file, fpurge(3) implementation with external decl in externs.h
builtins/common.c
- add call to fpurge(stdout) to sh_chkwrite
{redir,execute_cmd}.c
- add call to fpurge(stdout) after fflush(stdout) before changing
stdout file descriptor and after a builtin or function executes
9/12
----
expr.c
- make sure noeval is set to 0 when a longjmp occurs, since it will
not be reset otherwise, and it can be set to 1 while processing
a {pre,post}-increment or {pre,post}-decrement token
- set noeval to 0 at the beginning of evalexp, since it's never
called recursively
9/14
----
config-top.h
- new builder-modifiable define: DONT_REPORT_BROKEN_PIPE_WRITE_ERRORS
Turning it on will cause errors from EPIPE to not be reported by
the normal shell write error message mechanism
+1
View File
@@ -380,6 +380,7 @@ lib/sh/eaccess.c f
lib/sh/fmtullong.c f
lib/sh/fmtulong.c f
lib/sh/fmtumax.c f
lib/sh/fpurge.c f
lib/sh/getcwd.c f
lib/sh/getenv.c f
lib/sh/inet_aton.c f
+1 -1
View File
@@ -210,7 +210,7 @@ SHLIB_SOURCE = ${SH_LIBSRC}/clktck.c ${SH_LIBSRC}/getcwd.c \
${SH_LIBSRC}/zcatfd.c ${SH_LIBSRC}/shmatch.c \
${SH_LIBSRC}/strnlen.c ${SH_LIBSRC}/winsize.c \
${SH_LIBSRC}/eaccess.c ${SH_LIBSRC}/wcsdup.c \
${SH_LIBSRC}/zmapfd.c
${SH_LIBSRC}/zmapfd.c ${SH_LIBSRC}/fpurge.c
SHLIB_LIB = -lsh
SHLIB_LIBNAME = libsh.a
Vendored
+8
View File
@@ -3997,3 +3997,11 @@ AC_DEFUN([jm_AC_TYPE_UNSIGNED_LONG_LONG],
[Define if you have the unsigned long long type.])
fi
])
dnl From gnulib
AC_DEFUN([BASH_FUNC_FPURGE],
[
AC_CHECK_FUNCS_ONCE([fpurge])
AC_CHECK_FUNCS_ONCE([__fpurge])
AC_CHECK_DECLS([fpurge], , , [#include <stdio.h>])
])
+222 -1
View File
@@ -1,5 +1,5 @@
@%:@! /bin/sh
@%:@ From configure.in for Bash 3.2, version 3.195.
@%:@ From configure.in for Bash 3.2, version 3.196.
@%:@ Guess values for system-dependent variables and create Makefiles.
@%:@ Generated by GNU Autoconf 2.60 for bash 3.2-maint.
@%:@
@@ -601,6 +601,7 @@ ac_includes_default="\
# include <unistd.h>
#endif"
ac_func_list=
ac_subst_vars='SHELL
PATH_SEPARATOR
PACKAGE_NAME
@@ -1781,6 +1782,8 @@ echo "$as_me: creating cache $cache_file" >&6;}
>$cache_file
fi
ac_func_list="$ac_func_list fpurge"
ac_func_list="$ac_func_list __fpurge"
# Check that the precious variables saved in the cache have kept the same
# value.
ac_cache_corrupted=false
@@ -29169,6 +29172,224 @@ _ACEOF
fi
for ac_func in $ac_func_list
do
as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
{ echo "$as_me:$LINENO: checking for $ac_func" >&5
echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6; }
if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
For example, HP-UX 11i <limits.h> declares gettimeofday. */
#define $ac_func innocuous_$ac_func
/* System header to define __stub macros and hopefully few prototypes,
which can conflict with char $ac_func (); below.
Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
<limits.h> exists even on freestanding compilers. */
#ifdef __STDC__
# include <limits.h>
#else
# include <assert.h>
#endif
#undef $ac_func
/* Override any GCC internal prototype to avoid an error.
Use char because int might match the return type of a GCC
builtin and then its argument prototype would still apply. */
#ifdef __cplusplus
extern "C"
#endif
char $ac_func ();
/* The GNU C library defines this for functions which it implements
to always fail with ENOSYS. Some functions are actually named
something starting with __ and the normal name is an alias. */
#if defined __stub_$ac_func || defined __stub___$ac_func
choke me
#endif
int
main ()
{
return $ac_func ();
;
return 0;
}
_ACEOF
rm -f conftest.$ac_objext conftest$ac_exeext
if { (ac_try="$ac_link"
case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
(eval "$ac_link") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } &&
{ ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
{ (case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
(eval "$ac_try") 2>&5
ac_status=$?
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); }; } &&
{ ac_try='test -s conftest$ac_exeext'
{ (case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
(eval "$ac_try") 2>&5
ac_status=$?
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); }; }; then
eval "$as_ac_var=yes"
else
echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
eval "$as_ac_var=no"
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext conftest.$ac_ext
fi
ac_res=`eval echo '${'$as_ac_var'}'`
{ echo "$as_me:$LINENO: result: $ac_res" >&5
echo "${ECHO_T}$ac_res" >&6; }
if test `eval echo '${'$as_ac_var'}'` = yes; then
cat >>confdefs.h <<_ACEOF
@%:@define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
_ACEOF
fi
done
{ echo "$as_me:$LINENO: checking whether fpurge is declared" >&5
echo $ECHO_N "checking whether fpurge is declared... $ECHO_C" >&6; }
if test "${ac_cv_have_decl_fpurge+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
#include <stdio.h>
int
main ()
{
#ifndef fpurge
char *p = (char *) fpurge;
return !p;
#endif
;
return 0;
}
_ACEOF
rm -f conftest.$ac_objext
if { (ac_try="$ac_compile"
case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } &&
{ ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
{ (case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
(eval "$ac_try") 2>&5
ac_status=$?
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); }; } &&
{ ac_try='test -s conftest.$ac_objext'
{ (case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
(eval "$ac_try") 2>&5
ac_status=$?
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); }; }; then
ac_cv_have_decl_fpurge=yes
else
echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_cv_have_decl_fpurge=no
fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
{ echo "$as_me:$LINENO: result: $ac_cv_have_decl_fpurge" >&5
echo "${ECHO_T}$ac_cv_have_decl_fpurge" >&6; }
if test $ac_cv_have_decl_fpurge = yes; then
cat >>confdefs.h <<_ACEOF
@%:@define HAVE_DECL_FPURGE 1
_ACEOF
else
cat >>confdefs.h <<_ACEOF
@%:@define HAVE_DECL_FPURGE 0
_ACEOF
fi
{ echo "$as_me:$LINENO: checking to see if getenv can be redefined" >&5
echo $ECHO_N "checking to see if getenv can be redefined... $ECHO_C" >&6; }
if test "${bash_cv_getenv_redef+set}" = set; then
+43 -43
View File
@@ -15,26 +15,26 @@
'configure.in'
],
{
'AM_PROG_F77_C_O' => 1,
'_LT_AC_TAGCONFIG' => 1,
'AM_PROG_F77_C_O' => 1,
'm4_pattern_forbid' => 1,
'AC_CANONICAL_TARGET' => 1,
'AC_CONFIG_LIBOBJ_DIR' => 1,
'AC_C_VOLATILE' => 1,
'AC_TYPE_OFF_T' => 1,
'AC_C_VOLATILE' => 1,
'AC_FUNC_CLOSEDIR_VOID' => 1,
'AC_REPLACE_FNMATCH' => 1,
'AC_PROG_LIBTOOL' => 1,
'AC_FUNC_STAT' => 1,
'AC_FUNC_WAIT3' => 1,
'AC_HEADER_TIME' => 1,
'AC_FUNC_LSTAT' => 1,
'AC_STRUCT_TM' => 1,
'AC_FUNC_WAIT3' => 1,
'AM_AUTOMAKE_VERSION' => 1,
'AC_FUNC_GETMNTENT' => 1,
'AC_STRUCT_TM' => 1,
'AC_FUNC_LSTAT' => 1,
'AC_TYPE_MODE_T' => 1,
'AC_CHECK_HEADERS' => 1,
'AC_FUNC_GETMNTENT' => 1,
'AC_FUNC_STRTOD' => 1,
'AC_CHECK_HEADERS' => 1,
'LT_CONFIG_LTDL_DIR' => 1,
'AC_FUNC_STRNLEN' => 1,
'm4_sinclude' => 1,
@@ -52,22 +52,22 @@
'AC_LIBSOURCE' => 1,
'AC_FUNC_MBRTOWC' => 1,
'AC_STRUCT_ST_BLOCKS' => 1,
'AC_TYPE_SIGNAL' => 1,
'AC_CANONICAL_BUILD' => 1,
'AM_PROG_FC_C_O' => 1,
'AC_CANONICAL_BUILD' => 1,
'AC_TYPE_SIGNAL' => 1,
'AC_TYPE_UID_T' => 1,
'AC_PROG_MAKE_SET' => 1,
'AC_CONFIG_AUX_DIR' => 1,
'_AM_SUBST_NOTMAKE' => 1,
'm4_pattern_allow' => 1,
'AC_CONFIG_AUX_DIR' => 1,
'AC_PROG_MAKE_SET' => 1,
'sinclude' => 1,
'm4_pattern_allow' => 1,
'AC_DEFINE_TRACE_LITERAL' => 1,
'AC_FUNC_STRERROR_R' => 1,
'AC_PROG_CC' => 1,
'AC_DECL_SYS_SIGLIST' => 1,
'AC_FUNC_FORK' => 1,
'AC_FUNC_STRCOLL' => 1,
'AC_DECL_SYS_SIGLIST' => 1,
'AC_FUNC_VPRINTF' => 1,
'AC_FUNC_STRCOLL' => 1,
'AC_PROG_YACC' => 1,
'AC_SUBST_TRACE' => 1,
'AC_INIT' => 1,
@@ -79,48 +79,48 @@
'AC_CANONICAL_HOST' => 1,
'AC_FUNC_GETPGRP' => 1,
'AC_PROG_RANLIB' => 1,
'AM_INIT_AUTOMAKE' => 1,
'AC_FUNC_SETPGRP' => 1,
'AM_INIT_AUTOMAKE' => 1,
'AC_CONFIG_SUBDIRS' => 1,
'AC_FUNC_MMAP' => 1,
'AC_FUNC_REALLOC' => 1,
'AC_TYPE_SIZE_T' => 1,
'AC_CHECK_TYPES' => 1,
'AC_CONFIG_LINKS' => 1,
'AC_REQUIRE_AUX_FILE' => 1,
'AC_CONFIG_LINKS' => 1,
'AC_CHECK_TYPES' => 1,
'LT_SUPPORTED_TAG' => 1,
'AC_CHECK_MEMBERS' => 1,
'AM_MAINTAINER_MODE' => 1,
'AC_FUNC_UTIME_NULL' => 1,
'AC_FUNC_SELECT_ARGTYPES' => 1,
'AC_HEADER_STAT' => 1,
'AC_FUNC_STRFTIME' => 1,
'AC_PROG_CPP' => 1,
'AC_HEADER_STAT' => 1,
'AC_C_INLINE' => 1,
'AC_PROG_LEX' => 1,
'AC_C_CONST' => 1,
'AC_PROG_CPP' => 1,
'AC_TYPE_PID_T' => 1,
'AC_C_CONST' => 1,
'AC_PROG_LEX' => 1,
'AC_CONFIG_FILES' => 1,
'include' => 1,
'AC_FUNC_SETVBUF_REVERSED' => 1,
'AC_PROG_INSTALL' => 1,
'AM_GNU_GETTEXT' => 1,
'AC_CHECK_LIB' => 1,
'AC_FUNC_OBSTACK' => 1,
'AC_CHECK_LIB' => 1,
'AC_FUNC_MALLOC' => 1,
'AC_FUNC_GETGROUPS' => 1,
'AC_FUNC_GETLOADAVG' => 1,
'AC_FC_FREEFORM' => 1,
'AC_FUNC_GETLOADAVG' => 1,
'AH_OUTPUT' => 1,
'AC_FUNC_FSEEKO' => 1,
'AM_PROG_CC_C_O' => 1,
'AC_FUNC_MKTIME' => 1,
'AC_CANONICAL_SYSTEM' => 1,
'AM_CONDITIONAL' => 1,
'AC_CANONICAL_SYSTEM' => 1,
'AC_FUNC_MKTIME' => 1,
'AC_CONFIG_HEADERS' => 1,
'AC_HEADER_SYS_WAIT' => 1,
'AC_PROG_LN_S' => 1,
'AC_FUNC_MEMCMP' => 1,
'AC_PROG_LN_S' => 1,
'm4_include' => 1,
'AC_HEADER_DIRENT' => 1,
'AC_CHECK_FUNCS' => 1
@@ -140,19 +140,19 @@
{
'm4_pattern_forbid' => 1,
'AC_CONFIG_LIBOBJ_DIR' => 1,
'AC_C_VOLATILE' => 1,
'AC_TYPE_OFF_T' => 1,
'AC_C_VOLATILE' => 1,
'AC_FUNC_CLOSEDIR_VOID' => 1,
'AC_REPLACE_FNMATCH' => 1,
'AC_PROG_LIBTOOL' => 1,
'AC_FUNC_STAT' => 1,
'AC_FUNC_WAIT3' => 1,
'AC_HEADER_TIME' => 1,
'AC_FUNC_LSTAT' => 1,
'AC_STRUCT_TM' => 1,
'AC_FUNC_WAIT3' => 1,
'AM_AUTOMAKE_VERSION' => 1,
'AC_FUNC_GETMNTENT' => 1,
'AC_STRUCT_TM' => 1,
'AC_FUNC_LSTAT' => 1,
'AC_TYPE_MODE_T' => 1,
'AC_FUNC_GETMNTENT' => 1,
'AC_FUNC_STRTOD' => 1,
'AC_CHECK_HEADERS' => 1,
'AC_FUNC_STRNLEN' => 1,
@@ -171,17 +171,17 @@
'AC_STRUCT_ST_BLOCKS' => 1,
'AC_TYPE_SIGNAL' => 1,
'AC_TYPE_UID_T' => 1,
'AC_PROG_MAKE_SET' => 1,
'AC_CONFIG_AUX_DIR' => 1,
'm4_pattern_allow' => 1,
'AC_PROG_MAKE_SET' => 1,
'sinclude' => 1,
'm4_pattern_allow' => 1,
'AC_DEFINE_TRACE_LITERAL' => 1,
'AC_FUNC_STRERROR_R' => 1,
'AC_PROG_CC' => 1,
'AC_FUNC_FORK' => 1,
'AC_DECL_SYS_SIGLIST' => 1,
'AC_FUNC_STRCOLL' => 1,
'AC_FUNC_FORK' => 1,
'AC_FUNC_VPRINTF' => 1,
'AC_FUNC_STRCOLL' => 1,
'AC_PROG_YACC' => 1,
'AC_INIT' => 1,
'AC_STRUCT_TIMEZONE' => 1,
@@ -203,33 +203,33 @@
'AM_MAINTAINER_MODE' => 1,
'AC_FUNC_UTIME_NULL' => 1,
'AC_FUNC_SELECT_ARGTYPES' => 1,
'AC_HEADER_STAT' => 1,
'AC_FUNC_STRFTIME' => 1,
'AC_PROG_CPP' => 1,
'AC_HEADER_STAT' => 1,
'AC_C_INLINE' => 1,
'AC_TYPE_PID_T' => 1,
'AC_PROG_LEX' => 1,
'AC_PROG_CPP' => 1,
'AC_C_CONST' => 1,
'AC_PROG_LEX' => 1,
'AC_TYPE_PID_T' => 1,
'AC_CONFIG_FILES' => 1,
'include' => 1,
'AC_FUNC_SETVBUF_REVERSED' => 1,
'AC_PROG_INSTALL' => 1,
'AM_GNU_GETTEXT' => 1,
'AC_CHECK_LIB' => 1,
'AC_FUNC_OBSTACK' => 1,
'AC_CHECK_LIB' => 1,
'AC_FUNC_MALLOC' => 1,
'AC_FUNC_GETGROUPS' => 1,
'AC_FUNC_GETLOADAVG' => 1,
'AH_OUTPUT' => 1,
'AC_FUNC_FSEEKO' => 1,
'AM_PROG_CC_C_O' => 1,
'AC_FUNC_MKTIME' => 1,
'AC_CANONICAL_SYSTEM' => 1,
'AM_CONDITIONAL' => 1,
'AC_CANONICAL_SYSTEM' => 1,
'AC_FUNC_MKTIME' => 1,
'AC_CONFIG_HEADERS' => 1,
'AC_HEADER_SYS_WAIT' => 1,
'AC_PROG_LN_S' => 1,
'AC_FUNC_MEMCMP' => 1,
'AC_PROG_LN_S' => 1,
'm4_include' => 1,
'AC_HEADER_DIRENT' => 1,
'AC_CHECK_FUNCS' => 1
+231 -219
View File
@@ -2217,152 +2217,164 @@ aclocal.m4:685: BASH_FUNC_ULIMIT_MAXFDS is expanded from...
configure.in:895: the top level])
m4trace:configure.in:895: -1- AC_DEFINE_TRACE_LITERAL([ULIMIT_MAXFDS])
m4trace:configure.in:895: -1- m4_pattern_allow([^ULIMIT_MAXFDS$])
m4trace:configure.in:896: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
m4trace:configure.in:896: -1- AH_OUTPUT([HAVE_FPURGE], [/* Define to 1 if you have the `fpurge\' function. */
#undef HAVE_FPURGE])
m4trace:configure.in:896: -1- AC_CHECK_FUNCS([$ac_func_list])
m4trace:configure.in:896: -1- AH_OUTPUT([HAVE___FPURGE], [/* Define to 1 if you have the `__fpurge\' function. */
#undef HAVE___FPURGE])
m4trace:configure.in:896: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_FPURGE])
m4trace:configure.in:896: -1- m4_pattern_allow([^HAVE_DECL_FPURGE$])
m4trace:configure.in:896: -1- AH_OUTPUT([HAVE_DECL_FPURGE], [/* Define to 1 if you have the declaration of `fpurge\', and to 0 if you don\'t.
*/
#undef HAVE_DECL_FPURGE])
m4trace:configure.in:896: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_FPURGE])
m4trace:configure.in:896: -1- m4_pattern_allow([^HAVE_DECL_FPURGE$])
m4trace:configure.in:897: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
You should run autoupdate.], [autoconf/general.m4:2490: AC_TRY_RUN is expanded from...
../../lib/m4sugar/m4sh.m4:519: AS_IF is expanded from...
autoconf/general.m4:1922: AC_CACHE_VAL is expanded from...
aclocal.m4:606: BASH_FUNC_GETENV is expanded from...
configure.in:896: the top level])
m4trace:configure.in:896: -1- AC_DEFINE_TRACE_LITERAL([CAN_REDEFINE_GETENV])
m4trace:configure.in:896: -1- m4_pattern_allow([^CAN_REDEFINE_GETENV$])
m4trace:configure.in:898: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
configure.in:897: the top level])
m4trace:configure.in:897: -1- AC_DEFINE_TRACE_LITERAL([CAN_REDEFINE_GETENV])
m4trace:configure.in:897: -1- m4_pattern_allow([^CAN_REDEFINE_GETENV$])
m4trace:configure.in:899: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
You should run autoupdate.], [autoconf/general.m4:2490: AC_TRY_RUN is expanded from...
../../lib/m4sugar/m4sh.m4:519: AS_IF is expanded from...
autoconf/general.m4:1922: AC_CACHE_VAL is expanded from...
aclocal.m4:711: BASH_FUNC_GETCWD is expanded from...
configure.in:898: the top level])
m4trace:configure.in:898: -1- AC_DEFINE_TRACE_LITERAL([GETCWD_BROKEN])
m4trace:configure.in:898: -1- m4_pattern_allow([^GETCWD_BROKEN$])
m4trace:configure.in:898: -1- AC_LIBSOURCE([getcwd.c])
m4trace:configure.in:898: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS getcwd.$ac_objext"])
m4trace:configure.in:898: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
m4trace:configure.in:898: -1- m4_pattern_allow([^LIB@&t@OBJS$])
m4trace:configure.in:900: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
You should run autoupdate.], [autoconf/general.m4:2490: AC_TRY_RUN is expanded from...
../../lib/m4sugar/m4sh.m4:519: AS_IF is expanded from...
autoconf/general.m4:1922: AC_CACHE_VAL is expanded from...
aclocal.m4:812: BASH_FUNC_POSIX_SETJMP is expanded from...
configure.in:900: the top level])
m4trace:configure.in:900: -1- AC_DEFINE_TRACE_LITERAL([HAVE_POSIX_SIGSETJMP])
m4trace:configure.in:900: -1- m4_pattern_allow([^HAVE_POSIX_SIGSETJMP$])
configure.in:899: the top level])
m4trace:configure.in:899: -1- AC_DEFINE_TRACE_LITERAL([GETCWD_BROKEN])
m4trace:configure.in:899: -1- m4_pattern_allow([^GETCWD_BROKEN$])
m4trace:configure.in:899: -1- AC_LIBSOURCE([getcwd.c])
m4trace:configure.in:899: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS getcwd.$ac_objext"])
m4trace:configure.in:899: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
m4trace:configure.in:899: -1- m4_pattern_allow([^LIB@&t@OBJS$])
m4trace:configure.in:901: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
You should run autoupdate.], [autoconf/general.m4:2490: AC_TRY_RUN is expanded from...
../../lib/m4sugar/m4sh.m4:519: AS_IF is expanded from...
autoconf/general.m4:1922: AC_CACHE_VAL is expanded from...
aclocal.m4:861: BASH_FUNC_STRCOLL is expanded from...
aclocal.m4:812: BASH_FUNC_POSIX_SETJMP is expanded from...
configure.in:901: the top level])
m4trace:configure.in:901: -1- AC_DEFINE_TRACE_LITERAL([STRCOLL_BROKEN])
m4trace:configure.in:901: -1- m4_pattern_allow([^STRCOLL_BROKEN$])
m4trace:configure.in:907: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
m4trace:configure.in:901: -1- AC_DEFINE_TRACE_LITERAL([HAVE_POSIX_SIGSETJMP])
m4trace:configure.in:901: -1- m4_pattern_allow([^HAVE_POSIX_SIGSETJMP$])
m4trace:configure.in:902: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
You should run autoupdate.], [autoconf/general.m4:2490: AC_TRY_RUN is expanded from...
../../lib/m4sugar/m4sh.m4:519: AS_IF is expanded from...
autoconf/general.m4:1922: AC_CACHE_VAL is expanded from...
aclocal.m4:861: BASH_FUNC_STRCOLL is expanded from...
configure.in:902: the top level])
m4trace:configure.in:902: -1- AC_DEFINE_TRACE_LITERAL([STRCOLL_BROKEN])
m4trace:configure.in:902: -1- m4_pattern_allow([^STRCOLL_BROKEN$])
m4trace:configure.in:908: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
You should run autoupdate.], [autoconf/general.m4:2426: AC_TRY_LINK is expanded from...
../../lib/m4sugar/m4sh.m4:519: AS_IF is expanded from...
autoconf/general.m4:1922: AC_CACHE_VAL is expanded from...
autoconf/general.m4:1935: AC_CACHE_CHECK is expanded from...
aclocal.m4:636: BASH_FUNC_STD_PUTENV is expanded from...
configure.in:907: the top level])
m4trace:configure.in:907: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STD_PUTENV])
m4trace:configure.in:907: -1- m4_pattern_allow([^HAVE_STD_PUTENV$])
m4trace:configure.in:909: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STD_PUTENV])
m4trace:configure.in:909: -1- m4_pattern_allow([^HAVE_STD_PUTENV$])
m4trace:configure.in:912: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
configure.in:908: the top level])
m4trace:configure.in:908: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STD_PUTENV])
m4trace:configure.in:908: -1- m4_pattern_allow([^HAVE_STD_PUTENV$])
m4trace:configure.in:910: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STD_PUTENV])
m4trace:configure.in:910: -1- m4_pattern_allow([^HAVE_STD_PUTENV$])
m4trace:configure.in:913: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
You should run autoupdate.], [autoconf/general.m4:2426: AC_TRY_LINK is expanded from...
../../lib/m4sugar/m4sh.m4:519: AS_IF is expanded from...
autoconf/general.m4:1922: AC_CACHE_VAL is expanded from...
autoconf/general.m4:1935: AC_CACHE_CHECK is expanded from...
aclocal.m4:666: BASH_FUNC_STD_UNSETENV is expanded from...
configure.in:912: the top level])
m4trace:configure.in:912: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STD_UNSETENV])
m4trace:configure.in:912: -1- m4_pattern_allow([^HAVE_STD_UNSETENV$])
m4trace:configure.in:914: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STD_UNSETENV])
m4trace:configure.in:914: -1- m4_pattern_allow([^HAVE_STD_UNSETENV$])
m4trace:configure.in:917: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
configure.in:913: the top level])
m4trace:configure.in:913: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STD_UNSETENV])
m4trace:configure.in:913: -1- m4_pattern_allow([^HAVE_STD_UNSETENV$])
m4trace:configure.in:915: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STD_UNSETENV])
m4trace:configure.in:915: -1- m4_pattern_allow([^HAVE_STD_UNSETENV$])
m4trace:configure.in:918: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
You should run autoupdate.], [autoconf/general.m4:2490: AC_TRY_RUN is expanded from...
../../lib/m4sugar/m4sh.m4:519: AS_IF is expanded from...
autoconf/general.m4:1922: AC_CACHE_VAL is expanded from...
aclocal.m4:887: BASH_FUNC_PRINTF_A_FORMAT is expanded from...
configure.in:917: the top level])
m4trace:configure.in:917: -1- AC_DEFINE_TRACE_LITERAL([HAVE_PRINTF_A_FORMAT])
m4trace:configure.in:917: -1- m4_pattern_allow([^HAVE_PRINTF_A_FORMAT$])
m4trace:configure.in:920: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
You should run autoupdate.], [autoconf/general.m4:2490: AC_TRY_RUN is expanded from...
../../lib/m4sugar/m4sh.m4:519: AS_IF is expanded from...
autoconf/general.m4:1922: AC_CACHE_VAL is expanded from...
aclocal.m4:1338: BASH_SYS_REINSTALL_SIGHANDLERS is expanded from...
configure.in:920: the top level])
m4trace:configure.in:920: -1- AC_DEFINE_TRACE_LITERAL([MUST_REINSTALL_SIGHANDLERS])
m4trace:configure.in:920: -1- m4_pattern_allow([^MUST_REINSTALL_SIGHANDLERS$])
configure.in:918: the top level])
m4trace:configure.in:918: -1- AC_DEFINE_TRACE_LITERAL([HAVE_PRINTF_A_FORMAT])
m4trace:configure.in:918: -1- m4_pattern_allow([^HAVE_PRINTF_A_FORMAT$])
m4trace:configure.in:921: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
You should run autoupdate.], [autoconf/general.m4:2490: AC_TRY_RUN is expanded from...
../../lib/m4sugar/m4sh.m4:519: AS_IF is expanded from...
autoconf/general.m4:1922: AC_CACHE_VAL is expanded from...
aclocal.m4:1396: BASH_SYS_JOB_CONTROL_MISSING is expanded from...
aclocal.m4:1338: BASH_SYS_REINSTALL_SIGHANDLERS is expanded from...
configure.in:921: the top level])
m4trace:configure.in:921: -1- AC_DEFINE_TRACE_LITERAL([JOB_CONTROL_MISSING])
m4trace:configure.in:921: -1- m4_pattern_allow([^JOB_CONTROL_MISSING$])
m4trace:configure.in:921: -1- AC_DEFINE_TRACE_LITERAL([MUST_REINSTALL_SIGHANDLERS])
m4trace:configure.in:921: -1- m4_pattern_allow([^MUST_REINSTALL_SIGHANDLERS$])
m4trace:configure.in:922: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
You should run autoupdate.], [autoconf/general.m4:2490: AC_TRY_RUN is expanded from...
../../lib/m4sugar/m4sh.m4:519: AS_IF is expanded from...
autoconf/general.m4:1922: AC_CACHE_VAL is expanded from...
aclocal.m4:1448: BASH_SYS_NAMED_PIPES is expanded from...
aclocal.m4:1396: BASH_SYS_JOB_CONTROL_MISSING is expanded from...
configure.in:922: the top level])
m4trace:configure.in:922: -1- AC_DEFINE_TRACE_LITERAL([NAMED_PIPES_MISSING])
m4trace:configure.in:922: -1- m4_pattern_allow([^NAMED_PIPES_MISSING$])
m4trace:configure.in:925: -1- AC_DEFINE_TRACE_LITERAL([GWINSZ_IN_SYS_IOCTL])
m4trace:configure.in:925: -1- m4_pattern_allow([^GWINSZ_IN_SYS_IOCTL$])
m4trace:configure.in:925: -1- AH_OUTPUT([GWINSZ_IN_SYS_IOCTL], [/* Define to 1 if `TIOCGWINSZ\' requires <sys/ioctl.h>. */
#undef GWINSZ_IN_SYS_IOCTL])
m4trace:configure.in:926: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
You should run autoupdate.], [autoconf/general.m4:2384: AC_TRY_COMPILE is expanded from...
m4trace:configure.in:922: -1- AC_DEFINE_TRACE_LITERAL([JOB_CONTROL_MISSING])
m4trace:configure.in:922: -1- m4_pattern_allow([^JOB_CONTROL_MISSING$])
m4trace:configure.in:923: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
You should run autoupdate.], [autoconf/general.m4:2490: AC_TRY_RUN is expanded from...
../../lib/m4sugar/m4sh.m4:519: AS_IF is expanded from...
autoconf/general.m4:1922: AC_CACHE_VAL is expanded from...
aclocal.m4:1491: BASH_HAVE_TIOCSTAT is expanded from...
configure.in:926: the top level])
m4trace:configure.in:926: -1- AC_DEFINE_TRACE_LITERAL([TIOCSTAT_IN_SYS_IOCTL])
m4trace:configure.in:926: -1- m4_pattern_allow([^TIOCSTAT_IN_SYS_IOCTL$])
aclocal.m4:1448: BASH_SYS_NAMED_PIPES is expanded from...
configure.in:923: the top level])
m4trace:configure.in:923: -1- AC_DEFINE_TRACE_LITERAL([NAMED_PIPES_MISSING])
m4trace:configure.in:923: -1- m4_pattern_allow([^NAMED_PIPES_MISSING$])
m4trace:configure.in:926: -1- AC_DEFINE_TRACE_LITERAL([GWINSZ_IN_SYS_IOCTL])
m4trace:configure.in:926: -1- m4_pattern_allow([^GWINSZ_IN_SYS_IOCTL$])
m4trace:configure.in:926: -1- AH_OUTPUT([GWINSZ_IN_SYS_IOCTL], [/* Define to 1 if `TIOCGWINSZ\' requires <sys/ioctl.h>. */
#undef GWINSZ_IN_SYS_IOCTL])
m4trace:configure.in:927: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
You should run autoupdate.], [autoconf/general.m4:2384: AC_TRY_COMPILE is expanded from...
../../lib/m4sugar/m4sh.m4:519: AS_IF is expanded from...
autoconf/general.m4:1922: AC_CACHE_VAL is expanded from...
aclocal.m4:1503: BASH_HAVE_FIONREAD is expanded from...
aclocal.m4:1491: BASH_HAVE_TIOCSTAT is expanded from...
configure.in:927: the top level])
m4trace:configure.in:927: -1- AC_DEFINE_TRACE_LITERAL([FIONREAD_IN_SYS_IOCTL])
m4trace:configure.in:927: -1- m4_pattern_allow([^FIONREAD_IN_SYS_IOCTL$])
m4trace:configure.in:929: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
m4trace:configure.in:927: -1- AC_DEFINE_TRACE_LITERAL([TIOCSTAT_IN_SYS_IOCTL])
m4trace:configure.in:927: -1- m4_pattern_allow([^TIOCSTAT_IN_SYS_IOCTL$])
m4trace:configure.in:928: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
You should run autoupdate.], [autoconf/general.m4:2384: AC_TRY_COMPILE is expanded from...
../../lib/m4sugar/m4sh.m4:519: AS_IF is expanded from...
autoconf/general.m4:1922: AC_CACHE_VAL is expanded from...
aclocal.m4:1503: BASH_HAVE_FIONREAD is expanded from...
configure.in:928: the top level])
m4trace:configure.in:928: -1- AC_DEFINE_TRACE_LITERAL([FIONREAD_IN_SYS_IOCTL])
m4trace:configure.in:928: -1- m4_pattern_allow([^FIONREAD_IN_SYS_IOCTL$])
m4trace:configure.in:930: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
You should run autoupdate.], [autoconf/general.m4:2490: AC_TRY_RUN is expanded from...
../../lib/m4sugar/m4sh.m4:519: AS_IF is expanded from...
autoconf/general.m4:1922: AC_CACHE_VAL is expanded from...
aclocal.m4:1939: BASH_CHECK_WCONTINUED is expanded from...
configure.in:929: the top level])
m4trace:configure.in:929: -1- AC_DEFINE_TRACE_LITERAL([WCONTINUED_BROKEN])
m4trace:configure.in:929: -1- m4_pattern_allow([^WCONTINUED_BROKEN$])
m4trace:configure.in:932: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
configure.in:930: the top level])
m4trace:configure.in:930: -1- AC_DEFINE_TRACE_LITERAL([WCONTINUED_BROKEN])
m4trace:configure.in:930: -1- m4_pattern_allow([^WCONTINUED_BROKEN$])
m4trace:configure.in:933: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
You should run autoupdate.], [autoconf/general.m4:2384: AC_TRY_COMPILE is expanded from...
../../lib/m4sugar/m4sh.m4:519: AS_IF is expanded from...
autoconf/general.m4:1922: AC_CACHE_VAL is expanded from...
aclocal.m4:1520: BASH_CHECK_SPEED_T is expanded from...
configure.in:932: the top level])
m4trace:configure.in:932: -1- AC_DEFINE_TRACE_LITERAL([SPEED_T_IN_SYS_TYPES])
m4trace:configure.in:932: -1- m4_pattern_allow([^SPEED_T_IN_SYS_TYPES$])
m4trace:configure.in:933: -1- AC_DEFINE_TRACE_LITERAL([HAVE_GETPW_DECLS])
m4trace:configure.in:933: -1- m4_pattern_allow([^HAVE_GETPW_DECLS$])
m4trace:configure.in:934: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
configure.in:933: the top level])
m4trace:configure.in:933: -1- AC_DEFINE_TRACE_LITERAL([SPEED_T_IN_SYS_TYPES])
m4trace:configure.in:933: -1- m4_pattern_allow([^SPEED_T_IN_SYS_TYPES$])
m4trace:configure.in:934: -1- AC_DEFINE_TRACE_LITERAL([HAVE_GETPW_DECLS])
m4trace:configure.in:934: -1- m4_pattern_allow([^HAVE_GETPW_DECLS$])
m4trace:configure.in:935: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
You should run autoupdate.], [autoconf/general.m4:2490: AC_TRY_RUN is expanded from...
../../lib/m4sugar/m4sh.m4:519: AS_IF is expanded from...
autoconf/general.m4:1922: AC_CACHE_VAL is expanded from...
aclocal.m4:1667: BASH_CHECK_RTSIGS is expanded from...
configure.in:934: the top level])
m4trace:configure.in:934: -1- AC_DEFINE_TRACE_LITERAL([UNUSABLE_RT_SIGNALS])
m4trace:configure.in:934: -1- m4_pattern_allow([^UNUSABLE_RT_SIGNALS$])
m4trace:configure.in:935: -1- AC_SUBST([SIGLIST_O])
m4trace:configure.in:935: -1- AC_SUBST_TRACE([SIGLIST_O])
m4trace:configure.in:935: -1- m4_pattern_allow([^SIGLIST_O$])
m4trace:configure.in:939: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
configure.in:935: the top level])
m4trace:configure.in:935: -1- AC_DEFINE_TRACE_LITERAL([UNUSABLE_RT_SIGNALS])
m4trace:configure.in:935: -1- m4_pattern_allow([^UNUSABLE_RT_SIGNALS$])
m4trace:configure.in:936: -1- AC_SUBST([SIGLIST_O])
m4trace:configure.in:936: -1- AC_SUBST_TRACE([SIGLIST_O])
m4trace:configure.in:936: -1- m4_pattern_allow([^SIGLIST_O$])
m4trace:configure.in:940: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
You should run autoupdate.], [autoconf/general.m4:2384: AC_TRY_COMPILE is expanded from...
../../lib/m4sugar/m4sh.m4:519: AS_IF is expanded from...
autoconf/general.m4:1922: AC_CACHE_VAL is expanded from...
aclocal.m4:1616: BASH_CHECK_KERNEL_RLIMIT is expanded from...
configure.in:939: the top level])
m4trace:configure.in:939: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
configure.in:940: the top level])
m4trace:configure.in:940: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
You should run autoupdate.], [autoconf/general.m4:2384: AC_TRY_COMPILE is expanded from...
../../lib/m4sugar/m4sh.m4:519: AS_IF is expanded from...
autoconf/general.m4:2377: AC_COMPILE_IFELSE is expanded from...
@@ -2370,149 +2382,149 @@ autoconf/general.m4:2384: AC_TRY_COMPILE is expanded from...
../../lib/m4sugar/m4sh.m4:519: AS_IF is expanded from...
autoconf/general.m4:1922: AC_CACHE_VAL is expanded from...
aclocal.m4:1616: BASH_CHECK_KERNEL_RLIMIT is expanded from...
configure.in:939: the top level])
m4trace:configure.in:939: -1- AC_DEFINE_TRACE_LITERAL([RLIMIT_NEEDS_KERNEL])
m4trace:configure.in:939: -1- m4_pattern_allow([^RLIMIT_NEEDS_KERNEL$])
m4trace:configure.in:947: -1- AC_CHECK_LIB([termcap], [tgetent], [bash_cv_termcap_lib=libtermcap], [AC_CHECK_LIB(tinfo, tgetent, bash_cv_termcap_lib=libtinfo,
configure.in:940: the top level])
m4trace:configure.in:940: -1- AC_DEFINE_TRACE_LITERAL([RLIMIT_NEEDS_KERNEL])
m4trace:configure.in:940: -1- m4_pattern_allow([^RLIMIT_NEEDS_KERNEL$])
m4trace:configure.in:948: -1- AC_CHECK_LIB([termcap], [tgetent], [bash_cv_termcap_lib=libtermcap], [AC_CHECK_LIB(tinfo, tgetent, bash_cv_termcap_lib=libtinfo,
[AC_CHECK_LIB(curses, tgetent, bash_cv_termcap_lib=libcurses,
[AC_CHECK_LIB(ncurses, tgetent, bash_cv_termcap_lib=libncurses,
bash_cv_termcap_lib=gnutermcap)])])])
m4trace:configure.in:947: -1- AC_CHECK_LIB([tinfo], [tgetent], [bash_cv_termcap_lib=libtinfo], [AC_CHECK_LIB(curses, tgetent, bash_cv_termcap_lib=libcurses,
m4trace:configure.in:948: -1- AC_CHECK_LIB([tinfo], [tgetent], [bash_cv_termcap_lib=libtinfo], [AC_CHECK_LIB(curses, tgetent, bash_cv_termcap_lib=libcurses,
[AC_CHECK_LIB(ncurses, tgetent, bash_cv_termcap_lib=libncurses,
bash_cv_termcap_lib=gnutermcap)])])
m4trace:configure.in:947: -1- AC_CHECK_LIB([curses], [tgetent], [bash_cv_termcap_lib=libcurses], [AC_CHECK_LIB(ncurses, tgetent, bash_cv_termcap_lib=libncurses,
m4trace:configure.in:948: -1- AC_CHECK_LIB([curses], [tgetent], [bash_cv_termcap_lib=libcurses], [AC_CHECK_LIB(ncurses, tgetent, bash_cv_termcap_lib=libncurses,
bash_cv_termcap_lib=gnutermcap)])
m4trace:configure.in:947: -1- AC_CHECK_LIB([ncurses], [tgetent], [bash_cv_termcap_lib=libncurses], [bash_cv_termcap_lib=gnutermcap])
m4trace:configure.in:949: -1- AC_SUBST([TERMCAP_LIB])
m4trace:configure.in:949: -1- AC_SUBST_TRACE([TERMCAP_LIB])
m4trace:configure.in:949: -1- m4_pattern_allow([^TERMCAP_LIB$])
m4trace:configure.in:950: -1- AC_SUBST([TERMCAP_DEP])
m4trace:configure.in:950: -1- AC_SUBST_TRACE([TERMCAP_DEP])
m4trace:configure.in:950: -1- m4_pattern_allow([^TERMCAP_DEP$])
m4trace:configure.in:952: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DEV_FD])
m4trace:configure.in:952: -1- m4_pattern_allow([^HAVE_DEV_FD$])
m4trace:configure.in:952: -1- AC_DEFINE_TRACE_LITERAL([DEV_FD_PREFIX])
m4trace:configure.in:952: -1- m4_pattern_allow([^DEV_FD_PREFIX$])
m4trace:configure.in:952: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DEV_FD])
m4trace:configure.in:952: -1- m4_pattern_allow([^HAVE_DEV_FD$])
m4trace:configure.in:952: -1- AC_DEFINE_TRACE_LITERAL([DEV_FD_PREFIX])
m4trace:configure.in:952: -1- m4_pattern_allow([^DEV_FD_PREFIX$])
m4trace:configure.in:953: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DEV_STDIN])
m4trace:configure.in:953: -1- m4_pattern_allow([^HAVE_DEV_STDIN$])
m4trace:configure.in:954: -1- AC_DEFINE_TRACE_LITERAL([DEFAULT_MAIL_DIRECTORY])
m4trace:configure.in:954: -1- m4_pattern_allow([^DEFAULT_MAIL_DIRECTORY$])
m4trace:configure.in:961: -1- AC_DEFINE_TRACE_LITERAL([JOB_CONTROL])
m4trace:configure.in:961: -1- m4_pattern_allow([^JOB_CONTROL$])
m4trace:configure.in:967: -1- AC_SUBST([JOBS_O])
m4trace:configure.in:967: -1- AC_SUBST_TRACE([JOBS_O])
m4trace:configure.in:967: -1- m4_pattern_allow([^JOBS_O$])
m4trace:configure.in:980: -1- AC_DEFINE_TRACE_LITERAL([SVR4_2])
m4trace:configure.in:980: -1- m4_pattern_allow([^SVR4_2$])
m4trace:configure.in:981: -1- AC_DEFINE_TRACE_LITERAL([SVR4])
m4trace:configure.in:981: -1- m4_pattern_allow([^SVR4$])
m4trace:configure.in:948: -1- AC_CHECK_LIB([ncurses], [tgetent], [bash_cv_termcap_lib=libncurses], [bash_cv_termcap_lib=gnutermcap])
m4trace:configure.in:950: -1- AC_SUBST([TERMCAP_LIB])
m4trace:configure.in:950: -1- AC_SUBST_TRACE([TERMCAP_LIB])
m4trace:configure.in:950: -1- m4_pattern_allow([^TERMCAP_LIB$])
m4trace:configure.in:951: -1- AC_SUBST([TERMCAP_DEP])
m4trace:configure.in:951: -1- AC_SUBST_TRACE([TERMCAP_DEP])
m4trace:configure.in:951: -1- m4_pattern_allow([^TERMCAP_DEP$])
m4trace:configure.in:953: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DEV_FD])
m4trace:configure.in:953: -1- m4_pattern_allow([^HAVE_DEV_FD$])
m4trace:configure.in:953: -1- AC_DEFINE_TRACE_LITERAL([DEV_FD_PREFIX])
m4trace:configure.in:953: -1- m4_pattern_allow([^DEV_FD_PREFIX$])
m4trace:configure.in:953: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DEV_FD])
m4trace:configure.in:953: -1- m4_pattern_allow([^HAVE_DEV_FD$])
m4trace:configure.in:953: -1- AC_DEFINE_TRACE_LITERAL([DEV_FD_PREFIX])
m4trace:configure.in:953: -1- m4_pattern_allow([^DEV_FD_PREFIX$])
m4trace:configure.in:954: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DEV_STDIN])
m4trace:configure.in:954: -1- m4_pattern_allow([^HAVE_DEV_STDIN$])
m4trace:configure.in:955: -1- AC_DEFINE_TRACE_LITERAL([DEFAULT_MAIL_DIRECTORY])
m4trace:configure.in:955: -1- m4_pattern_allow([^DEFAULT_MAIL_DIRECTORY$])
m4trace:configure.in:962: -1- AC_DEFINE_TRACE_LITERAL([JOB_CONTROL])
m4trace:configure.in:962: -1- m4_pattern_allow([^JOB_CONTROL$])
m4trace:configure.in:968: -1- AC_SUBST([JOBS_O])
m4trace:configure.in:968: -1- AC_SUBST_TRACE([JOBS_O])
m4trace:configure.in:968: -1- m4_pattern_allow([^JOBS_O$])
m4trace:configure.in:981: -1- AC_DEFINE_TRACE_LITERAL([SVR4_2])
m4trace:configure.in:981: -1- m4_pattern_allow([^SVR4_2$])
m4trace:configure.in:982: -1- AC_DEFINE_TRACE_LITERAL([SVR4])
m4trace:configure.in:982: -1- m4_pattern_allow([^SVR4$])
m4trace:configure.in:983: -1- AC_DEFINE_TRACE_LITERAL([SVR5])
m4trace:configure.in:983: -1- m4_pattern_allow([^SVR5$])
m4trace:configure.in:999: -1- AC_DEFINE_TRACE_LITERAL([PGRP_PIPE])
m4trace:configure.in:999: -1- m4_pattern_allow([^PGRP_PIPE$])
m4trace:configure.in:1046: -1- AC_SUBST([SHOBJ_CC])
m4trace:configure.in:1046: -1- AC_SUBST_TRACE([SHOBJ_CC])
m4trace:configure.in:1046: -1- m4_pattern_allow([^SHOBJ_CC$])
m4trace:configure.in:1047: -1- AC_SUBST([SHOBJ_CFLAGS])
m4trace:configure.in:1047: -1- AC_SUBST_TRACE([SHOBJ_CFLAGS])
m4trace:configure.in:1047: -1- m4_pattern_allow([^SHOBJ_CFLAGS$])
m4trace:configure.in:1048: -1- AC_SUBST([SHOBJ_LD])
m4trace:configure.in:1048: -1- AC_SUBST_TRACE([SHOBJ_LD])
m4trace:configure.in:1048: -1- m4_pattern_allow([^SHOBJ_LD$])
m4trace:configure.in:1049: -1- AC_SUBST([SHOBJ_LDFLAGS])
m4trace:configure.in:1049: -1- AC_SUBST_TRACE([SHOBJ_LDFLAGS])
m4trace:configure.in:1049: -1- m4_pattern_allow([^SHOBJ_LDFLAGS$])
m4trace:configure.in:1050: -1- AC_SUBST([SHOBJ_XLDFLAGS])
m4trace:configure.in:1050: -1- AC_SUBST_TRACE([SHOBJ_XLDFLAGS])
m4trace:configure.in:1050: -1- m4_pattern_allow([^SHOBJ_XLDFLAGS$])
m4trace:configure.in:1051: -1- AC_SUBST([SHOBJ_LIBS])
m4trace:configure.in:1051: -1- AC_SUBST_TRACE([SHOBJ_LIBS])
m4trace:configure.in:1051: -1- m4_pattern_allow([^SHOBJ_LIBS$])
m4trace:configure.in:1052: -1- AC_SUBST([SHOBJ_STATUS])
m4trace:configure.in:1052: -1- AC_SUBST_TRACE([SHOBJ_STATUS])
m4trace:configure.in:1052: -1- m4_pattern_allow([^SHOBJ_STATUS$])
m4trace:configure.in:1084: -1- AC_SUBST([PROFILE_FLAGS])
m4trace:configure.in:1084: -1- AC_SUBST_TRACE([PROFILE_FLAGS])
m4trace:configure.in:1084: -1- m4_pattern_allow([^PROFILE_FLAGS$])
m4trace:configure.in:1086: -1- AC_SUBST([incdir])
m4trace:configure.in:1086: -1- AC_SUBST_TRACE([incdir])
m4trace:configure.in:1086: -1- m4_pattern_allow([^incdir$])
m4trace:configure.in:1087: -1- AC_SUBST([BUILD_DIR])
m4trace:configure.in:1087: -1- AC_SUBST_TRACE([BUILD_DIR])
m4trace:configure.in:1087: -1- m4_pattern_allow([^BUILD_DIR$])
m4trace:configure.in:1090: -1- AC_SUBST([datarootdir])
m4trace:configure.in:1090: -1- AC_SUBST_TRACE([datarootdir])
m4trace:configure.in:1090: -1- m4_pattern_allow([^datarootdir$])
m4trace:configure.in:1091: -1- AC_SUBST([localedir])
m4trace:configure.in:1091: -1- AC_SUBST_TRACE([localedir])
m4trace:configure.in:1091: -1- m4_pattern_allow([^localedir$])
m4trace:configure.in:1093: -1- AC_SUBST([YACC])
m4trace:configure.in:1093: -1- AC_SUBST_TRACE([YACC])
m4trace:configure.in:1093: -1- m4_pattern_allow([^YACC$])
m4trace:configure.in:1094: -1- AC_SUBST([AR])
m4trace:configure.in:1094: -1- AC_SUBST_TRACE([AR])
m4trace:configure.in:1094: -1- m4_pattern_allow([^AR$])
m4trace:configure.in:1095: -1- AC_SUBST([ARFLAGS])
m4trace:configure.in:1095: -1- AC_SUBST_TRACE([ARFLAGS])
m4trace:configure.in:1095: -1- m4_pattern_allow([^ARFLAGS$])
m4trace:configure.in:1097: -1- AC_SUBST([BASHVERS])
m4trace:configure.in:1097: -1- AC_SUBST_TRACE([BASHVERS])
m4trace:configure.in:1097: -1- m4_pattern_allow([^BASHVERS$])
m4trace:configure.in:1098: -1- AC_SUBST([RELSTATUS])
m4trace:configure.in:1098: -1- AC_SUBST_TRACE([RELSTATUS])
m4trace:configure.in:1098: -1- m4_pattern_allow([^RELSTATUS$])
m4trace:configure.in:1099: -1- AC_SUBST([DEBUG])
m4trace:configure.in:1099: -1- AC_SUBST_TRACE([DEBUG])
m4trace:configure.in:1099: -1- m4_pattern_allow([^DEBUG$])
m4trace:configure.in:1100: -1- AC_SUBST([MALLOC_DEBUG])
m4trace:configure.in:1100: -1- AC_SUBST_TRACE([MALLOC_DEBUG])
m4trace:configure.in:1100: -1- m4_pattern_allow([^MALLOC_DEBUG$])
m4trace:configure.in:1102: -1- AC_SUBST([host_cpu])
m4trace:configure.in:1102: -1- AC_SUBST_TRACE([host_cpu])
m4trace:configure.in:1102: -1- m4_pattern_allow([^host_cpu$])
m4trace:configure.in:1103: -1- AC_SUBST([host_vendor])
m4trace:configure.in:1103: -1- AC_SUBST_TRACE([host_vendor])
m4trace:configure.in:1103: -1- m4_pattern_allow([^host_vendor$])
m4trace:configure.in:1104: -1- AC_SUBST([host_os])
m4trace:configure.in:1104: -1- AC_SUBST_TRACE([host_os])
m4trace:configure.in:1104: -1- m4_pattern_allow([^host_os$])
m4trace:configure.in:1106: -1- AC_SUBST([LOCAL_LIBS])
m4trace:configure.in:1106: -1- AC_SUBST_TRACE([LOCAL_LIBS])
m4trace:configure.in:1106: -1- m4_pattern_allow([^LOCAL_LIBS$])
m4trace:configure.in:1107: -1- AC_SUBST([LOCAL_CFLAGS])
m4trace:configure.in:1107: -1- AC_SUBST_TRACE([LOCAL_CFLAGS])
m4trace:configure.in:1107: -1- m4_pattern_allow([^LOCAL_CFLAGS$])
m4trace:configure.in:1108: -1- AC_SUBST([LOCAL_LDFLAGS])
m4trace:configure.in:1108: -1- AC_SUBST_TRACE([LOCAL_LDFLAGS])
m4trace:configure.in:1108: -1- m4_pattern_allow([^LOCAL_LDFLAGS$])
m4trace:configure.in:1109: -1- AC_SUBST([LOCAL_DEFS])
m4trace:configure.in:1109: -1- AC_SUBST_TRACE([LOCAL_DEFS])
m4trace:configure.in:1109: -1- m4_pattern_allow([^LOCAL_DEFS$])
m4trace:configure.in:1122: -1- AC_CONFIG_FILES([Makefile builtins/Makefile lib/readline/Makefile lib/glob/Makefile \
m4trace:configure.in:983: -1- AC_DEFINE_TRACE_LITERAL([SVR4])
m4trace:configure.in:983: -1- m4_pattern_allow([^SVR4$])
m4trace:configure.in:984: -1- AC_DEFINE_TRACE_LITERAL([SVR5])
m4trace:configure.in:984: -1- m4_pattern_allow([^SVR5$])
m4trace:configure.in:1000: -1- AC_DEFINE_TRACE_LITERAL([PGRP_PIPE])
m4trace:configure.in:1000: -1- m4_pattern_allow([^PGRP_PIPE$])
m4trace:configure.in:1047: -1- AC_SUBST([SHOBJ_CC])
m4trace:configure.in:1047: -1- AC_SUBST_TRACE([SHOBJ_CC])
m4trace:configure.in:1047: -1- m4_pattern_allow([^SHOBJ_CC$])
m4trace:configure.in:1048: -1- AC_SUBST([SHOBJ_CFLAGS])
m4trace:configure.in:1048: -1- AC_SUBST_TRACE([SHOBJ_CFLAGS])
m4trace:configure.in:1048: -1- m4_pattern_allow([^SHOBJ_CFLAGS$])
m4trace:configure.in:1049: -1- AC_SUBST([SHOBJ_LD])
m4trace:configure.in:1049: -1- AC_SUBST_TRACE([SHOBJ_LD])
m4trace:configure.in:1049: -1- m4_pattern_allow([^SHOBJ_LD$])
m4trace:configure.in:1050: -1- AC_SUBST([SHOBJ_LDFLAGS])
m4trace:configure.in:1050: -1- AC_SUBST_TRACE([SHOBJ_LDFLAGS])
m4trace:configure.in:1050: -1- m4_pattern_allow([^SHOBJ_LDFLAGS$])
m4trace:configure.in:1051: -1- AC_SUBST([SHOBJ_XLDFLAGS])
m4trace:configure.in:1051: -1- AC_SUBST_TRACE([SHOBJ_XLDFLAGS])
m4trace:configure.in:1051: -1- m4_pattern_allow([^SHOBJ_XLDFLAGS$])
m4trace:configure.in:1052: -1- AC_SUBST([SHOBJ_LIBS])
m4trace:configure.in:1052: -1- AC_SUBST_TRACE([SHOBJ_LIBS])
m4trace:configure.in:1052: -1- m4_pattern_allow([^SHOBJ_LIBS$])
m4trace:configure.in:1053: -1- AC_SUBST([SHOBJ_STATUS])
m4trace:configure.in:1053: -1- AC_SUBST_TRACE([SHOBJ_STATUS])
m4trace:configure.in:1053: -1- m4_pattern_allow([^SHOBJ_STATUS$])
m4trace:configure.in:1085: -1- AC_SUBST([PROFILE_FLAGS])
m4trace:configure.in:1085: -1- AC_SUBST_TRACE([PROFILE_FLAGS])
m4trace:configure.in:1085: -1- m4_pattern_allow([^PROFILE_FLAGS$])
m4trace:configure.in:1087: -1- AC_SUBST([incdir])
m4trace:configure.in:1087: -1- AC_SUBST_TRACE([incdir])
m4trace:configure.in:1087: -1- m4_pattern_allow([^incdir$])
m4trace:configure.in:1088: -1- AC_SUBST([BUILD_DIR])
m4trace:configure.in:1088: -1- AC_SUBST_TRACE([BUILD_DIR])
m4trace:configure.in:1088: -1- m4_pattern_allow([^BUILD_DIR$])
m4trace:configure.in:1091: -1- AC_SUBST([datarootdir])
m4trace:configure.in:1091: -1- AC_SUBST_TRACE([datarootdir])
m4trace:configure.in:1091: -1- m4_pattern_allow([^datarootdir$])
m4trace:configure.in:1092: -1- AC_SUBST([localedir])
m4trace:configure.in:1092: -1- AC_SUBST_TRACE([localedir])
m4trace:configure.in:1092: -1- m4_pattern_allow([^localedir$])
m4trace:configure.in:1094: -1- AC_SUBST([YACC])
m4trace:configure.in:1094: -1- AC_SUBST_TRACE([YACC])
m4trace:configure.in:1094: -1- m4_pattern_allow([^YACC$])
m4trace:configure.in:1095: -1- AC_SUBST([AR])
m4trace:configure.in:1095: -1- AC_SUBST_TRACE([AR])
m4trace:configure.in:1095: -1- m4_pattern_allow([^AR$])
m4trace:configure.in:1096: -1- AC_SUBST([ARFLAGS])
m4trace:configure.in:1096: -1- AC_SUBST_TRACE([ARFLAGS])
m4trace:configure.in:1096: -1- m4_pattern_allow([^ARFLAGS$])
m4trace:configure.in:1098: -1- AC_SUBST([BASHVERS])
m4trace:configure.in:1098: -1- AC_SUBST_TRACE([BASHVERS])
m4trace:configure.in:1098: -1- m4_pattern_allow([^BASHVERS$])
m4trace:configure.in:1099: -1- AC_SUBST([RELSTATUS])
m4trace:configure.in:1099: -1- AC_SUBST_TRACE([RELSTATUS])
m4trace:configure.in:1099: -1- m4_pattern_allow([^RELSTATUS$])
m4trace:configure.in:1100: -1- AC_SUBST([DEBUG])
m4trace:configure.in:1100: -1- AC_SUBST_TRACE([DEBUG])
m4trace:configure.in:1100: -1- m4_pattern_allow([^DEBUG$])
m4trace:configure.in:1101: -1- AC_SUBST([MALLOC_DEBUG])
m4trace:configure.in:1101: -1- AC_SUBST_TRACE([MALLOC_DEBUG])
m4trace:configure.in:1101: -1- m4_pattern_allow([^MALLOC_DEBUG$])
m4trace:configure.in:1103: -1- AC_SUBST([host_cpu])
m4trace:configure.in:1103: -1- AC_SUBST_TRACE([host_cpu])
m4trace:configure.in:1103: -1- m4_pattern_allow([^host_cpu$])
m4trace:configure.in:1104: -1- AC_SUBST([host_vendor])
m4trace:configure.in:1104: -1- AC_SUBST_TRACE([host_vendor])
m4trace:configure.in:1104: -1- m4_pattern_allow([^host_vendor$])
m4trace:configure.in:1105: -1- AC_SUBST([host_os])
m4trace:configure.in:1105: -1- AC_SUBST_TRACE([host_os])
m4trace:configure.in:1105: -1- m4_pattern_allow([^host_os$])
m4trace:configure.in:1107: -1- AC_SUBST([LOCAL_LIBS])
m4trace:configure.in:1107: -1- AC_SUBST_TRACE([LOCAL_LIBS])
m4trace:configure.in:1107: -1- m4_pattern_allow([^LOCAL_LIBS$])
m4trace:configure.in:1108: -1- AC_SUBST([LOCAL_CFLAGS])
m4trace:configure.in:1108: -1- AC_SUBST_TRACE([LOCAL_CFLAGS])
m4trace:configure.in:1108: -1- m4_pattern_allow([^LOCAL_CFLAGS$])
m4trace:configure.in:1109: -1- AC_SUBST([LOCAL_LDFLAGS])
m4trace:configure.in:1109: -1- AC_SUBST_TRACE([LOCAL_LDFLAGS])
m4trace:configure.in:1109: -1- m4_pattern_allow([^LOCAL_LDFLAGS$])
m4trace:configure.in:1110: -1- AC_SUBST([LOCAL_DEFS])
m4trace:configure.in:1110: -1- AC_SUBST_TRACE([LOCAL_DEFS])
m4trace:configure.in:1110: -1- m4_pattern_allow([^LOCAL_DEFS$])
m4trace:configure.in:1123: -1- AC_CONFIG_FILES([Makefile builtins/Makefile lib/readline/Makefile lib/glob/Makefile \
lib/intl/Makefile \
lib/malloc/Makefile lib/sh/Makefile lib/termcap/Makefile \
lib/tilde/Makefile doc/Makefile support/Makefile po/Makefile.in \
examples/loadables/Makefile examples/loadables/perl/Makefile])
m4trace:configure.in:1122: -1- _m4_warn([obsolete], [AC_OUTPUT should be used without arguments.
m4trace:configure.in:1123: -1- _m4_warn([obsolete], [AC_OUTPUT should be used without arguments.
You should run autoupdate.], [])
m4trace:configure.in:1122: -1- AC_SUBST([LIB@&t@OBJS], [$ac_libobjs])
m4trace:configure.in:1122: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
m4trace:configure.in:1122: -1- m4_pattern_allow([^LIB@&t@OBJS$])
m4trace:configure.in:1122: -1- AC_SUBST([LTLIBOBJS], [$ac_ltlibobjs])
m4trace:configure.in:1122: -1- AC_SUBST_TRACE([LTLIBOBJS])
m4trace:configure.in:1122: -1- m4_pattern_allow([^LTLIBOBJS$])
m4trace:configure.in:1122: -1- AC_SUBST_TRACE([top_builddir])
m4trace:configure.in:1122: -1- AC_SUBST_TRACE([srcdir])
m4trace:configure.in:1122: -1- AC_SUBST_TRACE([abs_srcdir])
m4trace:configure.in:1122: -1- AC_SUBST_TRACE([top_srcdir])
m4trace:configure.in:1122: -1- AC_SUBST_TRACE([abs_top_srcdir])
m4trace:configure.in:1122: -1- AC_SUBST_TRACE([builddir])
m4trace:configure.in:1122: -1- AC_SUBST_TRACE([abs_builddir])
m4trace:configure.in:1122: -1- AC_SUBST_TRACE([abs_top_builddir])
m4trace:configure.in:1122: -1- AC_SUBST_TRACE([INSTALL])
m4trace:configure.in:1123: -1- AC_SUBST([LIB@&t@OBJS], [$ac_libobjs])
m4trace:configure.in:1123: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
m4trace:configure.in:1123: -1- m4_pattern_allow([^LIB@&t@OBJS$])
m4trace:configure.in:1123: -1- AC_SUBST([LTLIBOBJS], [$ac_ltlibobjs])
m4trace:configure.in:1123: -1- AC_SUBST_TRACE([LTLIBOBJS])
m4trace:configure.in:1123: -1- m4_pattern_allow([^LTLIBOBJS$])
m4trace:configure.in:1123: -1- AC_SUBST_TRACE([top_builddir])
m4trace:configure.in:1123: -1- AC_SUBST_TRACE([srcdir])
m4trace:configure.in:1123: -1- AC_SUBST_TRACE([abs_srcdir])
m4trace:configure.in:1123: -1- AC_SUBST_TRACE([top_srcdir])
m4trace:configure.in:1123: -1- AC_SUBST_TRACE([abs_top_srcdir])
m4trace:configure.in:1123: -1- AC_SUBST_TRACE([builddir])
m4trace:configure.in:1123: -1- AC_SUBST_TRACE([abs_builddir])
m4trace:configure.in:1123: -1- AC_SUBST_TRACE([abs_top_builddir])
m4trace:configure.in:1123: -1- AC_SUBST_TRACE([INSTALL])
+6
View File
@@ -42,6 +42,8 @@
#include "../bashansi.h"
#include "../bashintl.h"
#define NEED_FPURGE_DECL
#include "../shell.h"
#include "maxpath.h"
#include "../flags.h"
@@ -282,6 +284,9 @@ sh_notbuiltin (s)
void
sh_wrerror ()
{
#if defined (DONT_REPORT_BROKEN_PIPE_WRITE_ERRORS) && defined (EPIPE)
if (errno != EPIPE)
#endif /* DONT_REPORT_BROKEN_PIPE_WRITE_ERRORS && EPIPE */
builtin_error (_("write error: %s"), strerror (errno));
}
@@ -292,6 +297,7 @@ sh_chkwrite (s)
if (ferror (stdout))
{
sh_wrerror ();
fpurge (stdout);
clearerr (stdout);
return (EXECUTION_FAILURE);
}
+26 -1
View File
@@ -42,6 +42,8 @@
#include "../bashansi.h"
#include "../bashintl.h"
#define NEED_FPURGE_DECL
#include "../shell.h"
#include "maxpath.h"
#include "../flags.h"
@@ -131,6 +133,7 @@ no_args (list)
if (list)
{
builtin_error (_("too many arguments"));
top_level_cleanup ();
jump_to_top_level (DISCARD);
}
}
@@ -198,7 +201,15 @@ void
sh_invalidnum (s)
char *s;
{
builtin_error (_("%s: invalid number"), s);
char *msg;
if (*s == '0' && isdigit (s[1]))
msg = _("invalid octal number");
else if (*s == '0' && s[1] == 'x')
msg = _("invalid hex number");
else
msg = _("invalid number");
builtin_error ("%s: %s", s, msg);
}
void
@@ -276,6 +287,20 @@ sh_wrerror ()
builtin_error (_("write error: %s"), strerror (errno));
}
int
sh_chkwrite (s)
{
fflush (stdout);
if (ferror (stdout))
{
sh_wrerror ();
fpurge (stdout);
clearerr (stdout);
return (EXECUTION_FAILURE);
}
return (s);
}
/* **************************************************************** */
/* */
/* Shell positional parameter manipulation */
+6 -1
View File
@@ -3,7 +3,7 @@
/* This contains various user-settable options not under the control of
autoconf. */
/* Copyright (C) 2002 Free Software Foundation, Inc.
/* Copyright (C) 2002-2007 Free Software Foundation, Inc.
This file is part of GNU Bash, the Bourne Again SHell.
@@ -49,6 +49,11 @@
when a job like `cat jobs.c | exit 1' terminates due to a SIGPIPE. */
#define DONT_REPORT_SIGPIPE
/* Define DONT_REPORT_BROKEN_PIPE_WRITE_ERRORS if you don't want builtins
like `echo' and `printf' to report errors when output does not succeed
due to EPIPE. */
/* #define DONT_REPORT_BROKEN_PIPE_WRITE_ERRORS */
/* The default value of the PATH variable. */
#ifndef DEFAULT_PATH_VALUE
#define DEFAULT_PATH_VALUE \
+92
View File
@@ -0,0 +1,92 @@
/* config-top.h */
/* This contains various user-settable options not under the control of
autoconf. */
/* Copyright (C) 2002 Free Software Foundation, Inc.
This file is part of GNU Bash, the Bourne Again SHell.
Bash 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, or (at your option) any later
version.
Bash 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 Bash; see the file COPYING. If not, write to the Free Software
Foundation, 59 Temple Place, Suite 330, Boston, MA 02111 USA. */
/* Define CONTINUE_AFTER_KILL_ERROR if you want the kill command to
continue processing arguments after one of them fails. This is
what POSIX.2 specifies. */
#define CONTINUE_AFTER_KILL_ERROR
/* Define BREAK_COMPLAINS if you want the non-standard, but useful
error messages about `break' and `continue' out of context. */
#define BREAK_COMPLAINS
/* Define BUFFERED_INPUT if you want the shell to do its own input
buffering, rather than using stdio. Do not undefine this; it's
required to preserve semantics required by POSIX. */
#define BUFFERED_INPUT
/* Define ONESHOT if you want sh -c 'command' to avoid forking to execute
`command' whenever possible. This is a big efficiency improvement. */
#define ONESHOT
/* Define V9_ECHO if you want to give the echo builtin backslash-escape
interpretation using the -e option, in the style of the Bell Labs 9th
Edition version of echo. You cannot emulate the System V echo behavior
without this option. */
#define V9_ECHO
/* Define DONT_REPORT_SIGPIPE if you don't want to see `Broken pipe' messages
when a job like `cat jobs.c | exit 1' terminates due to a SIGPIPE. */
#define DONT_REPORT_SIGPIPE
/* Define DONT_REPORT_BROKEN_PIPE_WRITE_ERRORS if you don't want builtins
like `echo' and `printf' to report errors when output does not succeed
due to EPIPE. */
/* #define DONT_REPORT_BROKEN_PIPE_WRITE_ERRORS */
/* The default value of the PATH variable. */
#ifndef DEFAULT_PATH_VALUE
#define DEFAULT_PATH_VALUE \
"/usr/gnu/bin:/usr/local/bin:/bin:/usr/bin:."
#endif
/* The value for PATH when invoking `command -p'. This is only used when
the Posix.2 confstr () function, or CS_PATH define are not present. */
#ifndef STANDARD_UTILS_PATH
#define STANDARD_UTILS_PATH \
"/bin:/usr/bin:/sbin:/usr/sbin:/etc:/usr/etc"
#endif
/* Default primary and secondary prompt strings. */
#define PPROMPT "\\s-\\v\\$ "
#define SPROMPT "> "
/* Undefine this if you don't want the ksh-compatible behavior of reprinting
the select menu after a valid choice is made only if REPLY is set to NULL
in the body of the select command. The menu is always reprinted if the
reply to the select query is an empty line. */
#define KSH_COMPATIBLE_SELECT
/* System-wide .bashrc file for interactive shells. */
/* #define SYS_BASHRC "/etc/bash.bashrc" */
/* System-wide .bash_logout for login shells. */
/* #define SYS_BASH_LOGOUT "/etc/bash.bash_logout" */
/* Define this to make non-interactive shells begun with argv[0][0] == '-'
run the startup files when not in posix mode. */
/* #define NON_INTERACTIVE_LOGIN_SHELLS */
/* Define this if you want bash to try to check whether it's being run by
sshd and source the .bashrc if so (like the rshd behavior). */
/* #define SSH_SOURCE_BASHRC */
+5
View File
@@ -531,6 +531,11 @@
/* Define if you have the fcntl function. */
#undef HAVE_FCNTL
/* Define if you have the fpurge/__fpurge function. */
#undef HAVE_FPURGE
#undef HAVE___FPURGE
#undef HAVE_DECL_FPURGE
/* Define if you have the getaddrinfo function. */
#undef HAVE_GETADDRINFO
Vendored
+222 -1
View File
@@ -1,5 +1,5 @@
#! /bin/sh
# From configure.in for Bash 3.2, version 3.195.
# From configure.in for Bash 3.2, version 3.196.
# Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.60 for bash 3.2-maint.
#
@@ -601,6 +601,7 @@ ac_includes_default="\
# include <unistd.h>
#endif"
ac_func_list=
ac_subst_vars='SHELL
PATH_SEPARATOR
PACKAGE_NAME
@@ -1781,6 +1782,8 @@ echo "$as_me: creating cache $cache_file" >&6;}
>$cache_file
fi
ac_func_list="$ac_func_list fpurge"
ac_func_list="$ac_func_list __fpurge"
# Check that the precious variables saved in the cache have kept the same
# value.
ac_cache_corrupted=false
@@ -29169,6 +29172,224 @@ _ACEOF
fi
for ac_func in $ac_func_list
do
as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
{ echo "$as_me:$LINENO: checking for $ac_func" >&5
echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6; }
if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
For example, HP-UX 11i <limits.h> declares gettimeofday. */
#define $ac_func innocuous_$ac_func
/* System header to define __stub macros and hopefully few prototypes,
which can conflict with char $ac_func (); below.
Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
<limits.h> exists even on freestanding compilers. */
#ifdef __STDC__
# include <limits.h>
#else
# include <assert.h>
#endif
#undef $ac_func
/* Override any GCC internal prototype to avoid an error.
Use char because int might match the return type of a GCC
builtin and then its argument prototype would still apply. */
#ifdef __cplusplus
extern "C"
#endif
char $ac_func ();
/* The GNU C library defines this for functions which it implements
to always fail with ENOSYS. Some functions are actually named
something starting with __ and the normal name is an alias. */
#if defined __stub_$ac_func || defined __stub___$ac_func
choke me
#endif
int
main ()
{
return $ac_func ();
;
return 0;
}
_ACEOF
rm -f conftest.$ac_objext conftest$ac_exeext
if { (ac_try="$ac_link"
case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
(eval "$ac_link") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } &&
{ ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
{ (case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
(eval "$ac_try") 2>&5
ac_status=$?
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); }; } &&
{ ac_try='test -s conftest$ac_exeext'
{ (case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
(eval "$ac_try") 2>&5
ac_status=$?
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); }; }; then
eval "$as_ac_var=yes"
else
echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
eval "$as_ac_var=no"
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext conftest.$ac_ext
fi
ac_res=`eval echo '${'$as_ac_var'}'`
{ echo "$as_me:$LINENO: result: $ac_res" >&5
echo "${ECHO_T}$ac_res" >&6; }
if test `eval echo '${'$as_ac_var'}'` = yes; then
cat >>confdefs.h <<_ACEOF
#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
_ACEOF
fi
done
{ echo "$as_me:$LINENO: checking whether fpurge is declared" >&5
echo $ECHO_N "checking whether fpurge is declared... $ECHO_C" >&6; }
if test "${ac_cv_have_decl_fpurge+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
#include <stdio.h>
int
main ()
{
#ifndef fpurge
char *p = (char *) fpurge;
return !p;
#endif
;
return 0;
}
_ACEOF
rm -f conftest.$ac_objext
if { (ac_try="$ac_compile"
case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } &&
{ ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
{ (case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
(eval "$ac_try") 2>&5
ac_status=$?
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); }; } &&
{ ac_try='test -s conftest.$ac_objext'
{ (case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
(eval "$ac_try") 2>&5
ac_status=$?
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); }; }; then
ac_cv_have_decl_fpurge=yes
else
echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_cv_have_decl_fpurge=no
fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
{ echo "$as_me:$LINENO: result: $ac_cv_have_decl_fpurge" >&5
echo "${ECHO_T}$ac_cv_have_decl_fpurge" >&6; }
if test $ac_cv_have_decl_fpurge = yes; then
cat >>confdefs.h <<_ACEOF
#define HAVE_DECL_FPURGE 1
_ACEOF
else
cat >>confdefs.h <<_ACEOF
#define HAVE_DECL_FPURGE 0
_ACEOF
fi
{ echo "$as_me:$LINENO: checking to see if getenv can be redefined" >&5
echo $ECHO_N "checking to see if getenv can be redefined... $ECHO_C" >&6; }
if test "${bash_cv_getenv_redef+set}" = set; then
+2 -1
View File
@@ -22,7 +22,7 @@ dnl Process this file with autoconf to produce a configure script.
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
# 02111-1307, USA.
AC_REVISION([for Bash 3.2, version 3.195])dnl
AC_REVISION([for Bash 3.2, version 3.196])dnl
define(bashvers, 3.2)
define(relstatus, maint)
@@ -893,6 +893,7 @@ dnl presence and behavior of C library functions
BASH_FUNC_STRSIGNAL
BASH_FUNC_OPENDIR_CHECK
BASH_FUNC_ULIMIT_MAXFDS
BASH_FUNC_FPURGE
BASH_FUNC_GETENV
if test "$ac_cv_func_getcwd" = "yes"; then
BASH_FUNC_GETCWD
+5 -2
View File
@@ -5,12 +5,12 @@
.\" Case Western Reserve University
.\" chet@po.cwru.edu
.\"
.\" Last Change: Tue May 1 10:05:17 EDT 2007
.\" Last Change: Fri Sep 14 13:44:37 EDT 2007
.\"
.\" bash_builtins, strip all but Built-Ins section
.if \n(zZ=1 .ig zZ
.if \n(zY=1 .ig zY
.TH BASH 1 "2007 May 1" "GNU Bash-3.2"
.TH BASH 1 "2007 September 14" "GNU Bash-3.2"
.\"
.\" There's some problem with having a `@'
.\" in a tagged paragraph with the BSD man macros.
@@ -7672,6 +7672,9 @@ any command in a pipeline but the last,
or if the command's return value is
being inverted via
.BR ! .
Failing simple commands that are part of shell functions or command lists
enclosed in braces or parentheses satisfying the above conditions do not
cause the shell to exit.
A trap on \fBERR\fP, if set, is executed before the shell exits.
.TP 8
.B \-f
+3 -1
View File
@@ -577,7 +577,7 @@ and
have equal precedence, followed by
.B ;
and
.BR &,
.BR & ,
which have equal precedence.
.PP
A sequence of one or more newlines may appear in a \fIlist\fP instead
@@ -696,6 +696,8 @@ If the shell option
.B nocasematch
is enabled, the match is performed without regard to the case
of alphabetic characters.
Any part of the pattern may be quoted to force it to be matched as a
string.
Substrings matched by parenthesized subexpressions within the regular
expression are saved in the array variable \fBBASH_REMATCH\fP.
The element of \fBBASH_REMATCH\fP with index 0 is the portion of the string
+3
View File
@@ -3730,6 +3730,9 @@ part of the test in an @code{if} statement,
part of a @code{&&} or @code{||} list,
any command in a pipeline but the last,
or if the command's return status is being inverted using @code{!}.
Failing simple commands that are part of shell functions or command lists
enclosed in braces or parentheses satisfying the above conditions do not
cause the shell to exit.
A trap on @code{ERR}, if set, is executed before the shell exits.
@item -f
+3 -1
View File
@@ -225,7 +225,7 @@ than by an executable program somewhere in the file system.
@item control operator
@cindex control operator
A @code{word} that performs a control function. It is a @code{newline}
A @code{token} that performs a control function. It is a @code{newline}
or one of the following:
@samp{||}, @samp{&&}, @samp{&}, @samp{;}, @samp{;;},
@samp{|}, @samp{(}, or @samp{)}.
@@ -974,6 +974,8 @@ If the shell option @code{nocasematch}
(see the description of @code{shopt} in @ref{The Shopt Builtin})
is enabled, the match is performed without regard to the case
of alphabetic characters.
Any part of the pattern may be quoted to force it to be matched as a
string.
Substrings matched by parenthesized subexpressions within the regular
expression are saved in the array variable @code{BASH_REMATCH}.
The element of @code{BASH_REMATCH} with index 0 is the portion of the string
+3 -3
View File
@@ -2,9 +2,9 @@
Copyright (C) 1988-2007 Free Software Foundation, Inc.
@end ignore
@set LASTCHANGE Tue May 1 10:05:36 EDT 2007
@set LASTCHANGE Fri Sep 14 13:44:15 EDT 2007
@set EDITION 3.2
@set VERSION 3.2
@set UPDATED 1 May 2007
@set UPDATED-MONTH May 2007
@set UPDATED 14 September 2007
@set UPDATED-MONTH September 2007
+1
View File
@@ -3575,6 +3575,7 @@ execute_builtin_or_function (words, builtin, var, redirects,
/* We do this before undoing the effects of any redirections. */
fflush (stdout);
fpurge (stdout);
if (ferror (stdout))
clearerr (stdout);
+3
View File
@@ -286,6 +286,8 @@ expr_unwind ()
free (expr_stack[expr_depth]);
}
free (expr_stack[expr_depth]); /* free the allocated EXPR_CONTEXT */
noeval = 0; /* XXX */
}
static void
@@ -319,6 +321,7 @@ evalexp (expr, validp)
procenv_t oevalbuf;
val = 0;
noeval = 0;
FASTCOPY (evalbuf, oevalbuf, sizeof (evalbuf));
+11
View File
@@ -171,6 +171,17 @@ extern char *fmtullong __P((unsigned long long int, int, char *, size_t, int));
/* Declarations for functions defined in lib/sh/fmtumax.c */
extern char *fmtumax __P((uintmax_t, int, char *, size_t, int));
/* Declarations for functions defined in lib/sh/fpurge.c */
#if defined (NEED_FPURGE_DECL)
#if HAVE_FPURGE
# define fpurge _bash_fpurge
#endif
extern int fpurge __P((FILE *stream));
#endif /* NEED_FPURGE_DECL */
/* Declarations for functions defined in lib/sh/getcwd.c */
#if !defined (HAVE_GETCWD)
extern char *getcwd __P((char *, size_t));
+4 -2
View File
@@ -91,7 +91,7 @@ CSOURCES = clktck.c clock.c getcwd.c getenv.c oslib.c setlinebuf.c \
fmtulong.c fmtullong.c fmtumax.c shmatch.c strnlen.c \
strtoll.c strtoull.c strtoimax.c strtoumax.c memset.c strstr.c \
mktime.c strftime.c xstrchr.c zcatfd.c zmapfd.c winsize.c eaccess.c \
wcsdup.c
wcsdup.c fpurge.c
# The header files for this library.
HSOURCES =
@@ -104,7 +104,7 @@ OBJECTS = clktck.o clock.o getenv.o oslib.o setlinebuf.o strnlen.o \
pathphys.o tmpfile.o stringlist.o stringvec.o spell.o shquote.o \
strtrans.o strindex.o snprintf.o mailstat.o fmtulong.o \
fmtullong.o fmtumax.o xstrchr.o zcatfd.o zmapfd.o winsize.o wcsdup.o \
${LIBOBJS}
fpurge.o ${LIBOBJS}
SUPPORT = Makefile
@@ -142,6 +142,7 @@ eaccess.o: eaccess.c
fmtullong.o: fmtullong.c
fmtulong.o: fmtulong.c
fmtumax.o: fmtumax.c
fpurge.o: fpurge.c
getcwd.o: getcwd.c
getenv.o: getenv.c
inet_aton.o: inet_aton.c
@@ -202,6 +203,7 @@ eaccess.o: ${BUILD_DIR}/config.h
fmtullong.o: ${BUILD_DIR}/config.h
fmtulong.o: ${BUILD_DIR}/config.h
fmtumax.o: ${BUILD_DIR}/config.h
fpurge.o: ${BUILD_DIR}/config.h
getcwd.o: ${BUILD_DIR}/config.h
getenv.o: ${BUILD_DIR}/config.h
inet_aton.o: ${BUILD_DIR}/config.h
+119
View File
@@ -0,0 +1,119 @@
/* Flushing buffers of a FILE stream.
Copyright (C) 2007 Free Software Foundation, Inc.
This program 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, or (at your option)
any later version.
This program 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 this program; if not, write to the Free Software Foundation,
Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */
#include <config.h>
#include "stdc.h"
/* Specification. Same as in ../../externs.h. */
#define NEED_FPURGE_DECL
#if HAVE_FPURGE
# define fpurge _bash_fpurge
#endif
extern int fpurge __P((FILE *stream));
#if HAVE___FPURGE /* glibc >= 2.2, Solaris >= 7 */
# include <stdio_ext.h>
#endif
#include <stdlib.h>
int
fpurge (FILE *fp)
{
#if HAVE___FPURGE /* glibc >= 2.2, Solaris >= 7 */
__fpurge (fp);
/* The __fpurge function does not have a return value. */
return 0;
#elif HAVE_FPURGE /* FreeBSD, NetBSD, OpenBSD, MacOS X */
/* Call the system's fpurge function. */
# undef fpurge
# if !HAVE_DECL_FPURGE
extern int fpurge (FILE *);
# endif
int result = fpurge (fp);
# if defined __sferror /* FreeBSD, NetBSD, OpenBSD, MacOS X, Cygwin */
if (result == 0)
/* Correct the invariants that fpurge broke.
<stdio.h> on BSD systems says:
"The following always hold: if _flags & __SRD, _w is 0."
If this invariant is not fulfilled and the stream is read-write but
currently writing, subsequent putc or fputc calls will write directly
into the buffer, although they shouldn't be allowed to. */
if ((fp->_flags & __SRD) != 0)
fp->_w = 0;
# endif
return result;
#else
/* Most systems provide FILE as a struct and the necessary bitmask in
<stdio.h>, because they need it for implementing getc() and putc() as
fast macros. */
# if defined _IO_ferror_unlocked /* GNU libc, BeOS */
fp->_IO_read_end = fp->_IO_read_ptr;
fp->_IO_write_ptr = fp->_IO_write_base;
/* Avoid memory leak when there is an active ungetc buffer. */
if (fp->_IO_save_base != NULL)
{
free (fp->_IO_save_base);
fp->_IO_save_base = NULL;
}
return 0;
# elif defined __sferror /* FreeBSD, NetBSD, OpenBSD, MacOS X, Cygwin */
fp->_p = fp->_bf._base;
fp->_r = 0;
fp->_w = ((fp->_flags & (__SLBF | __SNBF | __SRD)) == 0 /* fully buffered and not currently reading? */
? fp->_bf._size
: 0);
/* Avoid memory leak when there is an active ungetc buffer. */
# if defined __NetBSD__ || defined __OpenBSD__ /* NetBSD, OpenBSD */
/* See <http://cvsweb.netbsd.org/bsdweb.cgi/src/lib/libc/stdio/fileext.h?rev=HEAD&content-type=text/x-cvsweb-markup>
and <http://www.openbsd.org/cgi-bin/cvsweb/src/lib/libc/stdio/fileext.h?rev=HEAD&content-type=text/x-cvsweb-markup> */
# define fp_ub ((struct { struct __sbuf _ub; } *) fp->_ext._base)->_ub
# else /* FreeBSD, MacOS X, Cygwin */
# define fp_ub fp->_ub
# endif
if (fp_ub._base != NULL)
{
if (fp_ub._base != fp->_ubuf)
free (fp_ub._base);
fp_ub._base = NULL;
}
return 0;
# elif defined _IOERR /* AIX, HP-UX, IRIX, OSF/1, Solaris, mingw */
fp->_ptr = fp->_base;
if (fp->_ptr != NULL)
fp->_cnt = 0;
return 0;
# elif defined __UCLIBC__ /* uClibc */
# ifdef __STDIO_BUFFERS
if (fp->__modeflags & __FLAG_WRITING)
fp->__bufpos = fp->__bufstart;
else if (fp->__modeflags & (__FLAG_READONLY | __FLAG_READING))
fp->__bufpos = fp->__bufread;
# endif
return 0;
# else
#error "Please port gnulib fpurge.c to your platform! Look at the definitions of fflush, setvbuf and ungetc on your system, then report this to bug-gnulib."
# endif
#endif
}
+7 -2
View File
@@ -43,8 +43,10 @@ extern int errno;
#include "bashansi.h"
#include "bashintl.h"
#include "memalloc.h"
#define NEED_FPURGE_DECL
#include "shell.h"
#include "flags.h"
#include "execute_cmd.h"
@@ -772,7 +774,10 @@ do_redirection_internal (redirect, flags)
of the underlying file descriptor, since the builtins use stdio
for output. */
if (redirector == 1 && fileno (stdout) == redirector)
fflush (stdout);
{
fflush (stdout);
fpurge (stdout);
}
if ((fd != redirector) && (dup2 (fd, redirector) < 0))
return (errno);
+1 -1
View File
@@ -27,7 +27,7 @@ f1 ()
return $status
}
before: try to assign to FUNCNAME
outside: FUNCNAME = main
outside: FUNCNAME =
before: FUNCNAME = func
FUNCNAME = func2
after: FUNCNAME = func