summaryrefslogtreecommitdiff
path: root/Src/parse.c
AgeCommit message (Collapse)AuthorFilesLines
2025-01-27github #126: Fix some typosWu, Zhenyu1-1/+1
2024-03-1852750: remove ansi2knr support for old pre-ansi K&R compilersOliver Kiddle1-1/+1
2024-03-0252612: %l replacment of zwarning() does literal string outputBart Schaefer1-5/+4
2024-02-03Typos in previous commit commentsBart Schaefer1-1/+1
2024-02-03unposted: Record as comments some notes about namespace usage exceptions.Bart Schaefer1-0/+2
2023-12-09unposted: Fix longstanding typo in commentBart Schaefer1-1/+1
2023-10-0552204: fix thinko, unmeta() buffer should not be freedBart Schaefer1-2/+0
2023-10-0152193: handle UTF8-encoded USERNAME and therefore home directory in zcompileBart Schaefer1-3/+9
Includes one unposted thinko fix ztrdup -> dupstring
2023-02-0251307: Improve error on attempt to define function from aliased namePeter Stephenson1-0/+3
2022-12-1651212: remove STOUC() macroOliver Kiddle1-3/+3
This served as a workaround for ancient compilers where casts to unsigned char were broken.
2022-10-23Unposted: Fix typo in commentBart Schaefer1-1/+1
2022-06-0850341: disallow here-document markers containing newlineBart Schaefer1-0/+3
2021-10-0549433: Don't assume EPROG references are bounded by function depth.Peter Stephenson1-4/+0
We use references for efficient function copy, so there is no useful limit any more.
2021-09-0649378: skip check for collision of aliases and functions when NO_EXECMarlon Richert1-1/+1
2021-08-1049269: Fix "[ ! -o ]".Peter Stephenson1-1/+1
This should detect "-o" as non-empty string; "-a" was alrady working. Update the test.
2020-08-0847300: Document the EC_NODUP, EC_DUP, EC_DUPTOK triplet.Daniel Shahaf1-0/+7
All uses reviewed; no functional change.
2020-04-02Add SHORT_REPEAT optionMikael Magnusson1-1/+1
2020-03-2245583/0009: Add end-of-options guard support to 'function -T'.Daniel Shahaf1-4/+12
2020-03-2245583/0008: Add the 'function -T' syntax.Daniel Shahaf1-2/+9
Config/version.mk was bumped in the previous commit.
2020-03-2245583/0007: WC_FUNCDEF: Add a placeholder element.Daniel Shahaf1-0/+5
2020-03-2245583/0006: internal: Add some comments for orientation. No functional change.Daniel Shahaf1-8/+8
2020-03-2245583/0005: internal: Document the WC_FUNCDEF data layout for anonymous ↵Daniel Shahaf1-2/+8
functions with arguments (follow-up to 29492)
2020-03-2245583/0004: internal: Add some comments around wordcodes. No functional change.Daniel Shahaf1-0/+7
2020-03-2245583/0003: internal: Add some comments around Eccstr. No functional change.Daniel Shahaf1-4/+27
2020-03-2245583/0002: internal: Reduce some variables' visibility. No functional change.Daniel Shahaf1-8/+7
2019-12-1145004: Fix typos in commentsMartijn Dekker1-1/+1
2019-06-2444446: Fix here document with file descriptor declarator.Peter Stephenson1-1/+2
Add unit test.
2019-05-1444296: "typeset Q= {X}" crashed the shell.Peter Stephenson1-0/+8
2019-03-1444122: turn int into long to avoid overflowKamil Dudka1-2/+2
2018-04-23Allow short loops with "while"Peter Stephenson1-1/+3
2018-03-0542365: Use .zwc file if timestamp identical to source.Martijn Dekker1-4/+4
This can happen if the files are bundled together.
2017-12-1242110: Fix redirections between variable assignments at start of linePeter Stephenson1-0/+4
2017-10-0441802 (minor tweaks): use heap during shell function call.Peter Stephenson1-1/+2
Replaces stack for more efficient memory management. Also fix debug message when FUNCNEST is increased.
2017-09-0441633: Fix problem backgrounding function definitions.Peter Stephenson1-1/+6
Owing to being marked as simple sublists the instruction to background was ignored. This applied to anonymous functions.
2017-08-0941504: make empty strings work in case patterns with no leading parenthesisPeter Stephenson1-10/+38
2017-07-0941402: Delay has_tokens() in ecstrcode as may not be neededSebastian Gniazdowski1-1/+5
2017-07-0941402: Add hasher to ecstrcode to reduce string comparisonsSebastian Gniazdowski1-1/+5
2017-05-0840173: Off-by-one error checking for {varid}.Peter Stephenson1-1/+1
This caused a single unprintable character in braces before a redirection to be treated as an indentifier.
2017-05-08users/22688: Allow mixing redirs and arguments after anon functions.Peter Stephenson1-4/+15
These are parsed differently from the case of normal functions which can't take normal arguments at that point.
2017-05-08Fix combination of HERE document and |&.Peter Stephenson1-1/+1
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.
2017-03-0740760: Always tokenize unquoted - to Dash.Peter Stephenson1-14/+27
This fixes use of pattern match character ranges in unusual contexts. Attempt to detect a tokenized - in cases where we don't care.
2017-01-2940453: signal handler safety for callers of patcompile(PAT_STATIC), which is ↵Barton E. Schaefer1-0/+1
not re-entrant.
2017-01-11Add features associated with autoloading a function using an absolutePeter Stephenson1-9/+15
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.
2017-01-1040306 with doc tweaks: Change behaviour expanding alias in () function ↵Peter Stephenson1-0/+14
definition. Now an error unless the () is part of the same error as the name. Add ALIAS_FUNC_DEF option to allow it again.
2016-10-3039777: $() is a valid empty command substitutionPeter Stephenson1-1/+1
2016-09-1639332: support ksh's [[ -v varname ]] condition for checking if variables ↵Oliver Kiddle1-2/+2
are set
2016-09-15unposted: remove duplicated assignmentOliver Kiddle1-1/+0
2016-09-1339292: Distinguish "=" and "==" tests in output.Peter Stephenson1-2/+7
This is both in xtrace output and shell code rebuilt from internal structures.
2016-03-0738111: Remove redundant return values in parsing.Peter Stephenson1-11/+4
Return values from par_list() and par_list1() are no longer used.
2016-03-0638106: if...then if...else should be a parse error.Barton E. Schaefer1-1/+1