summaryrefslogtreecommitdiffstats
path: root/parser.y
Commit message (Collapse)AuthorAgeFilesLines
* * parser.y (grammar): Fixes for bison 2.4.1. Remove superfluous actionKaz Kylheku2009-11-261-2/+1
| | | | in chrlit. Include <stdlib.h> for abort.
* Fix a build breakage that may happen on some platforms.Kaz Kylheku2009-11-251-0/+2
| | | | | | | | | The parser.y file includes "utf8.h", which uses the the type wint_t. It also includes "lib.h" which uses "wchar_t". But it fails to include any headers which define these types. The generated y.tab.c picks up wchar_t by the Bison-inserted inclusion of <stdlib.h>, so that's how we got that. But wint_t does not come from any of the headers---if they are standard-conforming.
* Fixed broken yyerrorf. It was still taking char *, and passingKaz Kylheku2009-11-241-32/+39
| | | | | that as an object to vformat, resulting in #<garbage: ...> output.
* Renaming global variables that denote symbols, such that theyKaz Kylheku2009-11-241-52/+53
| | | | have a _s suffix.
* Improving portability. It is no longer assumed that pointersKaz Kylheku2009-11-231-1/+2
| | | | | | | | can be converted to a type long and vice versa. The configure script tries to detect the appropriate type to use. Also, some run-time checking is performed in the streams module to detect which conversions specifier strings to use for printing numbers.
* Introducing symbol packages. Internal symbols are now inKaz Kylheku2009-11-211-12/+14
| | | | | | | | | | a system package instead of being hacked with the $ prefix. Keyword symbols are provided. In the matcher, evaluation is tightened up. Keywords, nil and t are not bindeable, and errors are thrown if attempts are made to bind them. Destructuring in dest_bind is strict in the number of items. String streams are exploited to print bindings to objects that are not strings or characters. Numerous bugfixes.
* * parser.y (grammar): Fix error actions that do not assignKaz Kylheku2009-11-201-12/+23
| | | | a value to $$.
* Changing ``obj_t *'' occurences to a ``val'' typedef. (Ideally,Kaz Kylheku2009-11-201-22/+22
| | | | | we wouldn't have to declare object variables at all, so why use an obtuse syntax to do so?)
* Big conversion to wide characters and UTF-8 support.Kaz Kylheku2009-11-111-2/+3
| | | | | | | | | This is incomplete. There are too many dependencies on wide character support from the C stream I/O library, and implicit use of some encoding which may not be UTF-8. The regex code does not handle wide characters properly. Character type is still int in some places, rather than wchar_t. Test suite passes though.
* Start of implementation for freestyle matching.Kaz Kylheku2009-11-021-14/+23
| | | | | | | | | | | Lazy strings implemented, incompletely. Changed string function to implicitly strdup; non-strdup version changed to string_own. Fixed wrong uses of strdup rather than chk_strdup. Functions added to regex module to provide regex matching as a state machine to which characters are fed.
* txr-016 2009-10-16txr-016Kaz Kylheku2017-07-311-13/+28
|
* txr-015 2009-10-15txr-015Kaz Kylheku2017-07-311-0/+593