From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from euclid.skiles.gatech.edu (list@euclid.skiles.gatech.edu [130.207.146.50]) by coral.primenet.com.au (8.7.5/8.7.3) with ESMTP id XAA06635 for ; Fri, 16 Aug 1996 23:37:04 +1000 (EST) Received: (from list@localhost) by euclid.skiles.gatech.edu (8.7.3/8.7.3) id JAA15158; Fri, 16 Aug 1996 09:29:29 -0400 (EDT) Resent-Date: Fri, 16 Aug 1996 09:29:29 -0400 (EDT) X-Authentication-Warning: castor.ifh.de: friebel owned process doing -bs Date: Fri, 16 Aug 1996 15:27:57 +0200 (METDST) From: Wolfgang Friebel To: zsh-workers@math.gatech.edu Subject: zsh 3.0.0 bug on sunos 4.3.1 in expr handling? Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=ISO-8859-1 Resent-Message-ID: <"CUA6U2.0.mi3.uU75o"@euclid> Resent-From: zsh-workers@math.gatech.edu X-Mailing-List: archive/latest/2011 X-Loop: zsh-workers@math.gatech.edu Precedence: list Resent-Sender: zsh-workers-request@math.gatech.edu Hi, I compiled the new zsh 3.0.0 under SunOS 4.1.3 using both gcc and cc. I ran into a problem, which might be a bug: The following statements are working properly if [[ $vers[3] -gt 10 && $vers[2] -eq 2 ]]; then; echo aaa; fi while these ones produce an error (see next but one line) if [[ $vers[3] -gt 10 || $vers[2] -eq 2 ]]; then; echo aaa; fi zsh: bad math expression: unbalanced stack The same statements work properly with zsh3.0.0 compiled on IRIX 5.3 and with zsh 2.5.0c under SunOS. I append the output of reporter. Best regards Wolfgang Friebel Deutsches Elektronen-Synchrotron DESY | Phone: +49 33762 77372 | Platanenallee 6 | Fax: +49 33762 77216 | D-15738 Zeuthen Germany | E-Mail: friebel@ifh.de | # START zsh saveset # uname: SunOS sunrz 4.1.3 5 sun4m # Aliases. alias which-command=whence # Key bindings. bindkey -r "^@" bindkey -r "^A" bindkey -r "^B" bindkey -r "^C" bindkey -r "^D" bindkey -r "^E" bindkey -r "^F" bindkey -r "^G" bindkey -r "^H" bindkey -r "^I" bindkey -r "^J" bindkey -r "^K" bindkey -r "^L" bindkey -r "^M" bindkey -r "^N" bindkey -r "^O" bindkey -r "^P" bindkey -r "^Q" bindkey -r "^R" bindkey -r "^S" bindkey -r "^T" bindkey -r "^U" bindkey -r "^V" bindkey -r "^W" bindkey -r "^X" bindkey -r "^Y" bindkey -r "^Z" bindkey -r "\e" bindkey -r "^_" bindkey -r "^?" bindkey -r "^X^B" bindkey -r "^X^F" bindkey -r "^X^J" bindkey -r "^X^K" bindkey -r "^X^N" bindkey -r "^X^O" bindkey -r "^X^U" bindkey -r "^X^V" bindkey -r "^X^X" bindkey -r "^X*" bindkey -r "^XG" bindkey -r "^Xg" bindkey -r "^Xr" bindkey -r "^Xs" bindkey -r "^Xu" bindkey -r "\e^D" bindkey -r "\e^G" bindkey -r "\e^H" bindkey -r "\e^I" bindkey -r "\e^J" bindkey -r "\e^L" bindkey -r "\e^M" bindkey -r "\e^_" bindkey -r "\e " bindkey -r "\e!" bindkey -r "\e\\"" bindkey -r "\e$" bindkey -r "\e'" bindkey -r "\e-" bindkey -r "\e." bindkey -r "\e0" bindkey -r "\e1" bindkey -r "\e2" bindkey -r "\e3" bindkey -r "\e4" bindkey -r "\e5" bindkey -r "\e6" bindkey -r "\e7" bindkey -r "\e8" bindkey -r "\e9" bindkey -r "\e<" bindkey -r "\e>" bindkey -r "\e?" bindkey -r "\eA" bindkey -r "\eB" bindkey -r "\eC" bindkey -r "\eD" bindkey -r "\eF" bindkey -r "\eG" bindkey -r "\eH" bindkey -r "\eL" bindkey -r "\eN" bindkey -r "\eP" bindkey -r "\eQ" bindkey -r "\eS" bindkey -r "\eT" bindkey -r "\eU" bindkey -r "\eW" bindkey -r "\e[A" bindkey -r "\e[B" bindkey -r "\e[C" bindkey -r "\e[D" bindkey -r "\e_" bindkey -r "\ea" bindkey -r "\eb" bindkey -r "\ec" bindkey -r "\ed" bindkey -r "\ef" bindkey -r "\eg" bindkey -r "\eh" bindkey -r "\el" bindkey -r "\en" bindkey -r "\ep" bindkey -r "\eq" bindkey -r "\es" bindkey -r "\et" bindkey -r "\eu" bindkey -r "\ew" bindkey -r "\ex" bindkey -r "\ey" bindkey -r "\ez" bindkey -r "\e|" bindkey -r "\e^?" bindkey "^@" set-mark-command bindkey "^A" beginning-of-line bindkey "^B" backward-char bindkey "^C" undefined-key bindkey "^D" delete-char-or-list bindkey "^E" end-of-line bindkey "^F" forward-char bindkey "^G" send-break bindkey "^H" backward-delete-char bindkey "^I" expand-or-complete bindkey "^J" accept-line bindkey "^K" kill-line bindkey "^L" clear-screen bindkey "^M" accept-line bindkey "^N" down-line-or-history bindkey "^O" accept-line-and-down-history bindkey "^P" up-line-or-history bindkey "^Q" push-line bindkey "^R" history-incremental-search-backward bindkey "^S" history-incremental-search-forward bindkey "^T" transpose-chars bindkey "^U" kill-whole-line bindkey "^V" quoted-insert bindkey "^W" backward-kill-word bindkey "^X" prefix bindkey "^Y" yank bindkey "^Z" undefined-key bindkey "\e" prefix bindkey "^_" undo bindkey "^?" backward-delete-char bindkey "^X^B" vi-match-bracket bindkey "^X^F" vi-find-next-char bindkey "^X^J" vi-join bindkey "^X^K" kill-buffer bindkey "^X^N" infer-next-history bindkey "^X^O" overwrite-mode bindkey "^X^U" undo bindkey "^X^V" vi-cmd-mode bindkey "^X^X" exchange-point-and-mark bindkey "^X*" expand-word bindkey "^XG" list-expand bindkey "^Xg" list-expand bindkey "^Xr" history-incremental-search-backward bindkey "^Xs" history-incremental-search-forward bindkey "^Xu" undo bindkey "\e^D" list-choices bindkey "\e^G" send-break bindkey "\e^H" backward-kill-word bindkey "\e^I" self-insert-unmeta bindkey "\e^J" self-insert-unmeta bindkey "\e^L" clear-screen bindkey "\e^M" self-insert-unmeta bindkey "\e^_" copy-prev-word bindkey "\e " expand-history bindkey "\e!" expand-history bindkey "\e\\"" quote-region bindkey "\e$" spell-word bindkey "\e'" quote-line bindkey "\e-" neg-argument bindkey "\e." insert-last-word bindkey "\e0" digit-argument bindkey "\e1" digit-argument bindkey "\e2" digit-argument bindkey "\e3" digit-argument bindkey "\e4" digit-argument bindkey "\e5" digit-argument bindkey "\e6" digit-argument bindkey "\e7" digit-argument bindkey "\e8" digit-argument bindkey "\e9" digit-argument bindkey "\e<" beginning-of-buffer-or-history bindkey "\e>" end-of-buffer-or-history bindkey "\e?" which-command bindkey "\eA" accept-and-hold bindkey "\eB" backward-word bindkey "\eC" capitalize-word bindkey "\eD" kill-word bindkey "\eF" forward-word bindkey "\eG" get-line bindkey "\eH" run-help bindkey "\eL" down-case-word bindkey "\eN" history-search-forward bindkey "\eP" history-search-backward bindkey "\eQ" push-line bindkey "\eS" spell-word bindkey "\eT" transpose-words bindkey "\eU" up-case-word bindkey "\eW" copy-region-as-kill bindkey "\e[A" up-line-or-history bindkey "\e[B" down-line-or-history bindkey "\e[C" forward-char bindkey "\e[D" backward-char bindkey "\e_" insert-last-word bindkey "\ea" accept-and-hold bindkey "\eb" backward-word bindkey "\ec" capitalize-word bindkey "\ed" kill-word bindkey "\ef" forward-word bindkey "\eg" get-line bindkey "\eh" run-help bindkey "\el" down-case-word bindkey "\en" history-search-forward bindkey "\ep" history-search-backward bindkey "\eq" push-line bindkey "\es" spell-word bindkey "\et" transpose-words bindkey "\eu" up-case-word bindkey "\ew" copy-region-as-kill bindkey "\ex" execute-named-cmd bindkey "\ey" yank-pop bindkey "\ez" execute-last-named-cmd bindkey "\e|" vi-goto-column bindkey "\e^?" backward-kill-word # Completions. compctl -b bindkey compctl -c builtin compctl -v export compctl -o setopt compctl -v typeset compctl -v unset compctl -o unsetopt compctl -v vared compctl -c which compctl -C -c compctl -D -f compctl -T # Undefined functions. autoload run-help # Defined functions. archie () { telnet archie.th-darmstadt.de } asis01 () { telnet asis01.cern.ch } edi () { bindkey "^J" self-insert-unmeta var="$(<${1})" vared var print -R "$var" >| ${1} } help () { run-help ${*} } ini () { eval "`/etc/local/ini.pl -b $*`" } ips103 () { xrsh ips103.desy.de } label () { print "]1;${*}" } labelx () { print "]0;${*}" } sane () { tput rmso } translate () { egrep -i "${*}" /home/r6rz/friebel/wb/wlist | sort -f } x4u1 () { xrsh x4u1.desy.de } x4u2 () { xrsh x4u2.desy.de } # Limits. limit stacksize 8MB limit descriptors 64 # Non-array variables. TERMCAP='vs|xterm|vs100|xterm terminal emulator (X window system): :cr=^M:do=^J:nl=^J:bl=^G:le=^H:ho=\E[H: :co#80:li#24:cl=\E[H\E[2J:bs:am:cm=\E[%i%d;%dH:nd=\E[C:up=\E[A: :ce=\E[K:cd=\E[J:so=\E[7m:se=\E[m:us=\E[4m:ue=\E[m: :md=\E[1m:mr=\E[7m:me=\E[m: :ku= \EOA:kd=\EOB:kr=\EOC:kl=\EOD:kb=^H: :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:ta=^I:pt:sf= :sr=\EM: :al=\E[L:dl=\E[M:ic=\E[@:dc=\E[P: :MT:ks=\E[?1h\E=:ke=\E[?1l\E>: :is=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l: :rs=\E[r\E<\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l:xn: :AL=\E[%dL:DL=\E[%dM:IC=\E[%d@:DC=\E[%dP: :ti=\E7\E[?47h:te=\E[2J\E[?47l\E8: :hs:ts=\E[?E\E[? %i%dT:fs=\E[?F:es:ds=\E[?E:' TERM='xterm' \'#\'="0" \'$\'="29668" \'?\'="0" ARGC="0" AWK="awk" BAUD="9600" BINTYPE="SunOS_4" CDPATH=".." CERN_PATH="\'\'" CERN_ROOT="\'\'" CMZPAGER="/usr/local/bin/less" COLUMNS="80" CPP="/lib/cpp" DIRSTACKSIZE="30" DISPLAY="psyche.ifh.de:0.0" EDITOR="\'emacs -nw\'" EGID="203" ENV="/etc/zshenv" ENVIRONMENT="INTERACTIVE" ERRNO="0" EUID="1505" FCEDIT="vi" FIGNORE="\'\'" FPATH="/usr/local/lib/functions" GID="203" GROUP="sysprog" HEP_ENV="/bin/zsh" HISTCHARS="\'!^#\'" HISTFILE="/home/r6rz/friebel/.history.sunrz" HISTSIZE="100" HOME="/home/r6rz/friebel" HOST="sunrz" KEYTIMEOUT="40" LESS="\'-e -i -M -w -k/usr/local/lib/less/.less\'" LESSCHARSET="latin1" LESSOPEN="\'|lesspipe.sh %s\'" LINENO="329" LINES="24" LISTMAX="100" LOGCHECK="0" LOGNAME="friebel" LPDEST="ps_rz1" MACHTYPE="sparc" MAIL="/net/mail2/friebel" MAILCHECK="60" MAILPATH="\'\'" MANPATH="/usr/sue/man:/usr/man:/usr/local/X11R5/man:/usr/local/man:/usr/local/X11R5/man" NULLCMD="cat" OLDPWD="/home/r6rz/friebel/zsh-3.0.0/Src" OPTARG="\'\'" OPTIND="1" OS="SunOS" OSTYPE="sunos4.1.3" PAGER="less" PATH="/home/r6rz/friebel/bin.SunOS_4:/home/r6rz/friebel/bin:/usr/sue/bin:/bin:/usr/bin:/usr/ucb:/etc:/usr/etc:/usr/bin/X11:/usr/local/bin/X11:/usr/local/bin:/usr/local/bin/scripts:.:/usr/local/X11R5/bin" POSTEDIT="\'\'" PPID="29266" PRINTER="ps_rz1" PROMPT="\'%S[%m]%s %~ %(#.#.>)\'" PROMPT2="\'%_> \'" PROMPT3="\'?# \'" PROMPT4="\'+ \'" PS1="\'%S[%m]%s %~ %(#.#.>)\'" PS2="\'%_> \'" PS3="\'?# \'" PS4="\'+ \'" PSVAR="\'\'" PWD="/home/r6rz/friebel/zsh-3.0.0/Util" RANDOM="11079" READNULLCMD="more" RPROMPT="\'\'" RPS1="\'\'" RUBOUT="Delete" SAVEHIST="40" SAVEPATH="/home/r6rz/friebel/bin.SunOS_4:/home/r6rz/friebel/bin:/usr/sue/bin:/bin:/usr/bin:/usr/ucb:/etc:/usr/etc:/usr/bin/X11:/usr/local/bin/X11:/usr/local/bin:/usr/local/bin/scripts:.:/usr/local/X11R5/bin" SECONDS="20" SHELL="/bin/zsh" SHLVL="2" SPROMPT="\'zsh: correct \'\'%R\'\' to \'\'%r\'\' [nyae]? \'" SYSTYPE="bsd4.3" TIMEFMT="\'%J %U user %S system %P cpu %*E total\'" TMPPREFIX="/tmp/zsh" TTY="/dev/ttypa" TTYIDLE="-1" TZ="MET-2" UID="1505" USER="friebel" USERNAME="friebel" VENDOR="sun" VISUAL="emacs" WATCH="\'\'" WATCHFMT="\'%n has %a %l from %m.\'" WINDOWID="71303181" WORDCHARS="\'*?_-.[]~=/&;!#$%^(){}<>\'" WWW_HOME="http://www.ifh.de" YP="YES" ZSH_NAME="zsh" ZSH_VERSION="3.0.0" each="__FILE__" hep_env_sh="hep_env_sh" histchars="\'!^#\'" ignoreeof="5" reporter_OSVersion="SunOS_4.1.3" reporter_junkiequotes="yes" status="0" str="\'SunOS sunrz 4.1.3 5 sun4m\'" vers="3.0.0" prompt='test%' # Array variables. argv=() '*'=() cdpath=(..) fignore=() fpath=(/usr/local/lib/functions) mailpath=() manpath=(/usr/sue/man /usr/man /usr/local/X11R5/man /usr/local/man /usr/local/X11R5/man) path=(/home/r6rz/friebel/bin.SunOS_4 /home/r6rz/friebel/bin /usr/sue/bin /bin /usr/bin /usr/ucb /etc /usr/etc /usr/bin/X11 /usr/local/bin/X11 /usr/local/bin /usr/local/bin/scripts . /usr/local/X11R5/bin) psvar=() signals=(EXIT HUP INT QUIT ILL TRAP IOT EMT FPE KILL BUS SEGV SYS PIPE ALRM TERM USR1 USR2 CLD PWR WINCH URG POLL STOP TSTP CONT TTIN TTOU VTALRM PROF XCPU XFSZ 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 RTMIN ZERR DEBUG) watch=() # Exported variables. export TERMCAP export TERM export BINTYPE export CERN_PATH export CERN_ROOT export CMZPAGER export DISPLAY export EDITOR export ENV export ENVIRONMENT export FPATH export GROUP export HEP_ENV export HOME export HOST export LESS export LESSCHARSET export LESSOPEN export LOGNAME export LPDEST export MAIL export MANPATH export OS export PAGER export PATH export PRINTER export PWD export RUBOUT export SAVEPATH export SHELL export SHLVL export SYSTYPE export TERM export TZ export USER export VISUAL export WINDOWID export WWW_HOME export YP export ignoreeof # Setopt. setopt Current option settings setopt allexport off setopt alwayslastprompt off setopt alwaystoend off setopt appendhistory on setopt autocd on setopt autolist on setopt automenu on setopt autonamedirs off setopt autoparamkeys off setopt autoparamslash off setopt autopushd on setopt autoremoveslash off setopt autoresume on setopt braceccl off setopt bsdecho off setopt cdablevars on setopt chaselinks off setopt completealiases off setopt completeinword off setopt correct off setopt correctall off setopt cshjunkiehistory off setopt cshjunkieloops off setopt cshjunkiequotes setopt cshjunkiequotes off setopt cshnullglob off setopt errexit off setopt extendedglob on setopt extendedhistory off setopt globassign off setopt globcomplete off setopt globdots on setopt globsubst off setopt histallowclobber off setopt histignoredups on setopt histignorespace on setopt histnostore on setopt histverify off setopt ignorebraces off setopt ignoreeof off setopt ksharrays off setopt kshoptionprint on setopt listambiguous off setopt listtypes on setopt localoptions off setopt login off setopt longlistjobs on setopt magicequalsubst off setopt mailwarning on setopt markdirs off setopt menucomplete off setopt monitor off setopt nobadpattern off setopt nobanghist off setopt nobeep off setopt nobgnice off setopt noclobber on setopt noequals off setopt noexec off setopt noflowcontrol off setopt nofunctionargzero off setopt noglob off setopt nohashcmds off setopt nohashdirs off setopt nohashlistall off setopt nohistbeep off setopt nohup on setopt nolistbeep off setopt nomultios off setopt nonomatch off setopt nonotify off setopt nopromptcr off setopt norcs off setopt noshortloops off setopt nounset off setopt nullglob off setopt numericglobsort off setopt overstrike off setopt pathdirs off setopt posixbuiltins off setopt printexitvalue off setopt privileged off setopt promptsubst off setopt pushdignoredups on setopt pushdminus on setopt pushdsilent on setopt pushdtohome on setopt rcexpandparam off setopt rcquotes on setopt recexact off setopt rmstarsilent off setopt shfileexpansion off setopt shglob off setopt shinstdin off setopt shoptionletters off setopt shwordsplit on setopt singlecommand off setopt singlelinezle off setopt sunkeyboardhack off setopt verbose off setopt xtrace off setopt zle off # END zsh saveset