aboutsummaryrefslogtreecommitdiffhomepage
path: root/parse_execution.cpp
Commit message (Collapse)AuthorAge
* Teach while loops to not hang forever with no-executeGravatar ridiculousfish2014-07-11
| | | | Fixes #1543
* Fix sense of test in parse_execution to issue a barrier if an externalGravatar ridiculousfish2014-07-06
| | | | command has run
* Do not continue execution if argument expansion fails. Fixes #1488Gravatar ridiculousfish2014-05-31
|
* Fix a duplicated variable, and defeat some warnings in fish_testsGravatar ridiculousfish2014-04-27
|
* Set the job property of block_t before expanding arguments associatedGravatar ridiculousfish2014-04-02
| | | | with the job, fixing psub. Fixes #1394
* Run restyle.sh to enforce style rules.Gravatar ridiculousfish2014-03-31
|
* Fix switch statement syntax highlighting so that the arguemnt to switchGravatar ridiculousfish2014-03-28
| | | | | is colored as a parameter, not a command. Promote this from a tok_string to a symbol_argument in the grammar too.
* Fix for crash with malformed switch statement. Fixes #1376Gravatar ridiculousfish2014-03-28
|
* Fix initially backgrounded jobs. Fixes #1373Gravatar ridiculousfish2014-03-28
|
* 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::current_line() to respect new parserGravatar ridiculousfish2014-03-20
| |
* | Fix line number reporting in new parserGravatar ridiculousfish2014-03-20
| |
* | Clean up various block types and state as part of new parserGravatar ridiculousfish2014-03-02
|/
* Implement status -n (line number) with new parserGravatar ridiculousfish2014-03-01
|
* 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
|
* Expand the variable name as an ordinary parameter in for loops. AddedGravatar ridiculousfish2014-02-21
| | | | test for it too.
* 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
* Tests and fix to allow return to work correctly within if statements. Closes ↵Gravatar ridiculousfish2014-02-12
| | | | #1297.
* Partially rework profiling. Fix profiling crash with new parser. FixesGravatar ridiculousfish2014-02-09
| | | | 1295
* Make if statements always return success at the end, matching otherGravatar ridiculousfish2014-02-07
| | | | shells. Fixes #1061.
* Highlight the entire variable name, not just the dollar sign. Fixes #1201Gravatar ridiculousfish2014-02-03
|
* Update style and formatting to conform to fish style guide.Gravatar ridiculousfish2014-01-15
|
* Further cleanup and improvements to error messagesGravatar ridiculousfish2014-01-13
|
* Added tests for piping an fd other than stdoutGravatar ridiculousfish2014-01-13
|
* Include missing algorithm header in parse_execution.cppGravatar ridiculousfish2014-01-12
|
* Improvements to error reporting. In particular, we now append a newlineGravatar ridiculousfish2014-01-08
| | | | | | in reader_shell_test, so that there's always a statement terminator. Otherwise commands like 'echo |' would not be considered an error (just incomplete).
* Miscellaneous optimizations to reduce string copyingGravatar ridiculousfish2014-01-07
|
* Support for "simple block" optimization, where we can run blocksGravatar ridiculousfish2014-01-07
| | | | directly if there are no arguments or redirections to the block itself
* Add a convenience method next_node_in_node_list which can be used forGravatar ridiculousfish2014-01-05
| | | | iterating over lists in a parse tree
* Support for Ctrl-C cancellation in new parser. Added tests for it too.Gravatar ridiculousfish2014-01-02
|
* 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
|
* Clean up and rationalize error handling in parse_execution.cppGravatar ridiculousfish2013-12-31
|
* Support for implicit cd, no-exec, and the exit builtin. All tests nowGravatar ridiculousfish2013-12-29
| | | | pass (!). Error reporting still unsteady.
* Support for break/continue with new parser executionGravatar ridiculousfish2013-12-28
|
* Make eval_node_at_offset return an error indication instead of the exitGravatar ridiculousfish2013-12-28
| | | | status of the last command
* Fix issues related to redirections and block level IO with new parserGravatar ridiculousfish2013-12-28
|
* Bringup of function definitions, switch statements with new parserGravatar ridiculousfish2013-12-27
|
* Hook up for statements, if statements, and function definition in newGravatar ridiculousfish2013-12-27
| | | | parser
* Fix a few errors identified by testing new parserGravatar ridiculousfish2013-12-26
|
* Facilities for turning on new AST-based parser.Gravatar ridiculousfish2013-12-26
|
* Cleanup thrashing around in parser_t. New parser execution lives inGravatar ridiculousfish2013-12-26
| | | | parse_execution.cpp
* New ideas about how to use new parser for execution. Beginnings ofGravatar ridiculousfish2013-12-26
| | | | implementation.
* Factor execution aspects from parser_t to parse_execution_context_t .Gravatar ridiculousfish2013-12-24
Still searching for best way to use new parser for execution.