tg
31bf077591
don’t clobber the tree used for printing IOACTs in process_TIF (LP: #907224 )
2011-12-29 23:36:25 +00:00
tg
dd8925a475
ensure aliases in COMSUB are not expanded twice
...
spotted by Jilles Tjoelker again, thanks
2011-12-29 22:03:15 +00:00
tg
7b89945505
use sane spelling of read-only consistently
2011-12-16 20:03:28 +00:00
tg
e18f4d114a
actually, behave with silent wraparound; results validated by bc(1)
2011-12-11 01:56:43 +00:00
tg
971b153933
catch intmin/-1 instead of dumping core on SIGFPE; from Jilles Tjoelker
2011-12-11 01:35:10 +00:00
tg
3b87d173d4
• finally, the code and manual page text to deprecate, and code to not
...
handle any more, octal 010 style constants, as promised
• overhaul the manpage re. arithmetic expressions, make the guarantees
mksh code has explicitly, precisely, clear
• to reduce burden of the compiler, getint() now operates on mksh_uari_t
internally; it already applied the sign after operation, anyway (C99
guarantees wraparound on unsigned types, but for signed types we need
specific compiler support; apparently, this comes from hardware limits)
• use const and shuffle order of locals around while here
2011-12-10 13:34:19 +00:00
tg
15cfc6c88d
add tests for
...
• integer base flat (10, 010, 0x10)
‣ posix, right variants (heh, just like timezones)
⇒ both enabled, which means one test always fails right now,
until the code changes are in…
☹ mksh R21 and up, AT&T ksh93, posh, GNU bash, busybox sh, dash
all use the posux variant
☺ mksh R20b and below, pdksh, zsh, python, perl, php all do it right
‣ posix is stupid to use C (strongly typed, compiled) semantics
for an untyped _scripting_ language
• integer bases 1 (mksh specific), 2 to 36, and that 37 errors out
‣ both directions
• integer arithmetic, signed and unsigned, wraparound and value span
2011-12-09 20:40:02 +00:00
tg
63b9d60b31
MKSH_DISABLE_DEPRECATED needs testsuite handling
2011-12-08 22:19:04 +00:00
tg
1ac636670f
• improve comments
...
• do shave off 20 bytes from c_test() and get rid of the ugly stack
variable and double “using” despite not parsing
2011-12-02 22:55:49 +00:00
tg
2fb9df56e4
rewrite funcs.c:c_test(), i.e. test(1) and [(1), to follow POSIX and XSI
...
in the cases where they are defined unambiguously; bug reported by
Jilles Tjoelker in <20111129232526.GC14357@stack.nl> due to a report
by Stefano Lattarini on bug-autoconf
in the ambiguous case, I stick to traditional pdksh behaviour, which means
test ! a = b vs. test a = b
and
test ! a -o b vs. test a -o b
behave different from each other (in the second case, the NOT operator
binds strong; POSIX demands a reduction to 3 arguments and negating
that result in the first case), so we're at two known not-ok in the
FreeBSD® testsuite. (81 and 82 in regress.sh,v 1.3)
2011-11-30 21:34:15 +00:00
tg
0695039dc0
fix stateptr-underflow; really do call fastbox regression checks; bump vsn
2011-11-26 00:45:21 +00:00
tg
63878e8aef
another couple of verbose checks; the *-global are mksh specific but work;
...
mksh currently fails arrassign-fnc-local (never worked either)
2011-11-25 23:33:42 +00:00
tg
2ff9255f39
add a -f option to test.sh that runs tests of class fastbox
...
plus a test in that category for a bug spotted during development of
https://evolvis.org/plugins/scmgit/cgi-bin/gitweb.cgi?p=shellsnippets/shellsnippets.git;a=blob;f=mksh/sysadmin/getjpics.cgi;h=d74018cbc1ae4e88408267ecc73a6df19aa4c99a;hb=HEAD
2011-11-25 23:29:31 +00:00
tg
dd014625e1
Fix regression introduced by mixing the recursive parser and support
...
for ;| and ;& in TCASE: ;;-less last casepart produced ";\0" in the
SREREAD string which obviously cased reparsing to fail
test from http://www.in-ulm.de/~mascheck/various/cmd-subst/
2011-11-22 18:01:41 +00:00
tg
d7079f3f0e
bump
2011-11-19 21:22:02 +00:00
tg
0220aeeb61
disable cd-pe test on Hurd, it also wrecks havoc with check.pl
...
https://buildd.debian.org/status/fetch.php?pkg=mksh&arch=hurd-i386&ver=40.2-4&stamp=1321059202
2011-11-19 17:25:55 +00:00
tg
e20b1295b7
promote x=(a b); x+=(c) to standard mksh functionality at cost of 932 MKSH_SMALL .text bytes on MirBSD/i386
2011-11-11 22:14:19 +00:00
tg
90afc54ee8
• select(0, …) misbehaves on Interix (by Markus Duft <mduft@gentoo.org>)
...
• select(n, NULL, NULL, NULL, …) behaves the same (by Bruno Haible)
2011-11-09 22:17:26 +00:00
tg
f048ac2f58
disable another symlink-using test on MSYS
2011-11-08 23:10:58 +00:00
tg
c620f865c1
cid 1004E0F5C27271F5B00 broke integer-base handling of built-in parameters
...
mksh -c 'echo a=$RANDOM; RANDOM=0x12; echo b=$RANDOM' # behaviour changed
2011-11-08 22:07:15 +00:00
tg
f92108dccc
make MSYS match Cygwin more closely; ignore its broken <stdint.h>
2011-11-05 23:39:02 +00:00
tg
92b60a9a5e
forgotten in cid 1004EA5BF612F516747 to take '\n' presence as $'…' quoting reason
2011-10-26 20:46:16 +00:00
tg
5893a36bad
document “export -” accident found by Snader_LB
2011-10-24 19:41:13 +00:00
tg
d6bf9c197b
better handling of eval and CPPFLAGS in build system
2011-10-07 19:51:44 +00:00
tg
9782f6b4d1
• access(2) is broken in at least kFreeBSD 9.0 as “modern” OS, so bring
...
back the wrapper code as well as refactor most other code calling it
• apparently, names can’t end in ‘_’ or contain ‘__’ anywhere…
2011-09-07 15:24:22 +00:00
tg
577c918beb
patch most of Jerker Bäck’s concerns out, unless not applicable
2011-08-27 18:06:52 +00:00
tg
5d9c88ceeb
jg71 reported -DMKSH_ASSUME_UTF8=* breaks defining stristr
2011-08-27 17:30:07 +00:00
tg
80223417d7
followup fix for 1004D90467358D6B13C regarding escaped substitutions
...
found in, out of all things, Debian/m68k, by Wouter Verhelst (Yoe)
fix hacked at DebConf 11, Бања Лука, Република Српска, Босна и Херцеговина
2011-07-26 16:57:28 +00:00
tg
a7566387cf
optimise an if away, and possibly even the function bodies…
2011-07-20 23:47:29 +00:00
tg
6ce68e906f
now that I got Hash.cs compiled and run, I’m amazed; make NZAAT (and NZAT!) all green with a small tweak; bit distribution and χ2 look OK as well
2011-07-18 00:35:46 +00:00
tg
09db3d67a2
finish merging from R40-stable; set version number to yesterday though
2011-07-16 17:08:52 +00:00
tg
620faa3dc9
‣ merge from mksh R40-stable
...
drop heredoc-weird-3 while here, it’s not deterministic by design(?)
2011-07-16 17:08:35 +00:00
tg
3f014c8daf
utf8opt-3 needs to be split in half, part of it needs-ctty
...
10x arekm again
2011-07-07 21:02:39 +00:00
tg
a4a000eafb
take down the entire xterm (or GNU screen tab), hard, with:
...
mksh-R40 -c 'x=$COLUMNS; awk "BEGIN{exit(1)}"'
10x to the PLD Linux guys for spotting _and_ bisecting this!
2011-07-07 20:24:53 +00:00
tg
3ef67e3296
replace uses of OAAT hash in all its variants by NZAT (mksh internal) or NZAAT (all others)
2011-07-06 22:22:02 +00:00
tg
f2405b7dde
• bump patchlevel to today’s
...
• while here, reformat 'struct tbl' comment-wise and placement-wise
and drop the Tflag typedef
• while here, write regression test for the "global" built-in, which
does what typeset is supposed to do except that it doubles as "local"
2011-07-05 20:12:20 +00:00
tg
0739fa74a0
address "env RANDOM=1=2=3 mksh" DoS by integrifying more
2011-07-02 17:57:41 +00:00
tg
edaab2cafe
tabcomplete ~ and ~foo like $FOO (idea by yofuh)
2011-06-30 13:48:13 +00:00
tg
43c8d8765f
pretty tricky thing, IBM’s curses library does nameref foo=foo…
2011-06-21 21:50:26 +00:00
tg
7ce3a2ad54
HP-UX aCC suggested more “≠ 0” and parenthesēs
2011-06-12 14:58:45 +00:00
tg
6571d66386
add missing shf_flush() before prompting
2011-06-11 03:14:50 +00:00
tg
5aa22cff70
• fix empty input
...
• fix input without trailing newline for integer-base-one-3{A,W}r
2011-06-09 21:53:12 +00:00
tg
1fbd3e5ee0
bugfix for when the last line was full
2011-06-09 21:26:21 +00:00
tg
60ccad3dfc
check for embedded NULs work
2011-06-09 21:10:50 +00:00
tg
e0fb8dc431
• rework hash table interna to avoid gcc-4.1 on Debian etch bug
...
• also improve behaviour with _a lot_ (>2²⁸) entries
• while here, improve comments and whitespace
2011-06-05 19:58:21 +00:00
tg
92ea9a224f
heredoc-weird-3 is timing-critical ⇒ need-pass: no
2011-06-05 16:49:54 +00:00
tg
57b849910f
mark all 2×3 history-ed tests as need-pass: no
2011-06-04 17:08:11 +00:00
tg
ebb8bed911
fix segfault due to limit of hashtable entries (global variables) discovered by Jb_boin: unlimit to 2^30 minus epsilon
2011-06-04 16:42:31 +00:00
tg
b3d38f9cdf
better parsing for x=(…) – bug noted by Frank Terbeck
2011-06-04 16:11:20 +00:00
tg
128a2e8fc1
add test for x+=(y z) and ;;& functions in tree dumper (!MKSH_SMALL)
2011-05-29 16:38:58 +00:00