Re: Arithmetic evaluation of negative numbers with base prefix

2019-06-18 Thread Chet Ramey
On 6/18/19 1:52 AM, Ilkka Virta wrote:

> I still wish this could be fixed to do the useful thing without any
> workarounds, given it's what ksh and zsh do

I'm surprised people keep saying this.

$ ksh93 -c 'echo ${.sh.version}'
Version ABIJM 93v- 2014-09-29
$ ksh93 -c 'echo $(( 10# ))'
ksh93:  10# : arithmetic syntax error
$ ksh93 -c 'echo $(( 10#-4 ))'
ksh93:  10#-4 : arithmetic syntax error


-- 
``The lyf so short, the craft so long to lerne.'' - Chaucer
 ``Ars longa, vita brevis'' - Hippocrates
Chet Ramey, UTech, CWRUc...@case.eduhttp://tiswww.cwru.edu/~chet/



Re: Arithmetic evaluation of negative numbers with base prefix

2019-06-18 Thread Greg Wooledge
On Tue, Jun 18, 2019 at 10:27:48AM -0400, Chet Ramey wrote:
> $ ksh93 -c 'echo ${.sh.version}'
> Version ABIJM 93v- 2014-09-29
> $ ksh93 -c 'echo $(( 10# ))'
> ksh93:  10# : arithmetic syntax error

I guess most Linux distributions are not shipping the 2014 version of
ksh93 yet...?

wooledg:~$ ksh -c 'echo $(( 10# ))'
0
wooledg:~$ dpkg -l ksh | tail -1
ii  ksh93u+20120801-3.4 amd64Real, AT&T version of the Korn 
shell
wooledg:~$ ksh -c 'echo ${.sh.version}'
Version AJM 93u+ 2012-08-01

Seems kinda weird to continue calling it "ksh93" if it's being changed,
but I don't make the decisions.



Re: Arithmetic evaluation of negative numbers with base prefix

2019-06-18 Thread Ilkka Virta

On 18.6. 18:20, Greg Wooledge wrote:

On Tue, Jun 18, 2019 at 10:27:48AM -0400, Chet Ramey wrote:

$ ksh93 -c 'echo ${.sh.version}'
Version ABIJM 93v- 2014-09-29
$ ksh93 -c 'echo $(( 10# ))'
ksh93:  10# : arithmetic syntax error


I guess most Linux distributions are not shipping the 2014 version of
ksh93 yet...?


Yeah, I had the one from Debian. I'm not even sure what the current 
version of ksh is.


At least the newer versions throw an error instead of silently doing the 
unexpected.



wooledg:~$ ksh -c 'echo $(( 10# ))'
0
wooledg:~$ dpkg -l ksh | tail -1
ii  ksh93u+20120801-3.4 amd64Real, AT&T version of the Korn 
shell
wooledg:~$ ksh -c 'echo ${.sh.version}'
Version AJM 93u+ 2012-08-01

Seems kinda weird to continue calling it "ksh93" if it's being changed,
but I don't make the decisions.




--
Ilkka Virta / itvi...@iki.fi