EXPR_COMPAT should imply -e, since there is no way to specify it otherwise,
and -e reflects the historic behavior of FreeBSD's expr.
This commit is contained in:
parent
4a21733e2d
commit
94a48596a3
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=96382
@ -66,7 +66,7 @@ If
|
||||
.Fl e
|
||||
is not specified, arithmetic operations and parsing of integer
|
||||
arguments will overflow silently according to the rules of the C
|
||||
standard, and integer computations will be performed using the
|
||||
standard, using the
|
||||
.Ql long
|
||||
data type.
|
||||
.Pp
|
||||
@ -139,6 +139,20 @@ including the one in previous versions of
|
||||
will not permit this syntax.
|
||||
See the examples below for portable ways to guarantee the correct
|
||||
interpretation.
|
||||
The
|
||||
.Ev EXPR_COMPAT
|
||||
variable is intended for use as a transition and debugging aid, when
|
||||
.Nm
|
||||
is used in complex scripts which cannot easily be recast to avoid the
|
||||
non-portable usage.
|
||||
Defining
|
||||
.Ev EXPR_COMPAT
|
||||
also implicitly enables the
|
||||
.Fl e
|
||||
option, since this matches the historic behavior of
|
||||
.Nm
|
||||
in
|
||||
.Fx .
|
||||
.Pp
|
||||
The
|
||||
.Nm
|
||||
@ -161,6 +175,8 @@ If set,
|
||||
will emulate historic
|
||||
.Nm
|
||||
implementations which did not obey the Utility Syntax Guidelines.
|
||||
Implies
|
||||
.Fl e .
|
||||
.El
|
||||
.Sh EXAMPLES
|
||||
.Bl -bullet
|
||||
|
@ -280,6 +280,7 @@ main(int argc, char *argv[])
|
||||
setlocale (LC_ALL, "");
|
||||
if (getenv("EXPR_COMPAT") != NULL) {
|
||||
av = argv + 1;
|
||||
eflag = 1;
|
||||
} else {
|
||||
while ((c = getopt(argc, argv, "e")) != -1)
|
||||
switch (c) {
|
||||
|
Loading…
Reference in New Issue
Block a user