summary refs log tree commit diff
path: root/Src/builtin.c
Commit message (Collapse)AuthorAgeFilesLines
* 40342: Add directory name cache for autoload file paths.Peter Stephenson2017-01-121-6/+6
| | | | | This renders "autoload /blah/blah/*" as efficient as use of fpath.
* 40335: More care with autoload function path.Peter Stephenson2017-01-121-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.
* unposted: more care with shell function filename.Peter Stephenson2017-01-111-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.
* Add features associated with autoloading a function using an absolutePeter Stephenson2017-01-111-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.
* 40179: fix handling of "printf -" and "printf --"Barton E. Schaefer2016-12-141-1/+1
| | | | unposted: regression test for 40179 / 37467
* 40134: silence spurious compiler warnings.Barton E. Schaefer2016-12-101-1/+1
|
* 40010: builtins: Say 'bad option: +x', not 'bad option: -x', when +x was passed.Daniel Shahaf2016-11-281-2/+3
|
* unposted: fix printf -v to an array without format string reuseOliver Kiddle2016-11-231-1/+1
|
* 39958: Add extra byte to PATH_MAX allocations.Peter Stephenson2016-11-171-1/+1
| | | | | This ensures we've got enough space for a null, although this isn't always needed.
* 39870: ensure exit trap can always runPeter Stephenson2016-11-081-0/+5
|
* 39838: another missing unqueue_signals()Barton E. Schaefer2016-11-051-0/+1
|
* 39834: when print used with -v and -l, include a final newlineOliver Kiddle2016-11-051-1/+2
| | | | | Also complete print -S option and make further use of the new printf to an array feature in other completion functions.
* 39389: when printf -v is used with an array use separate elements each time ↵Oliver Kiddle2016-11-051-13/+38
| | | | the format is reused
* 39758: revise 39704 for array and hash parameters; more POSIXBUITINS tweaks forBarton E. Schaefer2016-10-291-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).
* 39678: metafication of printf %q argument and resultPeter Stephenson2016-10-191-2/+3
|
* 36108: command -[vV] assumed -pPeter Stephenson2016-10-111-2/+4
|
* 39545: Add some missing unqueue_signals().Peter Stephenson2016-10-031-0/+3
| | | | All of these are added simply to fit existing logic in other branches.
* 39509: in the event the current directory has been removed, use chasedots ↵Barton E. Schaefer2016-09-301-4/+21
| | | | semantics for "cd ..".
* 34943: Fixes for "command" with multiple options.Peter Stephenson2016-09-291-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.
* 39252: internal: quotestring: Drop the 'e' parameter, which no caller uses.Daniel Shahaf2016-09-111-1/+1
|
* 39181: Add PM_SINGLE and use for compstate.Peter Stephenson2016-09-061-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.
* 39087: fix 'conditionally uninitialized' variablesJun-ichi Takimoto2016-08-231-1/+1
|
* 38971: Start using the new arrlen_ge() / arrlen_le() helpers.Daniel Shahaf2016-08-011-3/+3
|
* 38752: add comments to explain use of stdout instead of stderr for the which ↵Oliver Kiddle2016-06-291-1/+2
| | | | builtin
* 38630: fix infinite loop of "hash ="Barton E. Schaefer2016-06-071-0/+1
|
* unposted: silence spurious compiler warningBarton E. Schaefer2016-04-291-1/+1
|
* 38306: in printf formats, treat a missing precision as zero rather than as ↵Barton E. Schaefer2016-04-221-1/+2
| | | | unlimited
* 37914: reparse associative array subscripts in "unset" so keys with "[" or ↵Barton E. Schaefer2016-02-081-12/+18
| | | | | | "]" may be backslash-escaped Also fix erroneous test case this revealed.
* 37765: Use FS_FUNC on fucstack to find autoload -X target.Peter Stephenson2016-01-251-7/+25
| | | | | This is better than scriptname which can be updated due to e.g. intervening "eval".
* 37722: test builtin should return status 2 on syntax errorPeter Stephenson2016-01-211-4/+4
|
* 37646: Return non-zero status from typeset assigning readonlyPeter Stephenson2016-01-151-0/+2
|
* 37551: Include the builtin's name in a "bad option" error message.Daniel Shahaf2016-01-101-1/+1
| | | | Example: «zsh -fc 'zle -z'» now prepends "zle:" to the error message.
* unposted: Src/builtin.c: refine READ_MSTREAM to avoid unsequenced evaluationBarton E. Schaefer2016-01-081-1/+1
|
* 37513: fix typos; improve error cleanup and correct for signed/unsigned ↵Barton E. Schaefer2016-01-061-10/+14
| | | | compiler warning
* 37504: refactor code using/simulating memstream to capture output for "print -v"Barton E. Schaefer2016-01-051-71/+102
|
* 37503: detect incompatible "print" options, fix metafication and possible ↵Barton E. Schaefer2016-01-041-29/+53
| | | | memory leak, miscellaneous cosmetics
* 37501 (+ revise test): correct byte counts when simulating memstream via ↵Jun T2016-01-041-2/+2
| | | | temp file
* 37497: handle NUL bytes in "printf -v".Barton E. Schaefer2016-01-021-4/+7
|
* 37493: readonly + POSIX_BUILTINS == typeset -grBarton E. Schaefer2016-01-021-2/+6
|
* unposted: enable WARN_CREATE_GLOBAL for print -vBarton E. Schaefer2015-12-311-2/+2
|
* 37467: add "print -v var" / "printf -v var"Barton E. Schaefer2015-12-311-9/+25
|
* 37364: "test" and "[" handling of parentheses.Peter Stephenson2015-12-091-1/+7
| | | | | | If three arguments, need to prefer binary operators if possible. Need to look for full string for parentheses.
* 37187: infinite loop in "hash -m"Peter Stephenson2015-11-221-0/+1
|
* 20974: Bug with scalar assignment to special array in typesetPeter Stephenson2015-11-201-4/+20
|
* 37080: use paramtab abstraction more consistently, add explanatory commentsBarton E. Schaefer2015-11-081-4/+7
|
* 37038: add -l option to emulate to list options in emulationsPeter Stephenson2015-11-011-8/+25
|
* 37014: Improved internal parameter setting.Peter Stephenson2015-10-291-16/+22
| | | | | | | | Enhance WARNCREATEGLOBAL to work in many more cases. Don't create REPLY as an integer if it didn't previously exist as one, even if the value to be set is integral, as this is likely to mess up later uses of REPLY.
* 36256: local options should remain in effect for "emulate -L" even if ↵Barton E. Schaefer2015-08-211-4/+7
| | | | additional option settings are applied
* 36262: Replace fix for missing unmeta in chdir().Peter Stephenson2015-08-211-1/+1
| | | | | | | It was needed in the argument to one of a pair of lchdir()s rather than within zchdir(). Add tests for the case of a character with 0x83 within it.
* 36227: attempt to fix metafication problem with ztrftime.Peter Stephenson2015-08-181-2/+5
| | | | | fmt is treated as metafied on entry; use returned length to ensure we metafy or output the correct length if there are embedded nulls.