aboutsummaryrefslogtreecommitdiffhomepage
path: root/parse_tree.cpp
Commit message (Collapse)AuthorAge
* Correctly complete redirections. Fixes #1296Gravatar ridiculousfish2014-05-02
|
* Attempt to silence some warningsGravatar ridiculousfish2014-04-27
|
* Run restyle.sh to enforce style rules.Gravatar ridiculousfish2014-03-31
|
* Fix initially backgrounded jobs. Fixes #1373Gravatar ridiculousfish2014-03-28
|
* Make the argument list parsing in complete -a robust against weirdGravatar ridiculousfish2014-03-27
| | | | tokens like &. Improve the error message when such tokens are found.
* Teach parser_t how to parse an argument list that contains newlines, forGravatar ridiculousfish2014-03-27
| | | | complete -a support. Fixes #1369
* Merge branch 'master' into parser_cleanupGravatar ridiculousfish2014-03-26
|\ | | | | | | | | | | Conflicts: parse_constants.h parse_tree.h
| * Space and time optimizations for parse_node_t. Reduced size from 48Gravatar ridiculousfish2014-03-25
| | | | | | | | bytes to 20 bytes.
| * Prefer swap() member function to std::swap. We were hitting theGravatar ridiculousfish2014-03-25
| | | | | | | | inefficient generic std::swap for some derived types.
* | Excise use of parser_t's error() functionality. Thread aGravatar ridiculousfish2014-03-21
| | | | | | | | | | | | parse_error_list_t through all of the expand functions, enabling them to report errors more directly. Improve aspects of error reporting for expansion failures.
* | Rewrite parser_t::test_args and parser_t::eval_args to use new parserGravatar ridiculousfish2014-03-20
|/
* Reorganize keyword recognition in the parser to use a single tableGravatar ridiculousfish2014-03-10
|
* Allow the caller to specify the goal node when parsing a string via theGravatar ridiculousfish2014-03-04
| | | | new parser. This enables parsing either a job list or an argument list.
* Revert "Merge pull request #1317 from pullreq/cpp"Gravatar ridiculousfish2014-02-28
| | | | | | | This reverts commit 74135c0600d5dcc40d396d0e7293c17b8d4bdaa7, reversing changes made to 6d749789ce240a3e6f1447777db63fd8e7525560. See discussion in #1317
* Fixes .c -> .cpp in comments. For doxygen.Gravatar Geoff Nixon2014-02-27
|
* Dead storesGravatar Geoff Nixon2014-02-27
|
* Tweak error reporting in new parser to use fewer linesGravatar ridiculousfish2014-02-17
|
* Reimplement exec parsing. Instead of special-casing exec as a command,Gravatar ridiculousfish2014-02-13
| | | | | | promote it to a decoration (like 'command' or 'builtin'). This makes tab completion and syntax highlighting treat exec's first argument as a command and is otherwise a nice simplification. Fixes #1300
* Unbreak C++11 due to narrowing; use non-conflicting declaration FISH_COLORS ↵Gravatar ridiculousfish2014-02-05
| | | | instead of COLORS; remove deprecated register type.
* Update style and formatting to conform to fish style guide.Gravatar ridiculousfish2014-01-15
|
* Fix for indentation test failuresGravatar ridiculousfish2014-01-15
|
* Fix for issue where 'function' would not define a function if theGravatar ridiculousfish2014-01-14
| | | | arguments came before its name. Fixes #1240
* Fix for issue in new parser where no error would be reported if the veryGravatar ridiculousfish2014-01-14
| | | | first token is an error. Fixes #1239.
* Fix for issue where unterminated quotes would attempt to be executed,Gravatar ridiculousfish2014-01-14
| | | | instead of continuing edit onto the next line.
* Correctly report errors for 'and' and 'or' in pipelines with new parserGravatar ridiculousfish2014-01-13
|
* Support for special && and || error messages in new parserGravatar ridiculousfish2014-01-13
|
* Eliminate class parse_tGravatar ridiculousfish2014-01-12
|
* Improvements to error messages with new parser. In particular, "nakedGravatar ridiculousfish2014-01-12
| | | | builtins" now print their help (e.g. just 'while')
* Miscellaneous minor fixes based on cppcheck static analyzerGravatar ridiculousfish2014-01-12
|
* Add a convenience method next_node_in_node_list which can be used forGravatar ridiculousfish2014-01-05
| | | | iterating over lists in a parse tree
* Fix for wrong syntax highlighting in the face of tokenizer errors, e.g.Gravatar ridiculousfish2014-01-03
| | | | "echo 'hi"
* Support in parse_dump_tree for "forests", which occur when there's aGravatar ridiculousfish2014-01-03
| | | | parse error
* Support for stack overflow and infinite recursion detection in newGravatar ridiculousfish2014-01-01
| | | | parser
* Further improvements to error reporting with new parserGravatar ridiculousfish2014-01-01
|
* Improve error reporting for tokens ending with newlinesGravatar ridiculousfish2013-12-31
|
* Hook up for statements, if statements, and function definition in newGravatar ridiculousfish2013-12-27
| | | | parser
* Fix for issue where last job_list in tree would have a -1 production_idxGravatar ridiculousfish2013-12-26
| | | | because we never actually sent the terminal token type
* Very early work in adopting new parser for actual execution of commands.Gravatar ridiculousfish2013-12-23
| | | | Not turned on yet.
* Clean up some error messages. Don't show the line in the error messageGravatar ridiculousfish2013-12-16
| | | | if it's the first line and we're interactive, since then it's obvious
* Finish rewriting detect_errors to use new parser. All tests now pass (!)Gravatar ridiculousfish2013-12-12
|
* Initial work towards rewriting detect_errors to use new parser.Gravatar ridiculousfish2013-12-11
| | | | Low-level tests currently pass; high level tests fail.
* Improve error reporting in new parser. Tests now pass.Gravatar ridiculousfish2013-12-08
|
* Initial work towars improved error reporting. Tests currently fail.Gravatar ridiculousfish2013-12-08
|
* Rewriting indenting functionality to use new parserGravatar ridiculousfish2013-12-08
|
* Correctly detect unbalanced 'end' in syntax highlightingGravatar ridiculousfish2013-11-25
|
* Revert "Remove undefined behavior from parse_error()."Gravatar ridiculousfish2013-10-16
| | | | | | | | Per my understanding this is not undefined behavior. No ABI depends on the called function reading variadic arguments, nor does any standard require it. So if this is crashing something else must be going on. This reverts commit 22d22f6aa883a6f48e9df0cd55254faa2cfc425e.
* Remove undefined behavior from parse_error().Gravatar Konrad Borowski2013-10-14
| | | | | | | | | Having function that takes arbitrary number of arguments without actually reading them is undefined behavior, as it could cause stack to be in the corrupted state. Now arguments after token are parsed, even if they aren't needed. See also: http://asciinema.org/a/5904
* Syntax highlighting for file redirectionsGravatar ridiculousfish2013-10-13
|
* Adopt new parser in tab completionsGravatar ridiculousfish2013-10-12
|
* Rework decision process for whether to interpret keywords as structuralGravatar ridiculousfish2013-10-12
| | | | | or as commands (for LL parser). Will allow 'builtin --' to parse as a plain statement, instead of a decorated statement '--'