Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | 35643: Redirections after typeset assignments were broken. | Peter Stephenson | 2015-06-28 | 1 | -0/+2 |
| | |||||
* | various posts: Implement assignment parsing for typeset. | Peter Stephenson | 2015-06-24 | 1 | -21/+110 |
| | | | | | | | | | | | | Typeset assignments now work like raw assignments except for no "+=" and no GLOB_ASSIGN. Documented in typeset builtin doc and mentioned in release notes. Tests to ensure basic sanity. Enabled by default, can be turned off by "disable -r" with typeset family of commands. | ||||
* | 35306: "test -z \(" failed due to parse confusion | Peter Stephenson | 2015-05-27 | 1 | -8/+17 |
| | |||||
* | 35250: Fix case documentation (SH_GLOB) | Peter Stephenson | 2015-05-21 | 1 | -2/+2 |
| | |||||
* | 35248: treat fully parenthised zsh patterns as complete case patterns again | Peter Stephenson | 2015-05-21 | 1 | -10/+85 |
| | |||||
* | 35184: Additional case fix for 35168. | Peter Stephenson | 2015-05-18 | 1 | -2/+0 |
| | | | | | Lexical analysis flags got screwed up after a "|", so we didn't parse patterns properly, in particular those with parentheses. | ||||
* | 35168: Improve parsing of case patterns. | Peter Stephenson | 2015-05-18 | 1 | -66/+23 |
| | | | | | | | | | | | | | | "|" is now found properly by looking for words that come from the lexical analyser, rather than hacking a pattern returned in one dollop. Update some completion functions that need extra quoting as a result. Add test for new parsing. Update version number to 5.0.8-dev-3 because of wordcode incompatibility. | ||||
* | 34921: handle error in recursive par_event(). | Peter Stephenson | 2015-04-17 | 1 | -0/+1 |
| | | | | Here documents in an interrupted list caused bad juju. | ||||
* | 34905: no parse error after keyboard interrupt. | Peter Stephenson | 2015-04-17 | 1 | -1/+1 |
| | | | | | | | | Handled generally, though only showing up in special nested cases. Also fix ZLE so it doesn't cancel the interrupt flag when not actually returning from a local keymap. | ||||
* | 34514: Back out 34485, an alternate solution needs to be worked out. | Barton E. Schaefer | 2015-02-12 | 1 | -2/+4 |
| | | | | (Tweaked to keep the unrelated hunk of the E01 test.) | ||||
* | 34485: More rationalisation for anonymous functions. | Peter Stephenson | 2015-02-09 | 1 | -4/+2 |
| | | | | | | | | Don't attempt to treat as "simple" case as there are too many hidden problems. Pull out some post-execution functions to a common case in execcmd(). | ||||
* | Rearrange context saving. | Peter Stephenson | 2015-01-09 | 1 | -3/+80 |
| | | | | | | | Variables are now associated with the module that declares them, being initialised and saved/restored there. However, as many variables are used for communication between modules, many of them are set in multiple places, so the assignment is ambiguous. | ||||
* | Fix command substitutions to parse contents as they are read in. | Peter Stephenson | 2015-01-08 | 1 | -9/+20 |
| | | | | | | | Do this by refactoring misnamed lexsave()/lexrestore() to allow continuity of history and input. Add test. | ||||
* | 33876: etc.: Separate errors and keyboards interrupts | Peter Stephenson | 2014-12-11 | 1 | -15/+16 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Combination of 12 commits from interrupt_abort branch. Basic strategy is to introduce bits to errflag and to set and reset them separately. Remove interrupt status on return to main keymap. Turn off ERRFLAG_INT for always block. Restore bit thereafter: we probably need a new variable in order to allow user interrupts to be reset in the always block. Add TRY_BLOCK_INTERRUPT This works the same as TRY_BLOCK_ERROR, but for a SIGINT, too. Ensure propagation of SIGINT from exited job. If received by foreground job, shell uses ERRFLAG_INT, not ERRFLAG_ERROR, to set the new state. Reset errflag before precmd() Add always block in _main_completion to fix ZLS_COLORS Ensures we get the right state of $ZLS_COLORS at the end of _main_complete even if there's an interrupt. However, the "right state" is a bit messy as it depends on styles. | ||||
* | unposted: fix compiler set-but-not-used warning. | Wayne Davison | 2014-11-28 | 1 | -2/+4 |
| | |||||
* | 33346: another bit of the 33345 repair | Bart Schaefer | 2014-10-03 | 1 | -1/+2 |
| | |||||
* | 33345: fix anonymous function complex command handling. | Peter Stephenson | 2014-10-03 | 1 | -83/+84 |
| | | | | | | Longstanding problem caused simple anonymous function incorrectly to reset the overall "complext" state, causing wordcode to be diverted into execsimple(), which caused a crash 'cos ist wasn't simple. | ||||
* | unposted: comments in previous commit were reversed | Peter Stephenson | 2014-10-03 | 1 | -4/+4 |
| | |||||
* | 33343: Variant anonymous function synax with arguments. | Peter Stephenson | 2014-10-03 | 1 | -7/+24 |
| | | | | Don't expand arguments as if in command position. Test. | ||||
* | 33285: apply function definition redirections at execution | Peter Stephenson | 2014-09-29 | 1 | -9/+78 |
| | |||||
* | 33242: tokens following if, for, repeat, while aren't in command position | Peter Stephenson | 2014-09-26 | 1 | -2/+14 |
| | |||||
* | 32609: [[ $var ]] behaves as [[ -n $var ]] for bash/ksh compatibility | Barton E. Schaefer | 2014-05-13 | 1 | -13/+28 |
| | | | | | | Also restore ksh [ -t ] compatibility when POSIX_BUILTINS is not set, and allow operators defined by modules to be called with no arguments, although this affects only runtime interpretation, not parsing. | ||||
* | 32552 (updated by 32560): fix segfault when using process substitution in ↵ | Andrew Waldron | 2014-04-18 | 1 | -2/+2 |
| | | | | | | anonymous function argument list Also disallow process substitution in function name position. | ||||
* | 31696: In "test" No One Can Hear If You Shriek. | Peter Stephenson | 2013-09-04 | 1 | -3/+11 |
| | | | | Treat ! as a string in "test ! -a ..." and "test ! -o ...". | ||||
* | 31574: alternative fix for bad fd if no FD_CLOEXEC. | Peter Stephenson | 2013-07-25 | 1 | -8/+16 |
| | | | | Remove dump records more consistently in that case. | ||||
* | 31545: Use of FD_CLOEXEC to remove possibility of fd reuse. | Peter Stephenson | 2013-07-20 | 1 | -0/+7 |
| | | | | | File descriptors of mmap'd dump files are closed if and only if an exec is performed. | ||||
* | this prevent process-based features from working in their arguments | Peter Stephenson | 2012-12-21 | 1 | -2/+4 |
| | |||||
* | 30735: array substitutions aren't simple: | Peter Stephenson | 2012-10-25 | 1 | -0/+5 |
| | | | | prevent crash on process substitution therein | ||||
* | 30726: make shell options passed to emulate stick along with the emulation | Peter Stephenson | 2012-10-11 | 1 | -1/+1 |
| | |||||
* | 30715: use enum lextok for variables containing lexical tokens | Peter Stephenson | 2012-10-05 | 1 | -22/+25 |
| | |||||
* | 29633: more care with anonymous and other functions | Peter Stephenson | 2011-08-03 | 1 | -2/+8 |
| | |||||
* | 29626: arguments to anonymous functions shouldn't be parsed as command words | Peter Stephenson | 2011-07-28 | 1 | -0/+2 |
| | |||||
* | 29492: add argument handling to anonymous functions | Peter Stephenson | 2011-06-19 | 1 | -2/+28 |
| | |||||
* | 29491: remove some variables set but not used | Peter Stephenson | 2011-06-19 | 1 | -2/+2 |
| | |||||
* | Paul 28538 / me 28540 / couple of unposted casts: | Peter Stephenson | 2010-12-20 | 1 | -4/+4 |
| | | | | use char * for pointer arithmetic rather than void * | ||||
* | 28338: keep =~ from inverting sense of subsequent tests (after &&/||) | pdpennock | 2010-10-10 | 1 | -1/+2 |
| | |||||
* | 28259: Finally fix some ancient problems with here-documents | Peter Stephenson | 2010-09-14 | 1 | -7/+24 |
| | |||||
* | Check the return value of all pipe(), read(), and write() calls. | Wayne Davison | 2009-12-16 | 1 | -5/+5 |
| | | | | | | Gets rid of all the remaining "ignoring return value" compiler warnings, and makes some read/write operations safer by ensuring that an EINTR is handled. | ||||
* | 27284: better use of movefd() | Peter Stephenson | 2009-09-22 | 1 | -0/+2 |
| | |||||
* | users/14240: assignment before a function definition is an error | Peter Stephenson | 2009-07-17 | 1 | -1/+7 |
| | |||||
* | 27092: missing then-clause for if wasn't an error | Peter Stephenson | 2009-07-06 | 1 | -0/+4 |
| | |||||
* | c.f. 26586: rename yylex to zshlex and yytext to zshlextext | Peter Stephenson | 2009-02-25 | 1 | -98/+98 |
| | |||||
* | 26546, 26556: sticky emulation for functions defined in emulate ... -c ... | Peter Stephenson | 2009-02-11 | 1 | -0/+1 |
| | | | | environments, plus documentation | ||||
* | 26061: fix clash between process subst and numeric glob | Peter Stephenson | 2008-11-18 | 1 | -4/+5 |
| | | | | 26062: additional compmatch change, missed from 26047 | ||||
* | users/13295, tweaked: dont reset line numbers when parsing strings, sometimes | Peter Stephenson | 2008-09-29 | 1 | -1/+1 |
| | |||||
* | users/13288: Src/parse.c: don't report parse errors on aborted lines | Peter Stephenson | 2008-09-24 | 1 | -6/+8 |
| | |||||
* | 25641: add emulation option (NO_)MULTI_FUNC_DEF | Peter Stephenson | 2008-09-11 | 1 | -0/+3 |
| | |||||
* | 25587: fix a==(stuff) and associated stuff. | Peter Stephenson | 2008-09-01 | 1 | -0/+12 |
| | |||||
* | 25571: when parsing use line numbers for the start of a token, not the end | Peter Stephenson | 2008-08-31 | 1 | -1/+1 |
| | | | | add test and move debug trap tests to new file | ||||
* | 25247 with further modifications: add $funcsourcetrace | Peter Stephenson | 2008-08-11 | 1 | -4/+8 |
| |