[Bug 235589] sh(1): LINENO is always 0 in shell arithmetic
bugzilla-noreply at freebsd.org
bugzilla-noreply at freebsd.org
Thu Feb 7 23:01:35 UTC 2019
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=235589
Bug ID: 235589
Summary: sh(1): LINENO is always 0 in shell arithmetic
Product: Base System
Version: 12.0-STABLE
Hardware: Any
OS: Any
Status: New
Severity: Affects Some People
Priority: ---
Component: bin
Assignee: bugs at FreeBSD.org
Reporter: mcdutchie at hotmail.com
In sh(1), the LINENO variable (currently executed line number) is always zero
when it is read as part of a shell arithmetic expression.
For instance:
$ echo $LINENO $((LINENO)) $(($LINENO))
108 0 108
Expected: 3 times "108" (or whatever the current line number is)
Note that $(($LINENO)) does work because it expands LINENO as a normal shell
expansion before invoking the arithmetic subsystem. However, $((LINENO)) should
be equivalent as it is for all other variables.
Another manifestation of the bug is:
$ set -u
$ echo $((LINENO))
-sh: arithmetic expression: variable not set: "LINENO"
--
You are receiving this mail because:
You are the assignee for the bug.
More information about the freebsd-bugs
mailing list