Steffen Nurpmeso wrote in <2adea39306d7d9b64518729b2c1285b5d3efb2b5.1660144825.git.steffen@sdaoden\ .eu>: ... |Ok i am out of ideas on further tests, and it works.
And attached is the new test (not that much different). --steffen | |Der Kragenbaer, The moon bear, |der holt sich munter he cheerfully and one by one |einen nach dem anderen runter wa.ks himself off |(By Robert Gernhardt)
# make this work with (ba)sh \ command -v shopt && shopt -s expand_aliases;\ alias p=printf;alias e=echo;alias s=export s I=10 J=33 e '= BASE' e "<$(())>" e "<$(( ))>" e "<$((1))>" e "<$((0))>" e "<$((0x0))>" e "<$((0X0))>" e "<$((000))>" e "<$((000000000000001))>" e "<$((2#00000000000000000000000000000000000001))>" e "<$((0X00000000000000000000000000000000000000000001))>" e "<$((999999999999999999999999999999999999999999999))>" e "<$(( 10 ))>" e "<$((9191919191919))>" e "<$((0xD))>" e "<$((013))>" e "<$((32#VV))>" e "<$((36#ZZ))>" e "<$((36#zz))>" e "<$(( 64#zzZZ ))>" e "<$((64#ZZzz))>" e "<$((I))>" e "<$((J))>" e "<$(( I ))>" e "<$(( J ))>" e "<$(( (1) ))>" e "<$((((1))))>" e "<$(((((1)))))>" e "<$(( (J) ))>" e "<$((((J))))>" e "<$(((((J)))))>" e "<$(( ( ( ( J ) ) ) ))>" e '= UNA PLUS/MINUS' e "<$((+0))>" e "<$(( + 0 ))>" e "<$(( +1))>" e "<$((+ 1 ))>" e "<$(( + 4221 ))>" e "<$(( +0x4221 ))>" e "<$(( + 64#ZZzz ))>" e "<$(( +64#ZZzz ))>" e "<$((+ (1) ))>" e "<$((+((1))))>" e "<$((+(((1)))))>" e "<$((-0))>" e "<$(( - 0 ))>" e "<$(( -1))>" e "<$((- 1 ))>" e "<$(( - 4221 ))>" e "<$(( -0x4221 ))>" e "<$(( - 64#ZZzz ))>" e "<$(( -64#ZZzz ))>" e "<$((- (1) ))>" e "<$((-((1))))>" e "<$((-(((1)))))>" e "<$((+ -(1) ))>" e "<$((+(-(-1))))>" e "<$((+(-(-(-1)))))>" e '= UNA !' e "<$((!0))>" e "<$((! 00000000))>" e "<$((!1))>" e "<$((! 0x00001))>" e "<$((! - 0))>" e "<$((!-1))>" e '= UNA ~' e "<$((~0))>" e "<$((~ 00000000))>" e "<$((~1))>" e "<$((~ 0x00001))>" e "<$((~ 64#zz))>" e "<$((~-1))>" e "<$((~ - 1))>" e "<$((~-0))>" e "<$((~ - 0))>" e "<$((~(-0)))>" e "<$((~((- 0))))>" e '= BIN +' e "<$((0+0))>" e "<$(( 0 + 0 ))>" e "<$((0+1))>" e "<$(( 0 + 1 ))>" e "<$((1+0))>" e "<$(( 1 + 0 ))>" e "<$((1+1))>" e "<$(( 1 + 1 ))>" e "<$(( (1 + 1) ))>" e "<$(((((((-1)))) + (((-1))))))>" e "<$((1111+2222))>" e "<$((2222+1111))>" e "<$(( +0x10 + +0x11 ))>" e "<$(( -0x10 + -0x11 ))>" e "<$(( -0x10 + -0x11 ))>" e "<$(( +64#10 + -64#11 ))>" e "<$(( +0x11 + +0x10 ))>" e "<$(( -0x11 + -0x10 ))>" e "<$(( -0x11 + -0x10 ))>" e "<$(( +64#11 + -64#10 ))>" e "<$((0x8000000000000000+-1))>" e "<$((0x8000000000000000+1))>" e "<$((0x7FFFFFFFFFFFFFFF+-1))>" e "<$((0x7FFFFFFFFFFFFFFF+1))>" e "<$((0xFFFFFFFFFFFFFFFF+-1))>" e "<$((0xFFFFFFFFFFFFFFFF+1))>" e "<$((0x8000000000000000+-11))>" e "<$((0x8000000000000000+11))>" e "<$((0x7FFFFFFFFFFFFFFF+-11))>" e "<$((0x7FFFFFFFFFFFFFFF+11))>" e "<$((0xFFFFFFFFFFFFFFFF+-11))>" e "<$((0xFFFFFFFFFFFFFFFF+11))>" e '= BIN -' e "<$((0-0))>" e "<$(( 0 - 0 ))>" e "<$((0-1))>" e "<$(( 0 - 1 ))>" e "<$((1-0))>" e "<$(( 1 - 0 ))>" e "<$((1-1))>" e "<$(( 1 - 1 ))>" e "<$(( (1 - 1) ))>" e "<$(((((((+1)))) - (((+1))))))>" e "<$((1111-2222))>" e "<$((2222-1111))>" e "<$(( +0x10 - +0x11 ))>" e "<$(( -0x10 - -0x11 ))>" e "<$(( -0x10 - -0x11 ))>" e "<$(( +64#10 - -64#11 ))>" e "<$(( +0x11 - +0x10 ))>" e "<$(( -0x11 - -0x10 ))>" e "<$(( -0x11 - -0x10 ))>" e "<$(( +64#11 - -64#10 ))>" e "<$((0x8000000000000000--1))>" e "<$((0x8000000000000000-1))>" e "<$((0x7FFFFFFFFFFFFFFF--1))>" e "<$((0x7FFFFFFFFFFFFFFF-1))>" e "<$((0xFFFFFFFFFFFFFFFF--1))>" e "<$((0xFFFFFFFFFFFFFFFF-1))>" e "<$((0x8000000000000000--11))>" e "<$((0x8000000000000000-11))>" e "<$((0x7FFFFFFFFFFFFFFF--11))>" e "<$((0x7FFFFFFFFFFFFFFF-11))>" e "<$((0xFFFFFFFFFFFFFFFF--11))>" e "<$((0xFFFFFFFFFFFFFFFF-11))>" e '= BIN *' e "<$((0*0))>" e "<$(( 0 * 0 ))>" e "<$((0*1))>" e "<$(( 0 * 1 ))>" e "<$((1*0))>" e "<$(( 1 * 0 ))>" e "<$((1*1))>" e "<$(( 1 * 1 ))>" e "<$((1111*2222))>" e "<$((2222*1111))>" e "<$(( +0x10 * +0x11 ))>" e "<$(( -0x10 * -0x11 ))>" e "<$(( -0x10 * -0x11 ))>" e "<$(( +64#10 * -64#11 ))>" e "<$(( +0x11 * +0x10 ))>" e "<$(( -0x11 * -0x10 ))>" e "<$(( -0x11 * -0x10 ))>" e "<$(( +64#11 * -64#10 ))>" e "<$((0x8000000000000000*-1))>" e "<$((0x8000000000000000*1))>" e "<$((0x7FFFFFFFFFFFFFFF*-1))>" e "<$((0x7FFFFFFFFFFFFFFF*1))>" e "<$((0xFFFFFFFFFFFFFFFF*-1))>" e "<$((0xFFFFFFFFFFFFFFFF*1))>" e "<$((0x8000000000000000*-11))>" e "<$((0x8000000000000000*11))>" e "<$((0x7FFFFFFFFFFFFFFF*-11))>" e "<$((0x7FFFFFFFFFFFFFFF*11))>" e "<$((0xFFFFFFFFFFFFFFFF*-11))>" e "<$((0xFFFFFFFFFFFFFFFF*11))>" e '= BIN /' e "<$(( 0 / 1 ))>" e "<$((1/1))>" e "<$(( 1 / 1 ))>" e "<$((1111/2222))>" e "<$((2222/1111))>" e "<$(( +0x10 / +0x11 ))>" e "<$(( -0x10 / -0x11 ))>" e "<$(( -0x10 / -0x11 ))>" e "<$(( +64#10 / -64#11 ))>" e "<$(( +0x11 / +0x10 ))>" e "<$(( -0x11 / -0x10 ))>" e "<$(( -0x11 / -0x10 ))>" e "<$(( +64#11 / -64#10 ))>" e "<$((2/1))>" e "<$((3/1))>" e "<$((3/2))>" e "<$((3/3))>" e "<$((3/4))>" e "<$((-1/4))>" e "<$((0x8000000000000000/-1))>" e "<$((0x8000000000000000/1))>" e "<$((0x7FFFFFFFFFFFFFFF/-1))>" e "<$((0x7FFFFFFFFFFFFFFF/1))>" e "<$((0xFFFFFFFFFFFFFFFF/-1))>" e "<$((0xFFFFFFFFFFFFFFFF/1))>" e "<$((0x8000000000000000/-11))>" e "<$((0x8000000000000000/11))>" e "<$((0x7FFFFFFFFFFFFFFF/-11))>" e "<$((0x7FFFFFFFFFFFFFFF/11))>" e "<$((0xFFFFFFFFFFFFFFFF/-11))>" e "<$((0xFFFFFFFFFFFFFFFF/11))>" e '= BIN %' e "<$(( 0 % 1 ))>" e "<$((1%1))>" e "<$(( 1 % 1 ))>" e "<$((1111%2222))>" e "<$((2222%1111))>" e "<$(( +0x10 % +0x11 ))>" e "<$(( -0x10 % -0x11 ))>" e "<$(( -0x10 % -0x11 ))>" e "<$(( +64#10 % -64#11 ))>" e "<$(( +0x11 % +0x10 ))>" e "<$(( -0x11 % -0x10 ))>" e "<$(( -0x11 % -0x10 ))>" e "<$(( +64#11 % -64#10 ))>" e "<$((2%1))>" e "<$((3%1))>" e "<$((3%2))>" e "<$((3%3))>" e "<$((3%4))>" e "<$((-1%4))>" e "<$((0x8000000000000000%-1))>" e "<$((0x8000000000000000%1))>" e "<$((0x7FFFFFFFFFFFFFFF%-1))>" e "<$((0x7FFFFFFFFFFFFFFF%1))>" e "<$((0xFFFFFFFFFFFFFFFF%-1))>" e "<$((0xFFFFFFFFFFFFFFFF%1))>" e "<$((0x8000000000000000%-11))>" e "<$((0x8000000000000000%11))>" e "<$((0x7FFFFFFFFFFFFFFF%-11))>" e "<$((0x7FFFFFFFFFFFFFFF%11))>" e "<$((0xFFFFFFFFFFFFFFFF%-11))>" e "<$((0xFFFFFFFFFFFFFFFF%11))>" e '= BIN <<' e "<$((0<<0))>" e "<$(( 0 << 0 ))>" e "<$((0<<1))>" e "<$(( 0 << 1 ))>" e "<$((1<<0))>" e "<$(( 1 << 0 ))>" e "<$((1<<1))>" e "<$(( 1 << 1 ))>" e "<$((1111<<2222))>" e "<$((2222<<1111))>" e "<$(( +0x10 << +0x11 ))>" e "<$(( -0x10 << -0x11 ))>" e "<$(( -0x10 << -0x11 ))>" e "<$(( +64#10 << -64#11 ))>" e "<$(( +0x11 << +0x10 ))>" e "<$(( -0x11 << -0x10 ))>" e "<$(( -0x11 << -0x10 ))>" e "<$(( +64#11 << -64#10 ))>" e "<$(( +64 << +1024 ))>" e "<$((0x8000000000000000<<-1))>" e "<$((0x8000000000000000<<1))>" e "<$((0x7FFFFFFFFFFFFFFF<<-1))>" e "<$((0x7FFFFFFFFFFFFFFF<<1))>" e "<$((0xFFFFFFFFFFFFFFFF<<-1))>" e "<$((0xFFFFFFFFFFFFFFFF<<1))>" e "<$((0x8000000000000000<<-11))>" e "<$((0x8000000000000000<<11))>" e "<$((0x7FFFFFFFFFFFFFFF<<-11))>" e "<$((0x7FFFFFFFFFFFFFFF<<11))>" e "<$((0xFFFFFFFFFFFFFFFF<<-11))>" e "<$((0xFFFFFFFFFFFFFFFF<<11))>" e '= BIN >>' e "<$((0>>0))>" e "<$(( 0 >> 0 ))>" e "<$((0>>1))>" e "<$(( 0 >> 1 ))>" e "<$((1>>0))>" e "<$(( 1 >> 0 ))>" e "<$((1>>1))>" e "<$(( 1 >> 1 ))>" e "<$((1>>>1))>" e "<$(( 1 >>> 1 ))>" e "<$((1111>>2222))>" e "<$((2222>>1111))>" e "<$((1111>>>2222))>" e "<$((2222>>>1111))>" e "<$(( +0x10 >> +0x11 ))>" e "<$(( -0x10 >> -0x11 ))>" e "<$(( -0x10 >> -0x11 ))>" e "<$(( -0x10 >>> -0x11 ))>" e "<$(( +64#10 >> -64#11 ))>" e "<$(( +0x11 >> +0x10 ))>" e "<$(( -0x11 >> -0x10 ))>" e "<$(( -0x11 >> -0x10 ))>" e "<$(( +64#11 >> -64#10 ))>" e "<$(( +64 >> +1024 ))>" e "<$((0x8000000000000000>>-1))>" e "<$((0x8000000000000000>>1))>" e "<$((0x7FFFFFFFFFFFFFFF>>-1))>" e "<$((0x7FFFFFFFFFFFFFFF>>1))>" e "<$((0xFFFFFFFFFFFFFFFF>>-1))>" e "<$((0xFFFFFFFFFFFFFFFF>>1))>" e "<$((0x8000000000000000>>-11))>" e "<$((0x8000000000000000>>11))>" e "<$((0x7FFFFFFFFFFFFFFF>>-11))>" e "<$((0x7FFFFFFFFFFFFFFF>>11))>" e "<$((0xFFFFFFFFFFFFFFFF>>-11))>" e "<$((0xFFFFFFFFFFFFFFFF>>11))>" e "<$((0xFFFFFFFFFFFFFFFF>>>11))>" e '= BIN **' e "<$((0**1))>" e "<$((2**1))>" e "<$((2**2))>" e "<$((2**3))>" e "<$((2**4))>" e "<$((10**4))>" e "<$((10**10))>" e "<$((10**5+5))>" e "<$((10**(5+5)))>" e '= LOG OR' e "<$((0||0))>" e "<$(( 000 || 0X0 ))>" e "<$((01 || 64#1))>" e "<$((01 || 64#1))>" e "<$((0x1234 || 4660))>" e "<$((0x1234 || 011064))>" s I=33 J=33;e "<$((I||J))>" s I=33 J=33;e "<$(( I || J ))>" e "<$((0||1))>" e "<$((0||0000000000000000000000001))>" e "<$((1||2))>" e "<$((0x1234 || 04660))>" e "<$((0x1234 || 0x11064))>" s I=10 J=33;e "<$((I||J))>" s I=-10 J=-33;e "<$((I||J))>" s I=-33 J=-33;e "<$((I||J))>" s I=0 J=-33;e "<$((I||J))>" s I=33 J=0;e "<$((I||J))>" e '= LOG AND' e "<$((0&&0))>" e "<$(( 000 && 0X0 ))>" e "<$((01 && 64#1))>" e "<$((01 && 64#1))>" e "<$((0x1234 && 4660))>" e "<$((0x1234 && 011064))>" s I=33 J=33;e "<$((I&&J))>" s I=33 J=33;e "<$(( I && J ))>" e "<$((0&&1))>" e "<$((0&&0000000000000000000000001))>" e "<$((1&&2))>" e "<$((0x1234 && 04660))>" e "<$((0x1234 && 0x11064))>" s I=10 J=33;e "<$((I&&J))>" s I=-10 J=-33;e "<$((I&&J))>" s I=-33 J=-33;e "<$((I&&J))>" s I=0 J=-33;e "<$((I&&J))>" s I=33 J=0;e "<$((I&&J))>" e '= BIN BIT_OR' e "<$((0|0))>" e "<$(( 0 | 0 ))>" e "<$((0|1))>" e "<$(( 0 | 1 ))>" e "<$((1|0))>" e "<$(( 1 | 0 ))>" e "<$((1|1))>" e "<$(( 1 | 1 ))>" e "<$((1111|2222))>" e "<$((2222|1111))>" e "<$(( +0x10 | +0x11 ))>" e "<$(( -0x10 | -0x11 ))>" e "<$(( -0x10 | -0x11 ))>" e "<$(( +64#10 | -64#11 ))>" e "<$(( +0x11 | +0x10 ))>" e "<$(( -0x11 | -0x10 ))>" e "<$(( -0x11 | -0x10 ))>" e "<$(( +64#11 | -64#10 ))>" e "<$(( +64 | +1024 ))>" e "<$((0x8000000000000000|-1))>" e "<$((0x8000000000000000|1))>" e "<$((0x7FFFFFFFFFFFFFFF|-1))>" e "<$((0x7FFFFFFFFFFFFFFF|1))>" e "<$((0xFFFFFFFFFFFFFFFF|-1))>" e "<$((0xFFFFFFFFFFFFFFFF|1))>" e "<$((0x8000000000000000|-11))>" e "<$((0x8000000000000000|11))>" e "<$((0x7FFFFFFFFFFFFFFF|-11))>" e "<$((0x7FFFFFFFFFFFFFFF|11))>" e "<$((0xFFFFFFFFFFFFFFFF|-11))>" e "<$((0xFFFFFFFFFFFFFFFF|11))>" e '= BIN BIT_XOR' e "<$((0^0))>" e "<$(( 0 ^ 0 ))>" e "<$((0^1))>" e "<$(( 0 ^ 1 ))>" e "<$((1^0))>" e "<$(( 1 ^ 0 ))>" e "<$((1^1))>" e "<$(( 1 ^ 1 ))>" e "<$((1111^2222))>" e "<$((2222^1111))>" e "<$(( +0x10 ^ +0x11 ))>" e "<$(( -0x10 ^ -0x11 ))>" e "<$(( -0x10 ^ -0x11 ))>" e "<$(( +64#10 ^ -64#11 ))>" e "<$(( +0x11 ^ +0x10 ))>" e "<$(( -0x11 ^ -0x10 ))>" e "<$(( -0x11 ^ -0x10 ))>" e "<$(( +64#11 ^ -64#10 ))>" e "<$(( +64 ^ +1024 ))>" e "<$((0x8000000000000000^-1))>" e "<$((0x8000000000000000^1))>" e "<$((0x7FFFFFFFFFFFFFFF^-1))>" e "<$((0x7FFFFFFFFFFFFFFF^1))>" e "<$((0xFFFFFFFFFFFFFFFF^-1))>" e "<$((0xFFFFFFFFFFFFFFFF^1))>" e "<$((0x8000000000000000^-11))>" e "<$((0x8000000000000000^11))>" e "<$((0x7FFFFFFFFFFFFFFF^-11))>" e "<$((0x7FFFFFFFFFFFFFFF^11))>" e "<$((0xFFFFFFFFFFFFFFFF^-11))>" e "<$((0xFFFFFFFFFFFFFFFF^11))>" e '= BIN BIT_AND' e "<$((0&0))>" e "<$(( 0 & 0 ))>" e "<$((0&1))>" e "<$(( 0 & 1 ))>" e "<$((1&0))>" e "<$(( 1 & 0 ))>" e "<$((1&1))>" e "<$(( 1 & 1 ))>" e "<$((1111&2222))>" e "<$((2222&1111))>" e "<$(( +0x10 & +0x11 ))>" e "<$(( -0x10 & -0x11 ))>" e "<$(( -0x10 & -0x11 ))>" e "<$(( +64#10 & -64#11 ))>" e "<$(( +0x11 & +0x10 ))>" e "<$(( -0x11 & -0x10 ))>" e "<$(( -0x11 & -0x10 ))>" e "<$(( +64#11 & -64#10 ))>" e "<$(( +64 & +1024 ))>" e "<$((0x8000000000000000&-1))>" e "<$((0x8000000000000000&1))>" e "<$((0x7FFFFFFFFFFFFFFF&-1))>" e "<$((0x7FFFFFFFFFFFFFFF&1))>" e "<$((0xFFFFFFFFFFFFFFFF&-1))>" e "<$((0xFFFFFFFFFFFFFFFF&1))>" e "<$((0x8000000000000000&-11))>" e "<$((0x8000000000000000&11))>" e "<$((0x7FFFFFFFFFFFFFFF&-11))>" e "<$((0x7FFFFFFFFFFFFFFF&11))>" e "<$((0xFFFFFFFFFFFFFFFF&-11))>" e "<$((0xFFFFFFFFFFFFFFFF&11))>" e '= BIN EQ' e "<$((0==0))>" e "<$(( 000 == 0X0 ))>" e "<$((01 == 64#1))>" e "<$((01 == 64#1))>" e "<$((0x1234 == 4660))>" e "<$((0x1234 == 011064))>" s I=33 J=33;e "<$((I==J))>" s I=33 J=33;e "<$(( I == J ))>" e "<$((0==1))>" e "<$((0==0000000000000000000000001))>" e "<$((1==2))>" e "<$((0x1234 == 04660))>" e "<$((0x1234 == 0x11064))>" s I=10 J=33;e "<$((I==J))>" s I=-10 J=-33;e "<$((I==J))>" s I=-33 J=-33;e "<$((I==J))>" e '= BIN NE' e "<$((0!=0))>" e "<$(( 000 != 0X0 ))>" e "<$((01 != 64#1))>" e "<$((01 != 64#1))>" e "<$((0x1234 != 4660))>" e "<$((0x1234 != 011064))>" s I=33 J=33;e "<$((I!=J))>" s I=33 J=33;e "<$(( I != J ))>" e "<$((0!=1))>" e "<$((0!=0000000000000000000000001))>" e "<$((1!=2))>" e "<$((0x1234 != 04660))>" e "<$((0x1234 != 0x11064))>" s I=10 J=33;e "<$((I!=J))>" s I=-10 J=-33;e "<$((I!=J))>" s I=-33 J=-33;e "<$((I!=J))>" e '= BIN LE' e "<$((0<=0))>" e "<$(( 000 <= 0X0 ))>" e "<$((01 <= 64#1))>" e "<$((01 <= 64#2))>" e "<$((02 <= 64#1))>" e "<$((0x1234 <= 4660))>" e "<$((0x1234 <= 011064))>" e "<$((0x1233 <= 011064))>" e "<$((0x1235 <= 011064))>" s I=33 J=33;e "<$((I<=J))>" s I=33 J=33;e "<$((I<=J))>" s I=32 J=33;e "<$((I<=J))>" s I=34 J=33;e "<$((I<=J))>" s I=-33 J=-33;e "<$((I<=J))>" s I=-33 J=-33;e "<$((I<=J))>" s I=-32 J=-33;e "<$((I<=J))>" s I=-34 J=-33;e "<$((I<=J))>" e '= BIN GE' e "<$((0>=0))>" e "<$(( 000 >= 0X0 ))>" e "<$((01 >= 64#1))>" e "<$((01 >= 64#2))>" e "<$((02 >= 64#1))>" e "<$((0x1234 >= 4660))>" e "<$((0x1234 >= 011064))>" e "<$((0x1233 >= 011064))>" e "<$((0x1235 >= 011064))>" s I=33 J=33;e "<$((I>=J))>" s I=33 J=33;e "<$((I>=J))>" s I=32 J=33;e "<$((I>=J))>" s I=34 J=33;e "<$((I>=J))>" s I=-33 J=-33;e "<$((I>=J))>" s I=-33 J=-33;e "<$((I>=J))>" s I=-32 J=-33;e "<$((I>=J))>" s I=-34 J=-33;e "<$((I>=J))>" e '= BIN LT' e "<$((0<0))>" e "<$(( 000 < 0X0 ))>" e "<$((01 < 64#1))>" e "<$((01 < 64#2))>" e "<$((02 < 64#1))>" e "<$((0x1234 < 4660))>" e "<$((0x1234 < 011064))>" e "<$((0x1233 < 011064))>" e "<$((0x1235 < 011064))>" s I=33 J=33;e "<$((I<J))>" s I=33 J=33;e "<$((I<J))>" s I=32 J=33;e "<$((I<J))>" s I=34 J=33;e "<$((I<J))>" s I=-33 J=-33;e "<$((I<J))>" s I=-33 J=-33;e "<$((I<J))>" s I=-32 J=-33;e "<$((I<J))>" s I=-34 J=-33;e "<$((I<J))>" e '= BIN GT' e "<$((0>0))>" e "<$(( 000 > 0X0 ))>" e "<$((01 > 64#1))>" e "<$((01 > 64#2))>" e "<$((02 > 64#1))>" e "<$((0x1234 > 4660))>" e "<$((0x1234 > 011064))>" e "<$((0x1233 > 011064))>" e "<$((0x1235 > 011064))>" s I=33 J=33;e "<$((I>J))>" s I=33 J=33;e "<$((I>J))>" s I=32 J=33;e "<$((I>J))>" s I=34 J=33;e "<$((I>J))>" s I=-33 J=-33;e "<$((I>J))>" s I=-33 J=-33;e "<$((I>J))>" s I=-32 J=-33;e "<$((I>J))>" s I=-34 J=-33;e "<$((I>J))>" # # COMMA below e '= PRECEDENCE I' e "<$(( 1 + 2 + 3 ))>" e "<$(( 1 - 2 + 3 ))>" e "<$(( 3 - 2 - 1 ))>" e "<$(( 3 - 2 + 1 ))>" e "<$(( - 2 + 1 ))>" e "<$(( 2 + -1 ))>" e "<$(( ! 2 + 1 ))>" e "<$(( 2 + !1 ))>" e "<$(( 3 * 2 + 2 ))>" e "<$(( 3 + 2 * 2 ))>" e "<$(( 3 * 2 * 2 ))>" e "<$(( 9 / 3 + 2 ))>" e "<$(( 9 + 3 / 2 ))>" e "<$(( 9 / 3 / 2 ))>" e "<$(( 9 << 1 + 2 ))>" e "<$(( 9 + 3 << 2 ))>" e "<$(( 9 << 3 << 2 ))>" e "<$(( 9 >> 1 + 2 ))>" e "<$(( 9 + 3 >> 2 ))>" e "<$(( 19 >> 3 >> 1 ))>" e "<$(( 19 >> 3 << 1 ))>" e "<$(( 19 << 3 >> 1 ))>" e "<$(( 2 + 3 < 3 * 2 ))>" e "<$(( 2 << 3 >= 3 << 2 ))>" e "<$(( 0xfD & 0xF == 0xF ))>" e "<$((0xfD&0xF==0xF))>" e "<$(( 3 * 7 , 2 << 8 , 9 - 7 ))>" e "<$((3*7,2<<8,9-7))>" e '= PARENS' e "<$(((1 + 2) + 3))>" e "<$(((1+2)+3))>" e "<$((1 - (2 + 3)))>" e "<$((1-(2+3)))>" e "<$((3 - (2 - 1)))>" e "<$((3-(2-1)))>" e "<$((3 - ( 2 + 1 )))>" e "<$((3-(2+1)))>" e "<$((- (2 + 1)))>" e "<$((-(2+1)))>" e "<$((! (2 + 1)))>" e "<$((!(2+1)))>" e "<$((3 * (2 + 2)))>" e "<$((3*(2+2)))>" e "<$(((3 + 2) * 2))>" e "<$(((3+2)*2))>" e "<$((3 * (2 * 2)))>" e "<$((3*(2*8)))>" e "<$((9 / (3 + 2)))>" e "<$((9/(3+2)))>" e "<$((( 9 + 3 ) / 2))>" e "<$(((9+3)/2))>" e "<$((9 / ( 3 / 2 )))>" e "<$((9/(3/2)))>" e "<$((( 9 << 1 ) + 2))>" e "<$(((9<<1)+2))>" e "<$((9 + (3 << 2)))>" e "<$((9+(3<<2)))>" e "<$((9 << (3 << 2)))>" e "<$((9<<(3<<2)))>" e "<$(((9 >> 1) + 2))>" e "<$(((9>>1)+2))>" e "<$((9 + (3 >> 2)))>" e "<$((9+(3>>2)))>" e "<$((19 >> (3 >> 1)))>" e "<$((19>>(3>>1)))>" e "<$((19 >> (3 << 1)))>" e "<$((19>>(3<<1)))>" e "<$((19 << (3 >> 1)))>" e "<$((19<<(3>>1)))>" e "<$((2 + (3 < 3) * 2))>" e "<$((2+(3<3)*2))>" e "<$((2 << ((3 >= 3) << 2)))>" e "<$((2<<((3>=3)<<2)))>" e "<$(((0xfD & 0xF) == 0xF))>" e "<$(((0xfD&0xF)==0xF))>" e "<$((3 * (7 , 2) << (8 , 9 - 7)))>" e "<$((3*(7,2)<<(8,9-7)))>" # # COND BELOW e '= ASSIGN I' unset I;p "<$(( I = 3 ))>";e "<$I>" unset I;p "<$((I=3))>";e "<$I>" s I=10;p "<$((I=3))>";e "<$I>" s I=10;p "<$((I+=1))>";e "<$I>" s I=10;p "<$((I-=1))>";e "<$I>" s I=10;p "<$((I*=1))>";e "<$I>" s I=10;p "<$((I*=2))>";e "<$I>" s I=10;p "<$((I/=1))>";e "<$I>" s I=10;p "<$((I/=2))>";e "<$I>" s I=10;p "<$((I%=1))>";e "<$I>" s I=10;p "<$((I%=2))>";e "<$I>" s I=10;p "<$((I**=1))>";e "<$I>" s I=10;p "<$((I**=2))>";e "<$I>" s I=10;p "<$((I**=1+1))>";e "<$I>" s I=10;p "<$((I|=1))>";e "<$I>" s I=10;p "<$((I^=1))>";e "<$I>" ; p "<$((I^=1))>";e "<$I>" s I=10;p "<$((I&=2))>";e "<$I>" s I=10;p "<$((I>>=1))>";e "<$I>" s I=10;p "<$((I<<=1))>";e "<$I>" s I=-1;p "<$((I>>>=1))>";e "<$I>" e '= ASSIGN II' s I=2;p "<$(((I+=1)-1))>";e "<$I>" s I=4;p "<$(((I-=1)+1))>";e "<$I>" s I=0 J=0;p "<$(((I=5)*(J=7)+1))>";e "<$I><$J>" s I=99 J=17;p "<$(((I+=1)*(J-=2)+1))>";e "<$I><$J>" s I=10;p "<$((I=2,I|=1))>";e "<$I>" s I=0 J=0 Y=0 Z=0;p "<$((I=1,J=2,Y=3,Z=4,Z+=I+J+Y))>";e "<$I><$J><$Y><$Z>" e '= POSTFIX' s I=1;p "<$((I++))>";e "<$I>" s I=1 J=0;p "<$((J=I++))>";e "<$I><$J>" s I=1 J=10;p "<$((J++*I++))>";e "<$I><$J>" s I=1 J=10;p "<$(((J++)*(I++)))>";e "<$I><$J>" s I=1;p "<$((I--))>";e "<$I>" s I=1 J=0;p "<$((J=I--))>";e "<$I><$J>" s I=1 J=10;p "<$((J--*I--))>";e "<$I><$J>" s I=1 J=10;p "<$(((J--)*(I--)))>";e "<$I><$J>" e '= PREFIX' s I=1;p "<$((++I))>";e "<$I>" s I=1 J=0;p "<$((J=++I))>";e "<$I><$J>" s I=1 J=10;p "<$((++J*++I))>";e "<$I><$J>" s I=1 J=10;p "<$((++(J)*++(I)))>";e "<$I><$J>" s I=1 J=10;p "<$(((++J)*(++I)))>";e "<$I><$J>" s I=1;p "<$((--I))>";e "<$I>" s I=1 J=0;p "<$((J=--I))>";e "<$I><$J>" s I=2 J=10;p "<$((--J*--I))>";e "<$I><$J>" s I=1 J=10;p "<$((--(J)*--(I)))>";e "<$I><$J>" s I=1 J=10;p "<$(((--J)*(--I)))>";e "<$I><$J>" e '= VAR RECUR' s I='1 + 1';p "<$((I))>";e "<$I>" s I='1 + 1';p "<$((+I))>";e "<$I>" s I='1 + 1';p "<$((++I))>";e "<$I>" s I='1 + 1';p "<$((I++))>";e "<$I>" s I='1 + 1';p "<$((1+I))>";e "<$I>" s I='1 + 1 * 2';p "<$((I+1))>";e "<$I>" s I='(1 + 1) * 2';p "<$((I+1))>";e "<$I>" s I='1 + 1' J='3 / 2';p "<$((I=I+J))>";e "<$I><$J>" s I='1 + 1';p "<$((I=I))>";e "<$I>" s I='1 + 1';p "<$((I=+I))>";e "<$I>" s I='1 + 1';p "<$((I=1+I))>";e "<$I>" s I='1 + 1 * 2';p "<$((I=I+1))>";e "<$I>" s I='(1 + 1) * 2';p "<$((I=I+1))>";e "<$I>" s I='1 + 1' J='3 / 2';p "<$((I+=I+J))>";e "<$I><$J>" e '= COMMA' e "<$(( 1 , 2 ))>" e "<$(( 1 , 2 , 3 ))>" e "<$(( 1 , 2 , 3 , 4 ))>" e "<$((1,2,3,4))>" s I='1 + 1';p "<$(( I=10 , I+=I, I=I**2, I/=3 ))>";e "<$I>" s I1=I2=10 I2=3; p "<$((I1,I2))>"; e "<$I1><$I2>" e '= COND ' e "<$(( +0 ? 2 : 3 ))>" e "<$((-0?2:3))>" e "<$(( +1 ? 2 : 3 ))>" e "<$(( 1-1 ? 2 : 3 ))>" e "<$(( 1-0 ? 2 : 3 ))>" e "<$((-1?2:3))>" e "<$(( 0x1234 ? 111 : 222 ))>" e "<$((1**2 ? 5 : 7))>" e "<$((0**2 ? 5 : 7))>" e "<$((0**2>=0?5:7))>" e "<$((-1<=0**2?5:7))>" e "<$((1<=0**2?5:7))>" e "<$((1>2||1*0?5:7))>" e "<$((1>2&&1*0?5:7))>" e "<$((1<2&&1*0?5:7))>" e "<$((1<2&&1*0+1?5:7))>" e '-- COND .2' e "<$(( 1 < 2 ? -1 : 1 > 2 ? 1 : 0 ))>" e "<$((1 < 1 ? -1 : 1 > 1 ? 1 : 0))>" e "<$((2<1?-1:2>1?1:0))>" e "<$((4<5 ? 1 : 32))>" e "<$((4>5 ? 1 : 32))>" e "<$((4>(2+3) ? 1 : 32))>" e "<$((4<(2+3) ? 1 : 32))>" e "<$(((2+2)<(2+3) ? 1 : 32))>" e "<$(((2+2)>(2+3) ? 1 : 32))>" ## grouping protects precedence in : parts (syntax error tests below) e '-- COND .3' e "<$((1-1 < 1 ? 2,4 : 1,3))>" e "<$((0<1?2,4:(1,3)))>" e "<$((0,1,2,0?2,4:1,3))>" e "<$((0,1,2,1?2,4:1,3))>" e "<$((0,1,2,0?2,4:(1,3)))>" e "<$((0,1,2,1?2,4:(1,3)))>" e "<$((0,1,2,0?(2,4):1,3))>" e "<$((0,1,2,1?(2,4):1,3))>" e "<$((0,1,2,0?(2,4):(1,3)))>" e "<$((0,1,2,1?(2,4):(1,3)))>" e "<$((0?2:((0,3)?1:4)))>" e "<$((1?2:3,0?1:4))>" e "<$((1?2:3,0?1:4?5:6))>" e "<$((1?2:(3,0)?1:4?5:6))>" e "<$((1?2:3,0?4,5:5,6?7,8:9,10))>" e "<$((1?2:(3,0)?4,5:5,6?7,8:9,10))>" e "<$((1?2:(3,0)?(4,5):5,6?7,8:9,10))>" e "<$((1?2:(3,0)?(4,5):(5,6)?7,8:9,10))>" e "<$((1?2:(3,0)?(4,5):(5,6)?(7,8):9,10))>" e "<$((1?2:(3,0)?(4,5):(5,6)?(7,8):(9,10)))>" e "<$((1?2:3,1?4,5:5,6?7,8:9,10))>" e "<$((1?2:(3,1)?4,5:5,6?7,8:9,10))>" e "<$((1?2:(3,1)?(4,5):5,6?7,8:9,10))>" e "<$((1?2:(3,1)?(4,5):(5,6)?7,8:9,10))>" e "<$((1?2:(3,1)?(4,5):(5,6)?(7,8):9,10))>" e "<$((1?2:(3,1)?(4,5):(5,6)?(7,8):(9,10)))>" e "<$((0?2:(3,1)?(4,5):(5,6)?(7,8):(9,10)))>" e "<$((0?2:(3,1)?4,5:(5,6)?7,8:(9,10)))>" e "<$((0?2:(3,0)?(4,5):(5,6)?(7,8):(9,10)))>" e "<$((0?2:(3,0)?4,5:(5,6)?7,8:(9,10)))>" e "<$((0?2:(3,0)?(4,5):(5,0)?(7,8):(9,10)))>" e "<$((0?2:(3,0)?4,5:(5,0)?7,8:(9,10)))>" e "<$((0?2:3,0?4,5:(5,0)?7,8:(9,10)))>" e "<$((0?2:(3,0)?4,5:5,0?7,8:(9,10)))>" e "<$((0?2:(3,0)?4,5:(5,0)?7,8:9,10))>" e '-- COND .4' e "<$((1?2?3?4?5:6:7:8:9))>" e "<$((1?2?3?0?5:6:7:8:9))>" e "<$((1?2?0?0?5:6:7:8:9))>" e "<$((1?0?0?0?5:6:7:8:9))>" e "<$((0?0?0?0?5:6:7:8:9))>" e "<$((0?3+4?10:11:5+6?12:13))>" e "<$((1?3+4?10:11:5+6?12:13))>" e "<$((0?(3+4)?(10):(11):((5+6)?12:13)))>" e "<$((1?(3+4)?(10):(11):((5+6)?12:13)))>" e '-- COND .5' e "<$((0?3+4?10:11?20+1:22*1:5+6?12:13))>" e "<$((1?3+4?10:11?20+1:22*1:5+6?12:13))>" e "<$((0?(3+4)?(10):(11)?(20+1):(22*1):((5+6)?12:13)))>" e "<$((1?(3+4)?(10):(11)?(20+1):(22*1):((5+6)?12:13)))>" e '-- COND .6' e "<$((0?3+4?9:11?20+1:22*1:5+6?12:13))>" e "<$((1?3+4?9:11?20+1:22*1:5+6?12:13))>" e "<$((0?10+11?20+1?22*1?23**1:24**1:25/1?26%27:56>>1:-1:-2))>" e "<$((1?0?20+1?22*1?23**1:24**1:25/1?26%27:56>>1:-1:-2))>" e "<$((1?10?20+1?22*1?23**1:24**1:25/1?26%27:56>>1:-1:-2))>" e "<$((1?10?0?22*1?23**1:24**1:25/1?26%27:56>>1:-1:-2))>" e "<$((1?10?20?0?23**1:24**1:25/1?26%27:56>>1:-1:-2))>" e "<$((1?10?20?22*1?0:24**1:25/1?26%27:56>>1:-1:-2))>" e "<$((1?10?20?22*1?23**1:0:25/1?26%27:56>>1:-1:-2))>" e "<$((1?10?20?22*1?23**1:24**1:0?26%27:56>>1:-1:-2))>" e "<$((1?10?20?22*1?23**1:24**1:25/1?0:56>>1:-1:-2))>" e '-- COND .7' s I1=2 I2=3 I3=4 I4=5;\ p "<$(( (I1 < I2) ? (I2 < I3) ? I3 *= I3 : (I2 *= I2) : (I1 *= I1)))>";\ e "<$I1><$I2><$I3><$I4>" s I1=2 I2=3 I3=4 I4=5;\ p "<$(( (I1 < I2) ? ((I2 < I3) ? I3 *= I3 : (I2 *= I2)) : (I1 *= I1)))>";\ e "<$I1><$I2><$I3><$I4>" s I1=2 I2=3 I3=4 I4=5;\ p "<$((((I1<I2)?((I2<I3)?(I3*=I3):(I2*=I2)):(I1*=I1))))>";\ e "<$I1><$I2><$I3><$I4>" s I1=2 I2=3 I3=4 I4=5;\ p "<$(((I1<I2)?(I2<I3)?(I3<I4)?I4*=I4:(I3*=I3):(I2*=I2):(I1*=I1)))>";\ e "<$I1><$I2><$I3><$I4><$I5>" # only first s I1=2 I2=3 I3=4 I4=5;\ p "<$(( (I1 < I2) ? (I2 > I3) ? I3 *= I3 : (I2 *= I2) : (I1 *= I1)))>";\ e "<$I1><$I2><$I3><$I4>" s I1=2 I2=3 I3=4 I4=5;\ p "<$(((I1<I2)?(I2>I3)?I3*=I3:(I2*=I2):(I1*=I1)))>";\ e "<$I1><$I2><$I3><$I4>" s I1=2 I2=3 I3=4 I4=5;\ p "<$(( (I1 < I2) ? ((I2 > I3) ? I3 *= I3 : (I2 *= I2)) : (I1 *= I1)))>";\ e "<$I1><$I2><$I3><$I4>" s I1=2 I2=3 I3=4 I4=5;\ p "<$(( ((I1 < I2) ? ((I2 > I3) ? (I3 *= I3):(I2 *= I2)):(I1 *= I1))))>";\ e "<$I1><$I2><$I3><$I4>" s I1=2 I2=3 I3=4 I4=5;\ p "<$(((I1<I2)?(I2>I3)?(I3>I4)?I4*=I4:(I3*=I3):(I2*=I2):(I1*=I1)))>";\ e "<$I1><$I2><$I3><$I4>" # last not etc. s I1=2 I2=3 I3=4 I4=5;\ p "<$(((I1<I2)?(I2<I3)?(I3>I4)?I4*=I4:(I3*=I3):(I2*=I2):(I1*=I1)))>";\ e "<$I1><$I2><$I3><$I4>" s I1=2 I2=3 I3=4 I4=5;\ p "<$(((I1<I2)?(I2>I3)?(I3<I4)?I4*=I4:(I3*=I3):(I2*=I2):(I1*=I1)))>";\ e "<$I1><$I2><$I3><$I4><$I5>" s I1=2 I2=3 I3=4 I4=5;\ p "<$(((I1>I2)?(I2<I3)?(I3<I4)?I4*=I4:(I3*=I3):(I2*=I2):(I1*=I1)))>";\ e "<$I1><$I2><$I3><$I4><$I5>" e '-- COND .8' s I=0;p "<$((1?I=2:(I=3),8,10))>";e "<$I>" s I=0;p "<$((1?20:(I+=2)))>"; e "<$I>" s I=0;p "<$((1?I+=10:(I+=2)))>"; e "<$I>" s I=0;p "<$((0?I+=2:20))>"; e "<$I>" s I=0;p "<$((0?I+=2:(I+=10)))>"; e "<$I>" s I=0;p "<$((0?(I+=2):(20)))>"; e "<$I>" s I=0;p "<$((0?(I+=2):(I+=20)))>"; e "<$I>" e '-- COND .9' s I1=+E+ I2=1+1; p "<$((0?I1:I2))>"; e "<$I1><$I2>" s I1=1+1 I2=+E+; p "<$((1?I1:I2))>"; e "<$I1><$I2>" s I1=+E+ I2=1+1; p "<$((0?I1=1:(I2=2)))>"; e "<$I1><$I2>" s I1=1+1 I2=+E+; p "<$((1?I1=1:(I2=2)))>"; e "<$I1><$I2>" s I1=+E+ I2=1+1; p "<$((0?I1*=I1:(I2*=I2)))>"; e "<$I1><$I2>" s I1=1+1 I2=+E+; p "<$((1?I1*=I1:(I2*=I2)))>"; e "<$I1><$I2>" e '= WILD I' e "<$(( 3 + ( 11 ) ))>" e "<$((1 + (2 - 2)))>" e "<$((1 + (2 - 2)))>" e "<$(( (( 3 / 3 )) + ((1*1*1)) - (( 7 % 6 ))))>" e "<$(( 3+((2 * 2))/6 ))>" e "<$(( 1 + 1 - 3 * 3 + 99-88 / 17))>" e "<$(( 1 << 2 % 1+2 * 4 - (2 + 2 + 1) * 6 / 7 + 4 * 2 + (81/9)))>" s I1=I2=10 I2=3; p "<$((I1 + I2))>"; e "<$I1><$I2>" s I1=I2=10 I2=3; p "<$((I1 * I2))>"; e "<$I1><$I2>" s I1=I2=10 I2=3; p "<$((I1 % I2))>"; e "<$I1><$I2>" e '= WILD II' s I=10;p "<$((3+(3*(I=11))))>";e "<$I>" s I=10;p "<$((3+(3*(I++))))>";e "<$I>" s I=10;p "<$((3+(3*(I=11,I++))))>";e "<$I>" s I=10;p "<$((3+(3*(I=11,++I))))>";e "<$I>" s I=10;p "<$((3+(3*(I=11,++++I))))>";e "<$I>" s I=10;p "<$((3+(3*(I=11,+++++++++++++++++++++++-+++++I))))>";e "<$I>" e "<$((3+(3*(+++++++++++++++++++++++-+++++10))))>" s I=10;p "<$(( +10 + + +I ))>";e "<$I>" s I=10;p "<$(( +10 + ++I ))>";e "<$I>" s I=10;p "<$(( +10 ++ +I ))>";e "<$I>" s I=10;p "<$(( +10 +++ I ))>";e "<$I>" s I=10;p "<$(( +10+++I ))>";e "<$I>" s I=10;p "<$((+10++I))>";e "<$I>" s I=10;p "<$((+10 + + + ++++ +I))>";e "<$I>" e "<$(( +10 + + + ++++ +11 ))>" e "<$(( +10 + + + ++++ ++11 ))>" e "<$((+10++++++++11))>" e '= WILD RECUR' # (some yet) s I1=I2=10 I2=5;p "<$((I1+=I2))>";e "<$I1><$I2>" s I1=I2=10 I2=5 I3=I2+=1;p "<$((I1))>";e "<$I1><$I2><$I3>" s I1=I2=10 I2=5 I3=I2+=1;p "<$((I1,I3))>";e "<$I1><$I2><$I3>" s I1=I2=10 I2=5 I3=I2+=1;p "<$((I1+I3))>";e "<$I1><$I2><$I3>" s I1=I2=10 I2=5 I3=I2+=1;p "<$((I1?I1:I3))>";e "<$I1><$I2><$I3>" s I1=I2='(I2=10)+1' I2=5 I3=I2+=1;p "<$((I1,I3))>";e "<$I1><$I2><$I3>" s I1=I2='(I2=(I2=10)+1)' I2=5 I3=I2+=1;p "<$((I1,I3))>";e "<$I1><$I2><$I3>" s I1=I2=10 I2=5 I3=I2+=1;p "<$((I1+I3*I1*I3/I1%I3))>";e "<$I1><$I2><$I3>" s I1=I2=10 I2=5 I3=I2+=1;p "<$((I1+I3*I1*I3/I1%I3))>";e "<$I1><$I2><$I3>" s I1=I2=+E+ I2=5;p "<$((I1=10))>";e "<$I1><$I2>" s I1=I2=+E+ I2=5;p "<$((0?I1:++I2))>";e "<$I1><$I2>" s I1=I2=10 I2=5;p "<$((I2,(1?I1:++I2)))>";e "<$I1><$I2>"
_______________________________________________ busybox mailing list [email protected] http://lists.busybox.net/mailman/listinfo/busybox
