diff --git a/check.t b/check.t index 2eb7831..638ba9a 100644 --- a/check.t +++ b/check.t @@ -1,4 +1,4 @@ -# $MirOS: src/bin/mksh/check.t,v 1.787 2017/05/01 19:44:26 tg Exp $ +# $MirOS: src/bin/mksh/check.t,v 1.788 2017/05/03 16:17:08 tg Exp $ # -*- mode: sh -*- #- # Copyright © 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, @@ -2325,6 +2325,7 @@ expected-stdout: name: eglob-utf8-1 description: UTF-8 mode differences for eglobbing +category: !shell:ebcdic-yes stdin: s=blöd set +U @@ -2765,6 +2766,7 @@ expected-stdout: name: heredoc-10 description: Check direct here document assignment +category: !shell:ebcdic-yes stdin: x=u va=<foo/fnord @@ -8360,7 +8457,7 @@ description: note: Ultrix perl5 t4 returns 65280 (exit-code 255) and no text XXX fails when LD_PRELOAD is set with -e and Perl chokes it (ASan) need-pass: no -category: !os:cygwin,!os:msys,!os:ultrix,!os:uwin-nt,!smksh +category: !os:cygwin,!os:msys,!os:ultrix,!os:uwin-nt,!smksh,!shell:ebcdic-yes env-setup: !FOO=BAR! stdin: print '#!'"$__progname"'\nprint "1 a=$ENV{FOO}";' >t1 @@ -9381,6 +9478,7 @@ expected-stdout: name: varexpand-special-hash description: Check special ${var@x} expansion for x=hash +category: !shell:ebcdic-yes stdin: typeset -i8 foo=10 bar=baz @@ -9389,6 +9487,18 @@ stdin: expected-stdout: 9B15FBFB CFBDD32B 00000000 . --- +name: varexpand-special-hash-ebcdic +description: + Check special ${var@x} expansion for x=hash +category: !shell:ebcdic-no +stdin: + typeset -i8 foo=10 + bar=baz + unset baz + print ${foo@#} ${bar@#} ${baz@#} . +expected-stdout: + 016AE33D 9769C4AF 00000000 . +--- name: varexpand-special-quote description: Check special ${var@Q} expansion for quoted strings @@ -10448,6 +10558,7 @@ expected-stdout: name: integer-base-one-5A description: Check to see that we’re NUL and Unicode safe +category: !shell:ebcdic-yes stdin: set +U print 'a\0b\xfdz' >x @@ -10458,6 +10569,20 @@ stdin: expected-stdout: 16#61 16#0 16#62 16#FD 16#7A . --- +name: integer-base-one-5E +description: + Check to see that we’re NUL and Unicode safe +category: !shell:ebcdic-no +stdin: + set +U + print 'a\0b\xfdz' >x + read -a y ?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\177\200\201\202\203\204\205\206\207\210\211\212\213\214\215\216\217\220\221\222\223\224\225\226\227\230\231\232\233\234\235\236\237\240\241\242\243\244\245\246\247\250\251\252\253\254\255\256\257\260\261\262\263\264\265\266\267\270\271\272\273\274\275\276\277\300\301\302\303\304\305\306\307\310\311\312\313\314\315\316\317\320\321\322\323\324\325\326\327\330\331\332\333\334\335\336\337\340\341\342\343\344\345\346\347\350\351\352\353\354\355\356\357\360\361\362\363\364\365\366\367\370\371\372\373\374\375\376\377\u00A0\u20AC\uFFFD\357\277\276\357\277\277\360\220\200\200.' --- +name: duffs-device-ebcdic +description: + Check that the compiler did not optimise-break them +category: !shell:ebcdic-no +stdin: + set +U + s= + typeset -i1 i=0 + while (( ++i < 256 )); do + s+=${i#1#} + done + #s+=$'\xC2\xA0\xE2\x82\xAC\xEF\xBF\xBD\xEF\xBF\xBE\xEF\xBF\xBF\xF0\x90\x80\x80.' #XXX + typeset -p s +expected-stdout: + typeset s=$'\001\002\003\004\t\006\007\010\011\012\v\f\r\016\017\020\021\022\023\024\n\b\027\030\031\032\033\034\035\036\037\040\041\042\043\044\045\046\E\050\051\052\053\054\055\056\a\060\061\062\063\064\065\066\067\070\071\072\073\074\075\076\077  âäàáãåçñ¢.<(+|&éêëèíîïìß!$*);^-/ÂÄÀÁÃÅÇѦ,%_>?øÉÊËÈÍÎÏÌ`:#@\175="Øabcdefghi«»ðýþ±°jklmnopqrªºæ¸Æ¤µ~stuvwxyz¡¿Ð[Þ®¬£¥·©§¶¼½¾Ý¨¯]´×{ABCDEFGHI­ôöòóõ}JKLMNOPQR¹ûüùúÿ\\÷STUVWXYZ²ÔÖÒÓÕ0123456789³ÛÜÙÚ\377' +--- name: duffs-device-faux-EBCDIC description: Check that the compiler did not optimise-break them