summaryrefslogtreecommitdiff
path: root/Src/builtin.c
AgeCommit message (Collapse)AuthorFilesLines
2017-01-2940453: signal handler safety for callers of patcompile(PAT_STATIC), which is ↵Barton E. Schaefer1-17/+20
not re-entrant.
2017-01-2440404: Only quote command in whence output with -v.Peter Stephenson1-4/+8
2017-01-2340391: Add WARN_NESTED_VAR option and functions -W.Peter Stephenson1-4/+8
These are companions to WARN_CREATED_GLOBAL, warning when a variable from an enclosing scope is altered.
2017-01-1840375: autoload with explicit path mustn't trash already loaded function.Peter Stephenson1-0/+25
Also remove unnecessary dupstring() on already duplicated string when expanding =cmd.
2017-01-1740369: code should have been committed with 0a2d92f98Peter Stephenson1-2/+2
2017-01-1240342: Add directory name cache for autoload file paths.Peter Stephenson1-6/+6
This renders "autoload /blah/blah/*" as efficient as use of fpath.
2017-01-1240335: More care with autoload function path.Peter Stephenson1-3/+8
If doing "autoload -X", the path present might actually be location of file containing the function with the autoload -X. Add an explicit flag to say it's a directory for autoload.
2017-01-11unposted: more care with shell function filename.Peter Stephenson1-1/+3
When updating shfunc structure to change filename we should be careful to free whatever's there already, we may now be the directory in which to find the function definition. After loading the field contains the full name of the file.
2017-01-11Add features associated with autoloading a function using an absolutePeter Stephenson1-44/+129
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.
2016-12-1440179: fix handling of "printf -" and "printf --"Barton E. Schaefer1-1/+1
unposted: regression test for 40179 / 37467
2016-12-1040134: silence spurious compiler warnings.Barton E. Schaefer1-1/+1
2016-11-2840010: builtins: Say 'bad option: +x', not 'bad option: -x', when +x was passed.Daniel Shahaf1-2/+3
2016-11-23unposted: fix printf -v to an array without format string reuseOliver Kiddle1-1/+1
2016-11-1739958: Add extra byte to PATH_MAX allocations.Peter Stephenson1-1/+1
This ensures we've got enough space for a null, although this isn't always needed.
2016-11-0839870: ensure exit trap can always runPeter Stephenson1-0/+5
2016-11-0539838: another missing unqueue_signals()Barton E. Schaefer1-0/+1
2016-11-0539834: when print used with -v and -l, include a final newlineOliver Kiddle1-1/+2
Also complete print -S option and make further use of the new printf to an array feature in other completion functions.
2016-11-0539389: when printf -v is used with an array use separate elements each time ↵Oliver Kiddle1-13/+38
the format is reused
2016-10-2939758: revise 39704 for array and hash parameters; more POSIXBUITINS tweaks forBarton E. Schaefer1-4/+10
export 39704 was commit 0f5e670, forgot to reference article number in that log. "typeset -p" outputs "typeset" for array and hash parameters, even when exported, because those types can be marked export but are never pushed to the enviroment. For POSIXBUILTINS, "export var" does not implicitly set $var, and its export state is preserved when assigned (but not when explicitly unset).
2016-10-1939678: metafication of printf %q argument and resultPeter Stephenson1-2/+3
2016-10-1136108: command -[vV] assumed -pPeter Stephenson1-2/+4
2016-10-0339545: Add some missing unqueue_signals().Peter Stephenson1-0/+3
All of these are added simply to fit existing logic in other branches.
2016-09-3039509: in the event the current directory has been removed, use chasedots ↵Barton E. Schaefer1-4/+21
semantics for "cd ..".
2016-09-2934943: Fixes for "command" with multiple options.Peter Stephenson1-1/+9
These need to combine properly, and alos "command -p" with either -v or -V needs to search for builtins and then using the default system path.
2016-09-1139252: internal: quotestring: Drop the 'e' parameter, which no caller uses.Daniel Shahaf1-1/+1
2016-09-0639181: Add PM_SINGLE and use for compstate.Peter Stephenson1-0/+4
This flags that compstate (or any other special) can only have a single instance and an attempt to create a new one is an error. Given the very fiddly semantics of compstate any other usage seems pointless. No investigation yet of other variables that could use this. Note it's still possible to hide such variables; only instances that keep the special nature are affected.
2016-08-2339087: fix 'conditionally uninitialized' variablesJun-ichi Takimoto1-1/+1
2016-08-0138971: Start using the new arrlen_ge() / arrlen_le() helpers.Daniel Shahaf1-3/+3
2016-06-2938752: add comments to explain use of stdout instead of stderr for the which ↵Oliver Kiddle1-1/+2
builtin
2016-06-0738630: fix infinite loop of "hash ="Barton E. Schaefer1-0/+1
2016-04-29unposted: silence spurious compiler warningBarton E. Schaefer1-1/+1
2016-04-2238306: in printf formats, treat a missing precision as zero rather than as ↵Barton E. Schaefer1-1/+2
unlimited
2016-02-0837914: reparse associative array subscripts in "unset" so keys with "[" or ↵Barton E. Schaefer1-12/+18
"]" may be backslash-escaped Also fix erroneous test case this revealed.
2016-01-2537765: Use FS_FUNC on fucstack to find autoload -X target.Peter Stephenson1-7/+25
This is better than scriptname which can be updated due to e.g. intervening "eval".
2016-01-2137722: test builtin should return status 2 on syntax errorPeter Stephenson1-4/+4
2016-01-1537646: Return non-zero status from typeset assigning readonlyPeter Stephenson1-0/+2
2016-01-1037551: Include the builtin's name in a "bad option" error message.Daniel Shahaf1-1/+1
Example: «zsh -fc 'zle -z'» now prepends "zle:" to the error message.
2016-01-08unposted: Src/builtin.c: refine READ_MSTREAM to avoid unsequenced evaluationBarton E. Schaefer1-1/+1
2016-01-0637513: fix typos; improve error cleanup and correct for signed/unsigned ↵Barton E. Schaefer1-10/+14
compiler warning
2016-01-0537504: refactor code using/simulating memstream to capture output for "print -v"Barton E. Schaefer1-71/+102
2016-01-0437503: detect incompatible "print" options, fix metafication and possible ↵Barton E. Schaefer1-29/+53
memory leak, miscellaneous cosmetics
2016-01-0437501 (+ revise test): correct byte counts when simulating memstream via ↵Jun T1-2/+2
temp file
2016-01-0237497: handle NUL bytes in "printf -v".Barton E. Schaefer1-4/+7
2016-01-0237493: readonly + POSIX_BUILTINS == typeset -grBarton E. Schaefer1-2/+6
2015-12-31unposted: enable WARN_CREATE_GLOBAL for print -vBarton E. Schaefer1-2/+2
2015-12-3137467: add "print -v var" / "printf -v var"Barton E. Schaefer1-9/+25
2015-12-0937364: "test" and "[" handling of parentheses.Peter Stephenson1-1/+7
If three arguments, need to prefer binary operators if possible. Need to look for full string for parentheses.
2015-11-2237187: infinite loop in "hash -m"Peter Stephenson1-0/+1
2015-11-2020974: Bug with scalar assignment to special array in typesetPeter Stephenson1-4/+20
2015-11-0837080: use paramtab abstraction more consistently, add explanatory commentsBarton E. Schaefer1-4/+7