git: f131090388ae - vendor/bc - Vendor import of Gavin Howard's bc-3.3.0
Stefan EÃer
se at FreeBSD.org
Wed Feb 17 21:31:13 UTC 2021
The branch vendor/bc has been updated by se:
URL: https://cgit.FreeBSD.org/src/commit/?id=f131090388ae3272660242339b6c9e010309d811
commit f131090388ae3272660242339b6c9e010309d811
Author: Stefan Eßer <se at FreeBSD.org>
AuthorDate: 2021-02-17 21:29:31 +0000
Commit: Stefan Eßer <se at FreeBSD.org>
CommitDate: 2021-02-17 21:29:31 +0000
Vendor import of Gavin Howard's bc-3.3.0
---
Makefile.in | 2 +-
NEWS.md | 20 ++++++++++++++++++++
README.md | 2 +-
configure.sh | 7 +------
include/args.h | 2 +-
include/status.h | 10 +++++++---
include/vm.h | 1 +
manuals/bc.1.md.in | 23 ++++++++++++++++-------
manuals/bc/A.1 | 25 +++++++++++++++++++------
manuals/bc/A.1.md | 23 ++++++++++++++++-------
manuals/bc/E.1 | 25 +++++++++++++++++++------
manuals/bc/E.1.md | 23 ++++++++++++++++-------
manuals/bc/EH.1 | 25 +++++++++++++++++++------
manuals/bc/EH.1.md | 23 ++++++++++++++++-------
manuals/bc/EHN.1 | 25 +++++++++++++++++++------
manuals/bc/EHN.1.md | 23 ++++++++++++++++-------
manuals/bc/EHNP.1 | 25 +++++++++++++++++++------
manuals/bc/EHNP.1.md | 23 ++++++++++++++++-------
manuals/bc/EHP.1 | 25 +++++++++++++++++++------
manuals/bc/EHP.1.md | 23 ++++++++++++++++-------
manuals/bc/EN.1 | 25 +++++++++++++++++++------
manuals/bc/EN.1.md | 23 ++++++++++++++++-------
manuals/bc/ENP.1 | 25 +++++++++++++++++++------
manuals/bc/ENP.1.md | 23 ++++++++++++++++-------
manuals/bc/EP.1 | 25 +++++++++++++++++++------
manuals/bc/EP.1.md | 23 ++++++++++++++++-------
manuals/bc/H.1 | 25 +++++++++++++++++++------
manuals/bc/H.1.md | 23 ++++++++++++++++-------
manuals/bc/HN.1 | 25 +++++++++++++++++++------
manuals/bc/HN.1.md | 23 ++++++++++++++++-------
manuals/bc/HNP.1 | 25 +++++++++++++++++++------
manuals/bc/HNP.1.md | 23 ++++++++++++++++-------
manuals/bc/HP.1 | 25 +++++++++++++++++++------
manuals/bc/HP.1.md | 23 ++++++++++++++++-------
manuals/bc/N.1 | 25 +++++++++++++++++++------
manuals/bc/N.1.md | 23 ++++++++++++++++-------
manuals/bc/NP.1 | 25 +++++++++++++++++++------
manuals/bc/NP.1.md | 23 ++++++++++++++++-------
manuals/bc/P.1 | 25 +++++++++++++++++++------
manuals/bc/P.1.md | 23 ++++++++++++++++-------
manuals/bcl.3 | 2 +-
manuals/build.md | 16 ++++++++++++++++
manuals/dc.1.md.in | 27 ++++++++++++++++++---------
manuals/dc/A.1 | 29 +++++++++++++++++++++--------
manuals/dc/A.1.md | 27 ++++++++++++++++++---------
manuals/dc/E.1 | 27 ++++++++++++++++++++-------
manuals/dc/E.1.md | 25 +++++++++++++++++--------
manuals/dc/EH.1 | 27 ++++++++++++++++++++-------
manuals/dc/EH.1.md | 25 +++++++++++++++++--------
manuals/dc/EHN.1 | 27 ++++++++++++++++++++-------
manuals/dc/EHN.1.md | 25 +++++++++++++++++--------
manuals/dc/EHNP.1 | 27 ++++++++++++++++++++-------
manuals/dc/EHNP.1.md | 25 +++++++++++++++++--------
manuals/dc/EHP.1 | 27 ++++++++++++++++++++-------
manuals/dc/EHP.1.md | 25 +++++++++++++++++--------
manuals/dc/EN.1 | 27 ++++++++++++++++++++-------
manuals/dc/EN.1.md | 25 +++++++++++++++++--------
manuals/dc/ENP.1 | 27 ++++++++++++++++++++-------
manuals/dc/ENP.1.md | 25 +++++++++++++++++--------
manuals/dc/EP.1 | 27 ++++++++++++++++++++-------
manuals/dc/EP.1.md | 25 +++++++++++++++++--------
manuals/dc/H.1 | 29 +++++++++++++++++++++--------
manuals/dc/H.1.md | 27 ++++++++++++++++++---------
manuals/dc/HN.1 | 29 +++++++++++++++++++++--------
manuals/dc/HN.1.md | 27 ++++++++++++++++++---------
manuals/dc/HNP.1 | 29 +++++++++++++++++++++--------
manuals/dc/HNP.1.md | 27 ++++++++++++++++++---------
manuals/dc/HP.1 | 29 +++++++++++++++++++++--------
manuals/dc/HP.1.md | 27 ++++++++++++++++++---------
manuals/dc/N.1 | 29 +++++++++++++++++++++--------
manuals/dc/N.1.md | 27 ++++++++++++++++++---------
manuals/dc/NP.1 | 29 +++++++++++++++++++++--------
manuals/dc/NP.1.md | 27 ++++++++++++++++++---------
manuals/dc/P.1 | 29 +++++++++++++++++++++--------
manuals/dc/P.1.md | 27 ++++++++++++++++++---------
manuals/header_bc.txt | 2 +-
manuals/header_bcl.txt | 2 +-
manuals/header_dc.txt | 2 +-
release.sh | 2 +-
src/args.c | 4 +++-
src/vm.c | 6 +++---
tests/script.sh | 2 +-
82 files changed, 1262 insertions(+), 502 deletions(-)
diff --git a/Makefile.in b/Makefile.in
index 8ae982bd99fe..dbb5debd44cc 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -29,7 +29,7 @@
#
.POSIX:
-VERSION = 3.2.6
+VERSION = 3.3.0
SRC = %%SRC%%
OBJ = %%OBJ%%
diff --git a/NEWS.md b/NEWS.md
index 5982defb754c..6a8899200f4a 100644
--- a/NEWS.md
+++ b/NEWS.md
@@ -1,5 +1,25 @@
# News
+## 3.3.0
+
+This is a production release that changes one behavior and fixes documentation
+bugs.
+
+The changed behavior is the treatment of `-e` and `-f` when given through
+`BC_ENV_ARGS` or `DC_ENV_ARGS`. Now `bc` and `dc` do not exit when those options
+(or their equivalents) are given through those environment variables. However,
+`bc` and `dc` still exit when they or their equivalents are given on the
+command-line.
+
+## 3.2.7
+
+This is a production release that removes a small non-portable shell operation
+in `configure.sh`. This problem was only noticed on OpenBSD, not FreeBSD or
+Linux.
+
+Non-OpenBSD users do ***NOT*** need to upgrade, although NetBSD users may also
+need to upgrade.
+
## 3.2.6
This is a production release that fixes the build on FreeBSD.
diff --git a/README.md b/README.md
index beda88d23f90..2f95e16ed246 100644
--- a/README.md
+++ b/README.md
@@ -342,7 +342,7 @@ Folders:
[20]: https://git.yzena.com/gavin/bc
[21]: https://gavinhoward.com/2020/04/i-am-moving-away-from-github/
[22]: https://www.deepl.com/translator
-[23]: https://svnweb.freebsd.org/base/head/contrib/bc/
+[23]: https://cgit.freebsd.org/src/tree/contrib/bc
[24]: https://bugs.freebsd.org/
[25]: https://reviews.freebsd.org/
[26]: ./manuals/bcl.3.md
diff --git a/configure.sh b/configure.sh
index ae1675cde97d..310c26882906 100755
--- a/configure.sh
+++ b/configure.sh
@@ -253,7 +253,7 @@ replace_ext() {
_replace_ext_ext1="$2"
_replace_ext_ext2="$3"
- _replace_ext_result=${_replace_ext_file%.$_replace_ext_ext1}.$_replace_ext_ext2
+ _replace_ext_result="${_replace_ext_file%.$_replace_ext_ext1}.$_replace_ext_ext2"
printf '%s\n' "$_replace_ext_result"
}
@@ -1199,17 +1199,12 @@ SRC_TARGETS=""
src_files=$(find_src_files $unneeded)
-temp_ifs="$IFS"
-IFS=$'\n'
-
for f in $src_files; do
o=$(replace_ext "$f" "c" "o")
SRC_TARGETS=$(printf '%s\n\n%s: %s %s\n\t$(CC) $(CFLAGS) -o %s -c %s\n' \
"$SRC_TARGETS" "$o" "$headers" "$f" "$o" "$f")
done
-IFS="$temp_ifs"
-
contents=$(replace "$contents" "HEADERS" "$headers")
contents=$(replace "$contents" "BC_ENABLED" "$bc")
diff --git a/include/args.h b/include/args.h
index 6b68ed300440..d53785067237 100644
--- a/include/args.h
+++ b/include/args.h
@@ -39,7 +39,7 @@
#include <status.h>
#include <vm.h>
-void bc_args(int argc, char *argv[]);
+void bc_args(int argc, char *argv[], bool exit_exprs);
extern const char* const bc_args_env_name;
diff --git a/include/status.h b/include/status.h
index 3fa844485690..cf41a3ce4670 100644
--- a/include/status.h
+++ b/include/status.h
@@ -176,11 +176,15 @@ typedef enum BcErr {
#endif // __STDC_VERSION__
#if defined(__clang__) || defined(__GNUC__)
-#if defined(__has_attribute) && __has_attribute(fallthrough)
+#if defined(__has_attribute)
+#if __has_attribute(fallthrough)
#define BC_FALLTHROUGH __attribute__((fallthrough));
-#else // defined(__has_attribute) && __has_attribute(fallthrough)
+#else // __has_attribute(fallthrough)
#define BC_FALLTHROUGH
-#endif // defined(__has_attribute) && __has_attribute(fallthrough)
+#endif // __has_attribute(fallthrough)
+#else // defined(__has_attribute)
+#define BC_FALLTHROUGH
+#endif // defined(__has_attribute)
#else // defined(__clang__) || defined(__GNUC__)
#define BC_FALLTHROUGH
#endif // defined(__clang__) || defined(__GNUC__)
diff --git a/include/vm.h b/include/vm.h
index 8b0babff4d81..80a060edd42f 100644
--- a/include/vm.h
+++ b/include/vm.h
@@ -356,6 +356,7 @@ typedef struct BcVm {
uint16_t line_len;
bool no_exit_exprs;
+ bool exit_exprs;
bool eof;
#endif // !BC_ENABLE_LIBRARY
diff --git a/manuals/bc.1.md.in b/manuals/bc.1.md.in
index 624ea3fb54ab..1ce83b8237cd 100644
--- a/manuals/bc.1.md.in
+++ b/manuals/bc.1.md.in
@@ -229,10 +229,13 @@ The following are the options that bc(1) accepts.
evaluated in the order given. This means that if a file is given before an
expression, the file is read in and evaluated first.
- After processing all expressions and files, bc(1) will exit, unless **-**
- (**stdin**) was given as an argument at least once to **-f** or **--file**.
- However, if any other **-e**, **--expression**, **-f**, or **--file**
- arguments are given after that, bc(1) will give a fatal error and exit.
+ If this option is given on the command-line (i.e., not in **BC_ENV_ARGS**,
+ see the **ENVIRONMENT VARIABLES** section), then after processing all
+ expressions and files, bc(1) will exit, unless **-** (**stdin**) was given
+ as an argument at least once to **-f** or **--file**, whether on the
+ command-line or in **BC_ENV_ARGS**. However, if any other **-e**,
+ **--expression**, **-f**, or **--file** arguments are given after **-f-** or
+ equivalent is given, bc(1) will give a fatal error and exit.
This is a **non-portable extension**.
@@ -242,8 +245,12 @@ The following are the options that bc(1) accepts.
through **stdin**. If expressions are also given (see above), the
expressions are evaluated in the order given.
- After processing all expressions and files, bc(1) will exit, unless **-**
- (**stdin**) was given as an argument at least once to **-f** or **--file**.
+ If this option is given on the command-line (i.e., not in **BC_ENV_ARGS**,
+ see the **ENVIRONMENT VARIABLES** section), then after processing all
+ expressions and files, bc(1) will exit, unless **-** (**stdin**) was given
+ as an argument at least once to **-f** or **--file**. However, if any other
+ **-e**, **--expression**, **-f**, or **--file** arguments are given after
+ **-f-** or equivalent is given, bc(1) will give a fatal error and exit.
This is a **non-portable extension**.
@@ -251,7 +258,9 @@ All long options are **non-portable extensions**.
# STDOUT
-Any non-error output is written to **stdout**.
+Any non-error output is written to **stdout**. In addition, if history (see the
+**HISTORY** section) and the prompt (see the **TTY MODE** section) are enabled,
+both are output to **stdout**.
**Note**: Unlike other bc(1) implementations, this bc(1) will issue a fatal
error (see the **EXIT STATUS** section) if it cannot write to **stdout**, so if
diff --git a/manuals/bc/A.1 b/manuals/bc/A.1
index da35e8c7eaee..d1e80769c855 100644
--- a/manuals/bc/A.1
+++ b/manuals/bc/A.1
@@ -25,7 +25,7 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.TH "BC" "1" "January 2021" "Gavin D. Howard" "General Commands Manual"
+.TH "BC" "1" "February 2021" "Gavin D. Howard" "General Commands Manual"
.SH NAME
.PP
bc - arbitrary-precision decimal arithmetic language and calculator
@@ -230,12 +230,16 @@ This means that if a file is given before an expression, the file is
read in and evaluated first.
.RS
.PP
-After processing all expressions and files, bc(1) will exit, unless
+If this option is given on the command-line (i.e., not in
+\f[B]BC_ENV_ARGS\f[R], see the \f[B]ENVIRONMENT VARIABLES\f[R] section),
+then after processing all expressions and files, bc(1) will exit, unless
\f[B]-\f[R] (\f[B]stdin\f[R]) was given as an argument at least once to
-\f[B]-f\f[R] or \f[B]\[en]file\f[R].
+\f[B]-f\f[R] or \f[B]\[en]file\f[R], whether on the command-line or in
+\f[B]BC_ENV_ARGS\f[R].
However, if any other \f[B]-e\f[R], \f[B]\[en]expression\f[R],
-\f[B]-f\f[R], or \f[B]\[en]file\f[R] arguments are given after that,
-bc(1) will give a fatal error and exit.
+\f[B]-f\f[R], or \f[B]\[en]file\f[R] arguments are given after
+\f[B]-f-\f[R] or equivalent is given, bc(1) will give a fatal error and
+exit.
.PP
This is a \f[B]non-portable extension\f[R].
.RE
@@ -247,9 +251,15 @@ If expressions are also given (see above), the expressions are evaluated
in the order given.
.RS
.PP
-After processing all expressions and files, bc(1) will exit, unless
+If this option is given on the command-line (i.e., not in
+\f[B]BC_ENV_ARGS\f[R], see the \f[B]ENVIRONMENT VARIABLES\f[R] section),
+then after processing all expressions and files, bc(1) will exit, unless
\f[B]-\f[R] (\f[B]stdin\f[R]) was given as an argument at least once to
\f[B]-f\f[R] or \f[B]\[en]file\f[R].
+However, if any other \f[B]-e\f[R], \f[B]\[en]expression\f[R],
+\f[B]-f\f[R], or \f[B]\[en]file\f[R] arguments are given after
+\f[B]-f-\f[R] or equivalent is given, bc(1) will give a fatal error and
+exit.
.PP
This is a \f[B]non-portable extension\f[R].
.RE
@@ -258,6 +268,9 @@ All long options are \f[B]non-portable extensions\f[R].
.SH STDOUT
.PP
Any non-error output is written to \f[B]stdout\f[R].
+In addition, if history (see the \f[B]HISTORY\f[R] section) and the
+prompt (see the \f[B]TTY MODE\f[R] section) are enabled, both are output
+to \f[B]stdout\f[R].
.PP
\f[B]Note\f[R]: Unlike other bc(1) implementations, this bc(1) will
issue a fatal error (see the \f[B]EXIT STATUS\f[R] section) if it cannot
diff --git a/manuals/bc/A.1.md b/manuals/bc/A.1.md
index 293a21ad0259..0cf7a4a0d70e 100644
--- a/manuals/bc/A.1.md
+++ b/manuals/bc/A.1.md
@@ -187,10 +187,13 @@ The following are the options that bc(1) accepts.
evaluated in the order given. This means that if a file is given before an
expression, the file is read in and evaluated first.
- After processing all expressions and files, bc(1) will exit, unless **-**
- (**stdin**) was given as an argument at least once to **-f** or **--file**.
- However, if any other **-e**, **--expression**, **-f**, or **--file**
- arguments are given after that, bc(1) will give a fatal error and exit.
+ If this option is given on the command-line (i.e., not in **BC_ENV_ARGS**,
+ see the **ENVIRONMENT VARIABLES** section), then after processing all
+ expressions and files, bc(1) will exit, unless **-** (**stdin**) was given
+ as an argument at least once to **-f** or **--file**, whether on the
+ command-line or in **BC_ENV_ARGS**. However, if any other **-e**,
+ **--expression**, **-f**, or **--file** arguments are given after **-f-** or
+ equivalent is given, bc(1) will give a fatal error and exit.
This is a **non-portable extension**.
@@ -200,8 +203,12 @@ The following are the options that bc(1) accepts.
through **stdin**. If expressions are also given (see above), the
expressions are evaluated in the order given.
- After processing all expressions and files, bc(1) will exit, unless **-**
- (**stdin**) was given as an argument at least once to **-f** or **--file**.
+ If this option is given on the command-line (i.e., not in **BC_ENV_ARGS**,
+ see the **ENVIRONMENT VARIABLES** section), then after processing all
+ expressions and files, bc(1) will exit, unless **-** (**stdin**) was given
+ as an argument at least once to **-f** or **--file**. However, if any other
+ **-e**, **--expression**, **-f**, or **--file** arguments are given after
+ **-f-** or equivalent is given, bc(1) will give a fatal error and exit.
This is a **non-portable extension**.
@@ -209,7 +216,9 @@ All long options are **non-portable extensions**.
# STDOUT
-Any non-error output is written to **stdout**.
+Any non-error output is written to **stdout**. In addition, if history (see the
+**HISTORY** section) and the prompt (see the **TTY MODE** section) are enabled,
+both are output to **stdout**.
**Note**: Unlike other bc(1) implementations, this bc(1) will issue a fatal
error (see the **EXIT STATUS** section) if it cannot write to **stdout**, so if
diff --git a/manuals/bc/E.1 b/manuals/bc/E.1
index 02a56e6c653c..597cde782788 100644
--- a/manuals/bc/E.1
+++ b/manuals/bc/E.1
@@ -25,7 +25,7 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.TH "BC" "1" "January 2021" "Gavin D. Howard" "General Commands Manual"
+.TH "BC" "1" "February 2021" "Gavin D. Howard" "General Commands Manual"
.SH NAME
.PP
bc - arbitrary-precision decimal arithmetic language and calculator
@@ -192,12 +192,16 @@ This means that if a file is given before an expression, the file is
read in and evaluated first.
.RS
.PP
-After processing all expressions and files, bc(1) will exit, unless
+If this option is given on the command-line (i.e., not in
+\f[B]BC_ENV_ARGS\f[R], see the \f[B]ENVIRONMENT VARIABLES\f[R] section),
+then after processing all expressions and files, bc(1) will exit, unless
\f[B]-\f[R] (\f[B]stdin\f[R]) was given as an argument at least once to
-\f[B]-f\f[R] or \f[B]\[en]file\f[R].
+\f[B]-f\f[R] or \f[B]\[en]file\f[R], whether on the command-line or in
+\f[B]BC_ENV_ARGS\f[R].
However, if any other \f[B]-e\f[R], \f[B]\[en]expression\f[R],
-\f[B]-f\f[R], or \f[B]\[en]file\f[R] arguments are given after that,
-bc(1) will give a fatal error and exit.
+\f[B]-f\f[R], or \f[B]\[en]file\f[R] arguments are given after
+\f[B]-f-\f[R] or equivalent is given, bc(1) will give a fatal error and
+exit.
.PP
This is a \f[B]non-portable extension\f[R].
.RE
@@ -209,9 +213,15 @@ If expressions are also given (see above), the expressions are evaluated
in the order given.
.RS
.PP
-After processing all expressions and files, bc(1) will exit, unless
+If this option is given on the command-line (i.e., not in
+\f[B]BC_ENV_ARGS\f[R], see the \f[B]ENVIRONMENT VARIABLES\f[R] section),
+then after processing all expressions and files, bc(1) will exit, unless
\f[B]-\f[R] (\f[B]stdin\f[R]) was given as an argument at least once to
\f[B]-f\f[R] or \f[B]\[en]file\f[R].
+However, if any other \f[B]-e\f[R], \f[B]\[en]expression\f[R],
+\f[B]-f\f[R], or \f[B]\[en]file\f[R] arguments are given after
+\f[B]-f-\f[R] or equivalent is given, bc(1) will give a fatal error and
+exit.
.PP
This is a \f[B]non-portable extension\f[R].
.RE
@@ -220,6 +230,9 @@ All long options are \f[B]non-portable extensions\f[R].
.SH STDOUT
.PP
Any non-error output is written to \f[B]stdout\f[R].
+In addition, if history (see the \f[B]HISTORY\f[R] section) and the
+prompt (see the \f[B]TTY MODE\f[R] section) are enabled, both are output
+to \f[B]stdout\f[R].
.PP
\f[B]Note\f[R]: Unlike other bc(1) implementations, this bc(1) will
issue a fatal error (see the \f[B]EXIT STATUS\f[R] section) if it cannot
diff --git a/manuals/bc/E.1.md b/manuals/bc/E.1.md
index 7cbc1a56548a..864cf32068bf 100644
--- a/manuals/bc/E.1.md
+++ b/manuals/bc/E.1.md
@@ -171,10 +171,13 @@ The following are the options that bc(1) accepts.
evaluated in the order given. This means that if a file is given before an
expression, the file is read in and evaluated first.
- After processing all expressions and files, bc(1) will exit, unless **-**
- (**stdin**) was given as an argument at least once to **-f** or **--file**.
- However, if any other **-e**, **--expression**, **-f**, or **--file**
- arguments are given after that, bc(1) will give a fatal error and exit.
+ If this option is given on the command-line (i.e., not in **BC_ENV_ARGS**,
+ see the **ENVIRONMENT VARIABLES** section), then after processing all
+ expressions and files, bc(1) will exit, unless **-** (**stdin**) was given
+ as an argument at least once to **-f** or **--file**, whether on the
+ command-line or in **BC_ENV_ARGS**. However, if any other **-e**,
+ **--expression**, **-f**, or **--file** arguments are given after **-f-** or
+ equivalent is given, bc(1) will give a fatal error and exit.
This is a **non-portable extension**.
@@ -184,8 +187,12 @@ The following are the options that bc(1) accepts.
through **stdin**. If expressions are also given (see above), the
expressions are evaluated in the order given.
- After processing all expressions and files, bc(1) will exit, unless **-**
- (**stdin**) was given as an argument at least once to **-f** or **--file**.
+ If this option is given on the command-line (i.e., not in **BC_ENV_ARGS**,
+ see the **ENVIRONMENT VARIABLES** section), then after processing all
+ expressions and files, bc(1) will exit, unless **-** (**stdin**) was given
+ as an argument at least once to **-f** or **--file**. However, if any other
+ **-e**, **--expression**, **-f**, or **--file** arguments are given after
+ **-f-** or equivalent is given, bc(1) will give a fatal error and exit.
This is a **non-portable extension**.
@@ -193,7 +200,9 @@ All long options are **non-portable extensions**.
# STDOUT
-Any non-error output is written to **stdout**.
+Any non-error output is written to **stdout**. In addition, if history (see the
+**HISTORY** section) and the prompt (see the **TTY MODE** section) are enabled,
+both are output to **stdout**.
**Note**: Unlike other bc(1) implementations, this bc(1) will issue a fatal
error (see the **EXIT STATUS** section) if it cannot write to **stdout**, so if
diff --git a/manuals/bc/EH.1 b/manuals/bc/EH.1
index 8cb2a3bc8335..dca77a99162e 100644
--- a/manuals/bc/EH.1
+++ b/manuals/bc/EH.1
@@ -25,7 +25,7 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.TH "BC" "1" "January 2021" "Gavin D. Howard" "General Commands Manual"
+.TH "BC" "1" "February 2021" "Gavin D. Howard" "General Commands Manual"
.SH NAME
.PP
bc - arbitrary-precision decimal arithmetic language and calculator
@@ -189,12 +189,16 @@ This means that if a file is given before an expression, the file is
read in and evaluated first.
.RS
.PP
-After processing all expressions and files, bc(1) will exit, unless
+If this option is given on the command-line (i.e., not in
+\f[B]BC_ENV_ARGS\f[R], see the \f[B]ENVIRONMENT VARIABLES\f[R] section),
+then after processing all expressions and files, bc(1) will exit, unless
\f[B]-\f[R] (\f[B]stdin\f[R]) was given as an argument at least once to
-\f[B]-f\f[R] or \f[B]\[en]file\f[R].
+\f[B]-f\f[R] or \f[B]\[en]file\f[R], whether on the command-line or in
+\f[B]BC_ENV_ARGS\f[R].
However, if any other \f[B]-e\f[R], \f[B]\[en]expression\f[R],
-\f[B]-f\f[R], or \f[B]\[en]file\f[R] arguments are given after that,
-bc(1) will give a fatal error and exit.
+\f[B]-f\f[R], or \f[B]\[en]file\f[R] arguments are given after
+\f[B]-f-\f[R] or equivalent is given, bc(1) will give a fatal error and
+exit.
.PP
This is a \f[B]non-portable extension\f[R].
.RE
@@ -206,9 +210,15 @@ If expressions are also given (see above), the expressions are evaluated
in the order given.
.RS
.PP
-After processing all expressions and files, bc(1) will exit, unless
+If this option is given on the command-line (i.e., not in
+\f[B]BC_ENV_ARGS\f[R], see the \f[B]ENVIRONMENT VARIABLES\f[R] section),
+then after processing all expressions and files, bc(1) will exit, unless
\f[B]-\f[R] (\f[B]stdin\f[R]) was given as an argument at least once to
\f[B]-f\f[R] or \f[B]\[en]file\f[R].
+However, if any other \f[B]-e\f[R], \f[B]\[en]expression\f[R],
+\f[B]-f\f[R], or \f[B]\[en]file\f[R] arguments are given after
+\f[B]-f-\f[R] or equivalent is given, bc(1) will give a fatal error and
+exit.
.PP
This is a \f[B]non-portable extension\f[R].
.RE
@@ -217,6 +227,9 @@ All long options are \f[B]non-portable extensions\f[R].
.SH STDOUT
.PP
Any non-error output is written to \f[B]stdout\f[R].
+In addition, if history (see the \f[B]HISTORY\f[R] section) and the
+prompt (see the \f[B]TTY MODE\f[R] section) are enabled, both are output
+to \f[B]stdout\f[R].
.PP
\f[B]Note\f[R]: Unlike other bc(1) implementations, this bc(1) will
issue a fatal error (see the \f[B]EXIT STATUS\f[R] section) if it cannot
diff --git a/manuals/bc/EH.1.md b/manuals/bc/EH.1.md
index 351882878cd3..c1e324ab6ebc 100644
--- a/manuals/bc/EH.1.md
+++ b/manuals/bc/EH.1.md
@@ -168,10 +168,13 @@ The following are the options that bc(1) accepts.
evaluated in the order given. This means that if a file is given before an
expression, the file is read in and evaluated first.
- After processing all expressions and files, bc(1) will exit, unless **-**
- (**stdin**) was given as an argument at least once to **-f** or **--file**.
- However, if any other **-e**, **--expression**, **-f**, or **--file**
- arguments are given after that, bc(1) will give a fatal error and exit.
+ If this option is given on the command-line (i.e., not in **BC_ENV_ARGS**,
+ see the **ENVIRONMENT VARIABLES** section), then after processing all
+ expressions and files, bc(1) will exit, unless **-** (**stdin**) was given
+ as an argument at least once to **-f** or **--file**, whether on the
+ command-line or in **BC_ENV_ARGS**. However, if any other **-e**,
+ **--expression**, **-f**, or **--file** arguments are given after **-f-** or
+ equivalent is given, bc(1) will give a fatal error and exit.
This is a **non-portable extension**.
@@ -181,8 +184,12 @@ The following are the options that bc(1) accepts.
through **stdin**. If expressions are also given (see above), the
expressions are evaluated in the order given.
- After processing all expressions and files, bc(1) will exit, unless **-**
- (**stdin**) was given as an argument at least once to **-f** or **--file**.
+ If this option is given on the command-line (i.e., not in **BC_ENV_ARGS**,
+ see the **ENVIRONMENT VARIABLES** section), then after processing all
+ expressions and files, bc(1) will exit, unless **-** (**stdin**) was given
+ as an argument at least once to **-f** or **--file**. However, if any other
+ **-e**, **--expression**, **-f**, or **--file** arguments are given after
+ **-f-** or equivalent is given, bc(1) will give a fatal error and exit.
This is a **non-portable extension**.
@@ -190,7 +197,9 @@ All long options are **non-portable extensions**.
# STDOUT
-Any non-error output is written to **stdout**.
+Any non-error output is written to **stdout**. In addition, if history (see the
+**HISTORY** section) and the prompt (see the **TTY MODE** section) are enabled,
+both are output to **stdout**.
**Note**: Unlike other bc(1) implementations, this bc(1) will issue a fatal
error (see the **EXIT STATUS** section) if it cannot write to **stdout**, so if
diff --git a/manuals/bc/EHN.1 b/manuals/bc/EHN.1
index f751f9d31beb..6b208ade85fd 100644
--- a/manuals/bc/EHN.1
+++ b/manuals/bc/EHN.1
@@ -25,7 +25,7 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.TH "BC" "1" "January 2021" "Gavin D. Howard" "General Commands Manual"
+.TH "BC" "1" "February 2021" "Gavin D. Howard" "General Commands Manual"
.SH NAME
.PP
bc - arbitrary-precision decimal arithmetic language and calculator
@@ -189,12 +189,16 @@ This means that if a file is given before an expression, the file is
read in and evaluated first.
.RS
.PP
-After processing all expressions and files, bc(1) will exit, unless
+If this option is given on the command-line (i.e., not in
+\f[B]BC_ENV_ARGS\f[R], see the \f[B]ENVIRONMENT VARIABLES\f[R] section),
+then after processing all expressions and files, bc(1) will exit, unless
\f[B]-\f[R] (\f[B]stdin\f[R]) was given as an argument at least once to
-\f[B]-f\f[R] or \f[B]\[en]file\f[R].
+\f[B]-f\f[R] or \f[B]\[en]file\f[R], whether on the command-line or in
+\f[B]BC_ENV_ARGS\f[R].
However, if any other \f[B]-e\f[R], \f[B]\[en]expression\f[R],
-\f[B]-f\f[R], or \f[B]\[en]file\f[R] arguments are given after that,
-bc(1) will give a fatal error and exit.
+\f[B]-f\f[R], or \f[B]\[en]file\f[R] arguments are given after
+\f[B]-f-\f[R] or equivalent is given, bc(1) will give a fatal error and
+exit.
.PP
This is a \f[B]non-portable extension\f[R].
.RE
@@ -206,9 +210,15 @@ If expressions are also given (see above), the expressions are evaluated
in the order given.
.RS
.PP
-After processing all expressions and files, bc(1) will exit, unless
+If this option is given on the command-line (i.e., not in
+\f[B]BC_ENV_ARGS\f[R], see the \f[B]ENVIRONMENT VARIABLES\f[R] section),
+then after processing all expressions and files, bc(1) will exit, unless
\f[B]-\f[R] (\f[B]stdin\f[R]) was given as an argument at least once to
\f[B]-f\f[R] or \f[B]\[en]file\f[R].
+However, if any other \f[B]-e\f[R], \f[B]\[en]expression\f[R],
+\f[B]-f\f[R], or \f[B]\[en]file\f[R] arguments are given after
+\f[B]-f-\f[R] or equivalent is given, bc(1) will give a fatal error and
+exit.
.PP
This is a \f[B]non-portable extension\f[R].
.RE
@@ -217,6 +227,9 @@ All long options are \f[B]non-portable extensions\f[R].
.SH STDOUT
.PP
Any non-error output is written to \f[B]stdout\f[R].
+In addition, if history (see the \f[B]HISTORY\f[R] section) and the
+prompt (see the \f[B]TTY MODE\f[R] section) are enabled, both are output
+to \f[B]stdout\f[R].
.PP
\f[B]Note\f[R]: Unlike other bc(1) implementations, this bc(1) will
issue a fatal error (see the \f[B]EXIT STATUS\f[R] section) if it cannot
diff --git a/manuals/bc/EHN.1.md b/manuals/bc/EHN.1.md
index dfe1c401970f..4ee01a4bbcc8 100644
--- a/manuals/bc/EHN.1.md
+++ b/manuals/bc/EHN.1.md
@@ -168,10 +168,13 @@ The following are the options that bc(1) accepts.
evaluated in the order given. This means that if a file is given before an
expression, the file is read in and evaluated first.
- After processing all expressions and files, bc(1) will exit, unless **-**
- (**stdin**) was given as an argument at least once to **-f** or **--file**.
- However, if any other **-e**, **--expression**, **-f**, or **--file**
- arguments are given after that, bc(1) will give a fatal error and exit.
+ If this option is given on the command-line (i.e., not in **BC_ENV_ARGS**,
+ see the **ENVIRONMENT VARIABLES** section), then after processing all
+ expressions and files, bc(1) will exit, unless **-** (**stdin**) was given
+ as an argument at least once to **-f** or **--file**, whether on the
+ command-line or in **BC_ENV_ARGS**. However, if any other **-e**,
+ **--expression**, **-f**, or **--file** arguments are given after **-f-** or
+ equivalent is given, bc(1) will give a fatal error and exit.
This is a **non-portable extension**.
@@ -181,8 +184,12 @@ The following are the options that bc(1) accepts.
through **stdin**. If expressions are also given (see above), the
expressions are evaluated in the order given.
- After processing all expressions and files, bc(1) will exit, unless **-**
- (**stdin**) was given as an argument at least once to **-f** or **--file**.
+ If this option is given on the command-line (i.e., not in **BC_ENV_ARGS**,
+ see the **ENVIRONMENT VARIABLES** section), then after processing all
+ expressions and files, bc(1) will exit, unless **-** (**stdin**) was given
+ as an argument at least once to **-f** or **--file**. However, if any other
+ **-e**, **--expression**, **-f**, or **--file** arguments are given after
+ **-f-** or equivalent is given, bc(1) will give a fatal error and exit.
This is a **non-portable extension**.
@@ -190,7 +197,9 @@ All long options are **non-portable extensions**.
# STDOUT
-Any non-error output is written to **stdout**.
+Any non-error output is written to **stdout**. In addition, if history (see the
+**HISTORY** section) and the prompt (see the **TTY MODE** section) are enabled,
+both are output to **stdout**.
**Note**: Unlike other bc(1) implementations, this bc(1) will issue a fatal
error (see the **EXIT STATUS** section) if it cannot write to **stdout**, so if
diff --git a/manuals/bc/EHNP.1 b/manuals/bc/EHNP.1
index e25cd1a7da42..7bd46f38e104 100644
--- a/manuals/bc/EHNP.1
+++ b/manuals/bc/EHNP.1
@@ -25,7 +25,7 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.TH "BC" "1" "January 2021" "Gavin D. Howard" "General Commands Manual"
+.TH "BC" "1" "February 2021" "Gavin D. Howard" "General Commands Manual"
.SH NAME
.PP
bc - arbitrary-precision decimal arithmetic language and calculator
@@ -184,12 +184,16 @@ This means that if a file is given before an expression, the file is
read in and evaluated first.
.RS
.PP
-After processing all expressions and files, bc(1) will exit, unless
+If this option is given on the command-line (i.e., not in
+\f[B]BC_ENV_ARGS\f[R], see the \f[B]ENVIRONMENT VARIABLES\f[R] section),
+then after processing all expressions and files, bc(1) will exit, unless
\f[B]-\f[R] (\f[B]stdin\f[R]) was given as an argument at least once to
-\f[B]-f\f[R] or \f[B]\[en]file\f[R].
+\f[B]-f\f[R] or \f[B]\[en]file\f[R], whether on the command-line or in
+\f[B]BC_ENV_ARGS\f[R].
However, if any other \f[B]-e\f[R], \f[B]\[en]expression\f[R],
-\f[B]-f\f[R], or \f[B]\[en]file\f[R] arguments are given after that,
-bc(1) will give a fatal error and exit.
+\f[B]-f\f[R], or \f[B]\[en]file\f[R] arguments are given after
+\f[B]-f-\f[R] or equivalent is given, bc(1) will give a fatal error and
+exit.
.PP
This is a \f[B]non-portable extension\f[R].
.RE
@@ -201,9 +205,15 @@ If expressions are also given (see above), the expressions are evaluated
in the order given.
.RS
.PP
-After processing all expressions and files, bc(1) will exit, unless
+If this option is given on the command-line (i.e., not in
+\f[B]BC_ENV_ARGS\f[R], see the \f[B]ENVIRONMENT VARIABLES\f[R] section),
+then after processing all expressions and files, bc(1) will exit, unless
\f[B]-\f[R] (\f[B]stdin\f[R]) was given as an argument at least once to
\f[B]-f\f[R] or \f[B]\[en]file\f[R].
+However, if any other \f[B]-e\f[R], \f[B]\[en]expression\f[R],
+\f[B]-f\f[R], or \f[B]\[en]file\f[R] arguments are given after
+\f[B]-f-\f[R] or equivalent is given, bc(1) will give a fatal error and
+exit.
.PP
This is a \f[B]non-portable extension\f[R].
.RE
@@ -212,6 +222,9 @@ All long options are \f[B]non-portable extensions\f[R].
.SH STDOUT
.PP
Any non-error output is written to \f[B]stdout\f[R].
+In addition, if history (see the \f[B]HISTORY\f[R] section) and the
+prompt (see the \f[B]TTY MODE\f[R] section) are enabled, both are output
+to \f[B]stdout\f[R].
.PP
\f[B]Note\f[R]: Unlike other bc(1) implementations, this bc(1) will
issue a fatal error (see the \f[B]EXIT STATUS\f[R] section) if it cannot
diff --git a/manuals/bc/EHNP.1.md b/manuals/bc/EHNP.1.md
index e55673769736..8aca89e6f7b0 100644
--- a/manuals/bc/EHNP.1.md
+++ b/manuals/bc/EHNP.1.md
@@ -164,10 +164,13 @@ The following are the options that bc(1) accepts.
evaluated in the order given. This means that if a file is given before an
expression, the file is read in and evaluated first.
- After processing all expressions and files, bc(1) will exit, unless **-**
- (**stdin**) was given as an argument at least once to **-f** or **--file**.
- However, if any other **-e**, **--expression**, **-f**, or **--file**
- arguments are given after that, bc(1) will give a fatal error and exit.
+ If this option is given on the command-line (i.e., not in **BC_ENV_ARGS**,
+ see the **ENVIRONMENT VARIABLES** section), then after processing all
+ expressions and files, bc(1) will exit, unless **-** (**stdin**) was given
+ as an argument at least once to **-f** or **--file**, whether on the
+ command-line or in **BC_ENV_ARGS**. However, if any other **-e**,
+ **--expression**, **-f**, or **--file** arguments are given after **-f-** or
+ equivalent is given, bc(1) will give a fatal error and exit.
This is a **non-portable extension**.
@@ -177,8 +180,12 @@ The following are the options that bc(1) accepts.
through **stdin**. If expressions are also given (see above), the
expressions are evaluated in the order given.
- After processing all expressions and files, bc(1) will exit, unless **-**
- (**stdin**) was given as an argument at least once to **-f** or **--file**.
+ If this option is given on the command-line (i.e., not in **BC_ENV_ARGS**,
+ see the **ENVIRONMENT VARIABLES** section), then after processing all
+ expressions and files, bc(1) will exit, unless **-** (**stdin**) was given
+ as an argument at least once to **-f** or **--file**. However, if any other
+ **-e**, **--expression**, **-f**, or **--file** arguments are given after
+ **-f-** or equivalent is given, bc(1) will give a fatal error and exit.
This is a **non-portable extension**.
@@ -186,7 +193,9 @@ All long options are **non-portable extensions**.
# STDOUT
-Any non-error output is written to **stdout**.
+Any non-error output is written to **stdout**. In addition, if history (see the
+**HISTORY** section) and the prompt (see the **TTY MODE** section) are enabled,
+both are output to **stdout**.
**Note**: Unlike other bc(1) implementations, this bc(1) will issue a fatal
error (see the **EXIT STATUS** section) if it cannot write to **stdout**, so if
diff --git a/manuals/bc/EHP.1 b/manuals/bc/EHP.1
index 7f35d1a1be7f..31c02f1b9591 100644
--- a/manuals/bc/EHP.1
+++ b/manuals/bc/EHP.1
@@ -25,7 +25,7 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.TH "BC" "1" "January 2021" "Gavin D. Howard" "General Commands Manual"
+.TH "BC" "1" "February 2021" "Gavin D. Howard" "General Commands Manual"
.SH NAME
.PP
bc - arbitrary-precision decimal arithmetic language and calculator
@@ -184,12 +184,16 @@ This means that if a file is given before an expression, the file is
read in and evaluated first.
.RS
.PP
-After processing all expressions and files, bc(1) will exit, unless
+If this option is given on the command-line (i.e., not in
+\f[B]BC_ENV_ARGS\f[R], see the \f[B]ENVIRONMENT VARIABLES\f[R] section),
+then after processing all expressions and files, bc(1) will exit, unless
\f[B]-\f[R] (\f[B]stdin\f[R]) was given as an argument at least once to
-\f[B]-f\f[R] or \f[B]\[en]file\f[R].
+\f[B]-f\f[R] or \f[B]\[en]file\f[R], whether on the command-line or in
+\f[B]BC_ENV_ARGS\f[R].
However, if any other \f[B]-e\f[R], \f[B]\[en]expression\f[R],
-\f[B]-f\f[R], or \f[B]\[en]file\f[R] arguments are given after that,
-bc(1) will give a fatal error and exit.
+\f[B]-f\f[R], or \f[B]\[en]file\f[R] arguments are given after
+\f[B]-f-\f[R] or equivalent is given, bc(1) will give a fatal error and
+exit.
.PP
This is a \f[B]non-portable extension\f[R].
.RE
@@ -201,9 +205,15 @@ If expressions are also given (see above), the expressions are evaluated
in the order given.
.RS
.PP
-After processing all expressions and files, bc(1) will exit, unless
+If this option is given on the command-line (i.e., not in
+\f[B]BC_ENV_ARGS\f[R], see the \f[B]ENVIRONMENT VARIABLES\f[R] section),
+then after processing all expressions and files, bc(1) will exit, unless
\f[B]-\f[R] (\f[B]stdin\f[R]) was given as an argument at least once to
\f[B]-f\f[R] or \f[B]\[en]file\f[R].
+However, if any other \f[B]-e\f[R], \f[B]\[en]expression\f[R],
+\f[B]-f\f[R], or \f[B]\[en]file\f[R] arguments are given after
+\f[B]-f-\f[R] or equivalent is given, bc(1) will give a fatal error and
+exit.
.PP
This is a \f[B]non-portable extension\f[R].
.RE
@@ -212,6 +222,9 @@ All long options are \f[B]non-portable extensions\f[R].
.SH STDOUT
.PP
Any non-error output is written to \f[B]stdout\f[R].
+In addition, if history (see the \f[B]HISTORY\f[R] section) and the
+prompt (see the \f[B]TTY MODE\f[R] section) are enabled, both are output
+to \f[B]stdout\f[R].
.PP
\f[B]Note\f[R]: Unlike other bc(1) implementations, this bc(1) will
issue a fatal error (see the \f[B]EXIT STATUS\f[R] section) if it cannot
diff --git a/manuals/bc/EHP.1.md b/manuals/bc/EHP.1.md
index 11050003420f..2c9ab3909dd6 100644
--- a/manuals/bc/EHP.1.md
+++ b/manuals/bc/EHP.1.md
@@ -164,10 +164,13 @@ The following are the options that bc(1) accepts.
evaluated in the order given. This means that if a file is given before an
expression, the file is read in and evaluated first.
- After processing all expressions and files, bc(1) will exit, unless **-**
- (**stdin**) was given as an argument at least once to **-f** or **--file**.
- However, if any other **-e**, **--expression**, **-f**, or **--file**
- arguments are given after that, bc(1) will give a fatal error and exit.
+ If this option is given on the command-line (i.e., not in **BC_ENV_ARGS**,
+ see the **ENVIRONMENT VARIABLES** section), then after processing all
+ expressions and files, bc(1) will exit, unless **-** (**stdin**) was given
+ as an argument at least once to **-f** or **--file**, whether on the
+ command-line or in **BC_ENV_ARGS**. However, if any other **-e**,
+ **--expression**, **-f**, or **--file** arguments are given after **-f-** or
+ equivalent is given, bc(1) will give a fatal error and exit.
This is a **non-portable extension**.
@@ -177,8 +180,12 @@ The following are the options that bc(1) accepts.
through **stdin**. If expressions are also given (see above), the
expressions are evaluated in the order given.
- After processing all expressions and files, bc(1) will exit, unless **-**
- (**stdin**) was given as an argument at least once to **-f** or **--file**.
+ If this option is given on the command-line (i.e., not in **BC_ENV_ARGS**,
+ see the **ENVIRONMENT VARIABLES** section), then after processing all
+ expressions and files, bc(1) will exit, unless **-** (**stdin**) was given
+ as an argument at least once to **-f** or **--file**. However, if any other
+ **-e**, **--expression**, **-f**, or **--file** arguments are given after
+ **-f-** or equivalent is given, bc(1) will give a fatal error and exit.
This is a **non-portable extension**.
@@ -186,7 +193,9 @@ All long options are **non-portable extensions**.
# STDOUT
-Any non-error output is written to **stdout**.
+Any non-error output is written to **stdout**. In addition, if history (see the
+**HISTORY** section) and the prompt (see the **TTY MODE** section) are enabled,
+both are output to **stdout**.
**Note**: Unlike other bc(1) implementations, this bc(1) will issue a fatal
error (see the **EXIT STATUS** section) if it cannot write to **stdout**, so if
diff --git a/manuals/bc/EN.1 b/manuals/bc/EN.1
index c8e3a327b2f8..faa6bf488e28 100644
--- a/manuals/bc/EN.1
+++ b/manuals/bc/EN.1
@@ -25,7 +25,7 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.TH "BC" "1" "January 2021" "Gavin D. Howard" "General Commands Manual"
+.TH "BC" "1" "February 2021" "Gavin D. Howard" "General Commands Manual"
.SH NAME
.PP
bc - arbitrary-precision decimal arithmetic language and calculator
@@ -192,12 +192,16 @@ This means that if a file is given before an expression, the file is
read in and evaluated first.
.RS
.PP
-After processing all expressions and files, bc(1) will exit, unless
+If this option is given on the command-line (i.e., not in
+\f[B]BC_ENV_ARGS\f[R], see the \f[B]ENVIRONMENT VARIABLES\f[R] section),
+then after processing all expressions and files, bc(1) will exit, unless
\f[B]-\f[R] (\f[B]stdin\f[R]) was given as an argument at least once to
-\f[B]-f\f[R] or \f[B]\[en]file\f[R].
+\f[B]-f\f[R] or \f[B]\[en]file\f[R], whether on the command-line or in
+\f[B]BC_ENV_ARGS\f[R].
However, if any other \f[B]-e\f[R], \f[B]\[en]expression\f[R],
-\f[B]-f\f[R], or \f[B]\[en]file\f[R] arguments are given after that,
-bc(1) will give a fatal error and exit.
+\f[B]-f\f[R], or \f[B]\[en]file\f[R] arguments are given after
+\f[B]-f-\f[R] or equivalent is given, bc(1) will give a fatal error and
+exit.
.PP
This is a \f[B]non-portable extension\f[R].
.RE
@@ -209,9 +213,15 @@ If expressions are also given (see above), the expressions are evaluated
in the order given.
.RS
.PP
-After processing all expressions and files, bc(1) will exit, unless
+If this option is given on the command-line (i.e., not in
+\f[B]BC_ENV_ARGS\f[R], see the \f[B]ENVIRONMENT VARIABLES\f[R] section),
+then after processing all expressions and files, bc(1) will exit, unless
\f[B]-\f[R] (\f[B]stdin\f[R]) was given as an argument at least once to
\f[B]-f\f[R] or \f[B]\[en]file\f[R].
+However, if any other \f[B]-e\f[R], \f[B]\[en]expression\f[R],
+\f[B]-f\f[R], or \f[B]\[en]file\f[R] arguments are given after
+\f[B]-f-\f[R] or equivalent is given, bc(1) will give a fatal error and
+exit.
.PP
This is a \f[B]non-portable extension\f[R].
.RE
@@ -220,6 +230,9 @@ All long options are \f[B]non-portable extensions\f[R].
.SH STDOUT
.PP
*** 3425 LINES SKIPPED ***
More information about the dev-commits-src-all
mailing list