summaryrefslogtreecommitdiffstats
path: root/Src/params.c
Commit message (Collapse)AuthorAgeFilesLines
* unposted: fix silly bug wherein ${(!)ref} uppercased the referent nameBart Schaefer2025-05-141-1/+2
|
* 53602: "typeset -nu" always refers to at a call level above the declarationBart Schaefer2025-05-121-5/+6
|
* unposted: fix bad pointer found by valgrindBart Schaefer2025-05-091-0/+1
|
* 53568: fix additional problems with reference scoping, update documentationBart Schaefer2025-05-091-4/+12
| | | | | Scope exits could miss some scope updates in named reference chains. References declared -u behave like any other reference upon scope exit.
* 53546,53557 (plus test): Fix scoping of "placeholder" named referencesBart Schaefer2025-05-061-6/+22
| | | | | | | When using placeholders declared several levels earlier than assignment: 1) Searching "up" for "typeset -n -u" could find deeper locals than intended 2) Searching for a subscript reference could skip to the top level 3) Exiting a function scope could incorrectly change the reference level
* 53431: fix assignment via named reference to parameters in outer scopesBart Schaefer2025-03-311-1/+5
|
* 53257: use monotonic clock where appropriatedana2024-12-261-20/+18
| | | | | | | | | | | | | | | update the following features to use the monotonic clock for calculating time deltas and intervals: * MAILCHECK parameter * PERIOD parameter * SECONDS parameter * %(nS.t.f) prompt-expansion sequence * time built-in's elapsed time and cpu % values * zsh/zftp ZFTP_TMOUT parameter * zsh/zprof timings also use CLOCK_MONOTONIC_RAW instead of CLOCK_MONOTONIC on macOS
* 53209 + tests: do not unmetafy via string pointers into global parameter tableBart Schaefer2024-11-051-1/+2
|
* 53026: fix failure to free old value when setting new value of referenceJun. T2024-08-061-1/+2
|
* 53025: fix memory leaks and pointer errors upon named reference self-referenceBart Schaefer2024-08-051-5/+7
|
* 53023: fix memory leak of unset private parameterBart Schaefer2024-08-051-1/+1
|
* 52752: typeset -p fixes for local exports and "export -x" / "readonly -r" ↵Bart Schaefer2024-03-141-3/+18
| | | | output.
* 52692: local typeset of the name of a named reference hides the referenceBart Schaefer2024-03-051-1/+2
|
* unposted (cf. 52617): only scalars can instantiate a declared named referenceBart Schaefer2024-03-041-2/+8
|
* 52650 plus minor fixes: add -u for named references pointing to "upper" scopeBart Schaefer2024-03-041-12/+20
|
* 52652: fix obscure bug unsetting the array part of a tied parameter pairBart Schaefer2024-03-021-2/+5
|
* 52619 (plus tests): no empty element when appending array to unset scalarBart Schaefer2024-02-281-1/+1
|
* 52594: support for POSIX real-time signals with kill and trapOliver Kiddle2024-02-281-2/+12
| | | | Also add new -L option to kill for a more verbose listing of signals
* 52583: extra check for proper scope and existence of readonly specialsBart Schaefer2024-02-231-2/+23
|
* 52559: revise "typeset -p" with respect to local readonly special parametersBart Schaefer2024-02-201-2/+22
| | | | | Update doc and tests to describe handling of global readonly specials and to account for side-effects on zsh/param/private.
* unposted: referent of named reference cannot start with digitsBart Schaefer2024-02-181-0/+2
| | | | This duplicates ksh behavior and doesn't change useful functionality.
* 52513: fixes and doc for using nofork substitutions with private parametersBart Schaefer2024-02-031-4/+13
| | | | Also fixes a crash bug with {fd}>&N redirections and private parameters
* 52244: Fix a batch of minor defects reported by Coverity.Bart Schaefer2023-10-261-3/+2
| | | | | | Coverity defects 1547831, 1547826 (remove unused function), 1521551, 1500752, 1500747, 1401549, 1372423, 1270645, 1255799, 1255792, 1255789, 1255787, 1255782, 1255750
* 52195: cached_username is already metafied when initializing LOGNAMEBart Schaefer2023-10-011-4/+3
|
* 52193: handle UTF8-encoded USERNAME and therefore home directory in zcompileBart Schaefer2023-10-011-1/+1
| | | | Includes one unposted thinko fix ztrdup -> dupstring
* 51945: assorted documentation improvements, bug fixes, and new testBart Schaefer2023-07-261-4/+10
| | | | | | | | | | | | | | 1) Document the behavior of "typeset -n existing_var" (via Jun T. comment) 2) Prohibit "typeset -nm pattern" because, well, it's insane. Add test. 3) Improve doc for ${(!)ref} including ${{t!)ref} (Jun T.) 4) Fix doc for how-to unset of a named ref (Jun T.) 5) Allow "typeset +r -n ref" and "typeset +r +n ref" (Jun T.) 6) Fix "typeset -r -n ref=param" to create readonly references 7) Avoid accidental removal of PM_UNSET flag (Jun T.) and update test 8) Fix "typeset -gn ref=value" and add a test for it 9) Add tests for read-only reference behavior 10) Fix infinite recursion when resolving scope of an unset local named reference, add test.
* 51884: reset IFS if it contains invalid charactersJun-ichi Takimoto2023-06-261-0/+3
| | | | This happens only if MULTIBYTE option is on.
* 51887: namespaces recognized in math, incorrect usages rejected.Bart Schaefer2023-06-221-1/+26
|
* 51510: Skip namespaces in "set"/"typeset" output, add tests, fix bugBart Schaefer2023-03-061-0/+4
|
* 51509 (+ fix typo): Add ${(!)name} for the referred-to name of a named referenceBart Schaefer2023-03-061-2/+5
| | | | Extend ${!name} in ksh emulation for same
* 51484: Extend named reference handling for special parameters, improve doc.Bart Schaefer2023-03-051-44/+64
|
* 51483: Enable assignment and expansion of parameters with ksh-like namespace ↵Bart Schaefer2023-03-051-5/+6
| | | | prefixes.
* Fix access to autoloaded parameter.Peter Stephenson2023-02-211-1/+1
| | | | Namerefef resolution needs to happen on the parameter after autoload.
* 51437: Fix incorrectly-passed test case, masked by unrelated bug.Bart Schaefer2023-02-141-2/+3
| | | | | | A bug with zmodload when unloading/reloading a static module caused the state of the shell options to change during K01 test. Worked around it. Also changed warnnestedvar messages to look more like other such.
* 51430: Misc. problems with typeset and $parametersBart Schaefer2023-02-131-1/+1
| | | | | | * Fix and test for regression of assignment when using typeset command * Fix output of typeset +m and $parameters[ref] * Prevent segfault in typeset
* 51417: Check subscripts in named reference values more rigorously.Bart Schaefer2023-02-121-1/+10
|
* 51402: Some ksh/bash features, additional sanity checkingBart Schaefer2023-02-121-12/+80
| | | | | | | | | | | | * Add "unset -n" * Allow and enforce "typeset -n -r" for read-only references * "can't change type via subscript reference" error * Better checking for self-referential declarations/assignments * Ksh-style "foo=bar; typeset -n foo" creates foo=bar reference * Support "typeset -n ref; for ref in ..." * Subscripted references use NO_EXEC for safety * References assigned in called scopes reset scope at end * Allow named references to $! $? $$ $- $0 $_
* 51374: Expose named references in $parameters, fix substitution error.Bart Schaefer2023-02-121-2/+8
|
* 51360: Initial implementation of named references.Bart Schaefer2023-02-121-5/+185
|
* 51278: make (i) subscript flag for zero-length string consistentPeter Stephenson2023-01-161-1/+1
|
* 51212: remove STOUC() macroOliver Kiddle2022-12-161-12/+13
| | | | | This served as a workaround for ancient compilers where casts to unsigned char were broken.
* 51079: metafy sep in array subscript flag (s:sep:)Jun-ichi Takimoto2022-12-021-3/+7
| | | | this enable sep to contain \0 etc.
* 50081: reset global mbstate_t variables when LC_CTYPE changesJun-ichi Takimoto2022-04-201-1/+19
|
* 49602: only set LOGCHECK from the watch moduleOliver Kiddle2021-11-281-2/+1
|
* 49534, 49539: separate watch/log functionality out into a moduleOliver Kiddle2021-11-021-10/+6
|
* 49456: clean up detection of private params in nested scopes, update docBart Schaefer2021-10-041-0/+5
|
* 49422: improve support of --disable-dynamic-nssJun-ichi Takimoto2021-09-221-5/+8
| | | | see also 49392 (Vincent) and 49412 (Axel)
* 48857: declare "volatile" all globals that may be modified by signal handlersBart Schaefer2021-05-161-2/+4
|
* 47704: POSIX export and readonly ignore "-p" when parameter names also appearBart Schaefer2021-04-181-0/+4
|
* 48560: add TYPESET_TO_UNSET option to remove initialization of parametersBart Schaefer2021-04-181-3/+19
| | | | | | | | | | 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.