Oliver Kiddle
57248b8883
52750: remove ansi2knr support for old pre-ansi K&R compilers
2 months ago
Bart Schaefer
4fb96cc639
52612: %l replacment of zwarning() does literal string output
3 months ago
Bart Schaefer
c039a74e09
Typos in previous commit comments
4 months ago
Bart Schaefer
ce8909b494
unposted: Record as comments some notes about namespace usage exceptions.
4 months ago
Bart Schaefer
4da0f689c4
unposted: Fix longstanding typo in comment
5 months ago
Bart Schaefer
1ffc6d0ef5
52204: fix thinko, unmeta() buffer should not be freed
8 months ago
Bart Schaefer
29644f12e7
52193: handle UTF8-encoded USERNAME and therefore home directory in zcompile
...
Includes one unposted thinko fix ztrdup -> dupstring
8 months ago
Peter Stephenson
21baad1037
51307: Improve error on attempt to define function from aliased name
1 year ago
Oliver Kiddle
a73c705b0c
51212: remove STOUC() macro
...
This served as a workaround for ancient compilers where casts to
unsigned char were broken.
1 year ago
Bart Schaefer
5b1c204c54
Unposted: Fix typo in comment
2 years ago
Bart Schaefer
734740a5ed
50341: disallow here-document markers containing newline
2 years ago
Peter Stephenson
0b3b259794
49433: Don't assume EPROG references are bounded by function depth.
...
We use references for efficient function copy, so there is no useful limit any more.
3 years ago
Marlon Richert
a675d058db
49378: skip check for collision of aliases and functions when NO_EXEC
3 years ago
Peter Stephenson
daa208e907
49269: Fix "[ ! -o ]".
...
This should detect "-o" as non-empty string; "-a" was alrady working.
Update the test.
3 years ago
Daniel Shahaf
d4da2c73f0
47300: Document the EC_NODUP, EC_DUP, EC_DUPTOK triplet.
...
All uses reviewed; no functional change.
4 years ago
Mikael Magnusson
8923d2a618
Add SHORT_REPEAT option
4 years ago
Daniel Shahaf
aed0cb4408
45583/0009: Add end-of-options guard support to 'function -T'.
4 years ago
Daniel Shahaf
386d9ac8ff
45583/0008: Add the 'function -T' syntax.
...
Config/version.mk was bumped in the previous commit.
4 years ago
Daniel Shahaf
a3c6c5513d
45583/0007: WC_FUNCDEF: Add a placeholder element.
4 years ago
Daniel Shahaf
fd1ef7d770
45583/0006: internal: Add some comments for orientation. No functional change.
4 years ago
Daniel Shahaf
e37df255c1
45583/0005: internal: Document the WC_FUNCDEF data layout for anonymous functions with arguments (follow-up to 29492)
4 years ago
Daniel Shahaf
338a4a299a
45583/0004: internal: Add some comments around wordcodes. No functional change.
4 years ago
Daniel Shahaf
4960699de2
45583/0003: internal: Add some comments around Eccstr. No functional change.
4 years ago
Daniel Shahaf
be73026b07
45583/0002: internal: Reduce some variables' visibility. No functional change.
4 years ago
Martijn Dekker
c578f0a08b
45004: Fix typos in comments
5 years ago
Peter Stephenson
4384fdc7f0
44446: Fix here document with file descriptor declarator.
...
Add unit test.
5 years ago
Peter Stephenson
30e356eb1a
44296: "typeset Q= {X}" crashed the shell.
5 years ago
Kamil Dudka
00e6ab70b8
44122: turn int into long to avoid overflow
5 years ago
Peter Stephenson
11f18457d2
Allow short loops with "while"
6 years ago
Martijn Dekker
54ea6a8cd5
42365: Use .zwc file if timestamp identical to source.
...
This can happen if the files are bundled together.
6 years ago
Peter Stephenson
97c74dcb0e
42110: Fix redirections between variable assignments at start of line
7 years ago
Peter Stephenson
e573857a03
41802 (minor tweaks): use heap during shell function call.
...
Replaces stack for more efficient memory management.
Also fix debug message when FUNCNEST is increased.
7 years ago
Peter Stephenson
5a8155f7b7
41633: Fix problem backgrounding function definitions.
...
Owing to being marked as simple sublists the instruction to
background was ignored. This applied to anonymous functions.
7 years ago
Peter Stephenson
cfd34c75ac
41504: make empty strings work in case patterns with no leading parenthesis
7 years ago
Sebastian Gniazdowski
b31f947795
41402: Delay has_tokens() in ecstrcode as may not be needed
7 years ago
Sebastian Gniazdowski
e556f9c78d
41402: Add hasher to ecstrcode to reduce string comparisons
7 years ago
Peter Stephenson
af1c82d646
40173: Off-by-one error checking for {varid}.
...
This caused a single unprintable character in braces before a
redirection to be treated as an indentifier.
7 years ago
Peter Stephenson
641a764b82
users/22688: Allow mixing redirs and arguments after anon functions.
...
These are parsed differently from the case of normal functions which
can't take normal arguments at that point.
7 years ago
Peter Stephenson
f25d01a97c
Fix combination of HERE document and |&.
...
A missing flag setting up the HERE document mean that the size
of the wordcode needed to append the 2>&1 was counted incorrectly,
so the resulting wordcode was garbled.
Add test.
7 years ago
Peter Stephenson
f3f8537cfa
40760: Always tokenize unquoted - to Dash.
...
This fixes use of pattern match character ranges in unusual contexts.
Attempt to detect a tokenized - in cases where we don't care.
7 years ago
Barton E. Schaefer
e51c9c17af
40453: signal handler safety for callers of patcompile(PAT_STATIC), which is not re-entrant.
7 years ago
Peter Stephenson
f26d1ba6b0
Add features associated with autoloading a function using an absolute
...
path.
-d defaults to normal fpath
-r remembers the path without actually loading. May be combined with -d.
-R does the same but it's an error if not found
-X can now take a directory path: this is used to output not yet loaded
functions that have an associated path.
7 years ago
Peter Stephenson
bb218704d2
40306 with doc tweaks: Change behaviour expanding alias in () function definition.
...
Now an error unless the () is part of the same error as the name.
Add ALIAS_FUNC_DEF option to allow it again.
7 years ago
Peter Stephenson
88c42a2ba0
39777: $() is a valid empty command substitution
8 years ago
Oliver Kiddle
fbafc5b509
39332: support ksh's [[ -v varname ]] condition for checking if variables are set
8 years ago
Oliver Kiddle
00708285e9
unposted: remove duplicated assignment
8 years ago
Peter Stephenson
1993a3cd2a
39292: Distinguish "=" and "==" tests in output.
...
This is both in xtrace output and shell code rebuilt from
internal structures.
8 years ago
Peter Stephenson
28c46c1bfb
38111: Remove redundant return values in parsing.
...
Return values from par_list() and par_list1() are no longer used.
8 years ago
Barton E. Schaefer
bc958ab275
38106: if...then if...else should be a parse error.
8 years ago
Daniel Shahaf
bced1beb8c
37700: Teach ${(z)} the 'repeat WORD SUBLIST' syntax.
8 years ago