summaryrefslogtreecommitdiff
path: root/Src/builtin.c
AgeCommit message (Collapse)AuthorFilesLines
2021-05-1648857: declare "volatile" all globals that may be modified by signal handlersBart Schaefer1-9/+7
2021-05-15users/26742: break out of surrounding shell loops when exit is called from ↵Peter Stephenson1-1/+4
an exit hook
2021-05-0348614: getopts: Calculate OPTIND according to POSIX_BUILTINSdana1-0/+10
2021-04-1847704: POSIX export and readonly ignore "-p" when parameter names also appearBart Schaefer1-2/+6
2021-04-1848560: add TYPESET_TO_UNSET option to remove initialization of parametersBart Schaefer1-3/+11
Changes typeset such that ${newparam-notset} yields "notset" and "typeset -p newparam" does not show an assignment to the parameter. This is similar to the default behavior of bash and ksh, with minor differences in typeset output. Also add tests for some POSIX incompatibilities plus minor changes for test harness robustness.
2021-02-18users/26509: fix for r -LPeter Stephenson1-2/+3
fc with the -L option should ignore remote entires, rather than reading them and treating them as an error.
2021-02-1748073: Add fc -s as POSIX way of rerunning command without starting editorMartijn Dekker1-2/+2
2021-02-0447895: Remove trailing spaces from "print -ac" output lines.Bart Schaefer1-1/+1
2020-10-2547301: Fix print -v metaficationJun-ichi Takimoto1-1/+1
2020-07-0346168: Update $PWD and call chpwd hook after normalizing pathMatthew Martin1-18/+17
2020-06-05typeset: Fix leaving corrupted entries in paramtabMikael Magnusson1-3/+9
2020-05-0345729: internal: Add a second parameter to zlinklist2array(), analogously to ↵Daniel Shahaf1-5/+5
hlinklist2array(). Will be used in the next commit.
2020-04-0945660: Fix crash setting vi or emacs mode on command line.Peter Stephenson1-1/+1
Delay setting the option until the module system is set up.
2020-02-2445487: Missing mod_export declarations for AIXPeter Stephenson1-1/+1
2020-01-1545302: bin_umask(): Queue signals around umask().Daniel Shahaf1-1/+4
Otherwise, a signal handler might create files while the temporary umask is in effect.
2019-12-1845066: internal: Document forklevel, locallevel, and exit_pending.Daniel Shahaf1-1/+5
2019-12-1745058: internal: Add symbolic names to possible values of zexit()'s ↵Daniel Shahaf1-11/+13
"from_where" parameter. No functional change.
2019-12-17unposted: Update comment to reflect variable rename in 41012 (= ↵Daniel Shahaf1-1/+1
zsh-5.3.1-182-gd7110d8f0).
2019-12-1245009: POSIX_CD needs to suppress some forms of option.Peter Stephenson1-1/+1
Otherwise forms of argument allowed by POSIX are interpreted as options instead.
2019-12-1145004: Fix typos in commentsMartijn Dekker1-2/+2
2019-10-10unposted: functions -c: Fix typoDaniel Shahaf1-1/+1
2019-08-03Copy functions using functions -c old new.Peter Stephenson1-2/+41
Documentation and test.
2019-07-0844502: Quote function name for "autoload -X"Bart Schaefer1-1/+1
2019-07-0144469: correct error on missing option argumentMartijn Dekker1-5/+12
2019-06-2344443: POSIX allows exporting readonly variablesMartijn Dekker1-1/+1
2019-05-1444284: combination of -T and -p to typeset crashed the shell.Oliver Kiddle1-4/+2
2019-05-1444291: printf with argument specifier out of range for an int crashed the shellOliver Kiddle1-2/+1
2019-04-1244198: Add cd_silent option to suppress all cd outputdana1-2/+2
2018-10-1043669: ensure explicit exit status is used over implicitPeter Stephenson1-2/+2
2018-10-0943660: extend 43653 when final exit is implicit.Peter Stephenson1-2/+38
Combine logic for case after committed to exit (shell_exiting) with case where exit occurred in a function we nee to unwind (exit_pending). Add sarky note for future generations to be confused at.
2018-10-0943656: special tied arrays don't have tieddataPeter Stephenson1-1/+1
2018-10-0943653: explicit exit from EXIT trap overrides exit statusPeter Stephenson1-4/+10
2018-10-0843616: Various parameter setting and display fixes.Peter Stephenson1-43/+112
Mostly to do with typeset -p and tied variables and their interaction. Some general tied variable fixes.
2018-09-10GitHub #28: Add missing math.h include for builtinsJörg Thalheim1-0/+2
math.h is required for isnan/isinf
2018-06-2043077: Fix shift builtin status.Peter Stephenson1-1/+6
If the math evaulation to get the shift count failed the status wasn't passed back from the builtin.
2018-05-1742785: Allow redefining math function to work silently.Peter Stephenson1-9/+4
Previously it failed with an error message that the function was already defined. This is inconsistent with most other aspects of shell usage.
2018-05-1342488: test cases for 42369 and address some issues in the codeOliver Kiddle1-2/+8
2018-04-0742601: tidy up code for set -A/+A to not increment a NULL pointer and to be ↵Oliver Kiddle1-6/+4
more efficient
2018-01-3142332: Special case unsigned printf formats.Peter Stephenson1-1/+4
For constants we can avoid a conversion to signed by examining the expression before passing to math eval.
2017-12-2242156: new CHECK_RUNNING_JOBS option demanded by bash groupiesPeter Stephenson1-1/+2
Also new job options. Also suppress debug error if rows or columns are reported as zero as this is normal without a physical terminal.
2017-12-0142063: getopts errors now report "+" in front of option where appropriatedana1-2/+3
2017-11-0241866: No error unsetting nonexistent function for POSIXBUILTINSMartijn Dekker1-1/+5
2017-10-01Add typeset -p1, like typeset -p with newlinesPeter Stephenson1-7/+20
2017-09-13First go at var=([key]=value) syntax.Peter Stephenson1-22/+48
Works for both normal and typeset case, also var+=... Still to do: allow to be mixed with straight array assignment, improve typeset -p, implement [key]+=value.
2017-09-1141668: New --emulate option on invocation.Peter Stephenson1-1/+1
This sets the shell emulation mode similarly to ARGV0=... which doesn't work from other shells. Note that this gives more comprehensive emulation than running emulate within the shell.
2017-06-1341284: Fix NULL dereference in cd.Peter Stephenson1-1/+10
This happened in sh compatiblity mode if HOME was not set and cd was used with no argument.
2017-06-1241244: Add zmodload -s option.Peter Stephenson1-1/+1
Doesn't complain if module is unavailable, but prints more obscure errors. Use existing low-level silent flag by passing through intermediate module loading hierarchy.
2017-04-2741012: Fix premature exit from nested function in EXIT trap.Peter Stephenson1-7/+16
Also add check so we don't delay an exit if we were already in an EXIT trap for the main shell, as we should in that case leave immediately.
2017-03-0140622 with typos fixed: functions -Ms.Peter Stephenson1-3/+20
This adds the capability for mathematical functions based on shell functions to have a string argument. Module functions have had this for a long time.
2017-02-1340536: Prepend directory to $fpath.Peter Stephenson1-0/+36
Used if parent function is autoloaded by absolute path so as to find functions in the same suite without shell code modification.