- Feb 21, 2020
-
-
Sven M. Hallberg authored
-
Sven M. Hallberg authored
doh! fixes issue 92 again.
-
- Feb 20, 2020
-
-
Sven M. Hallberg authored
tentative commit. this should solve issue 92, but isn't working, yet. the idea is to taint any memoized follow set that hit a recursive loop, directly or indirectly. the recursive calls (h_follow_rec) are allowed to use these intermediates, but propagate the taint. the top-level routine (h_follow) places the original taint on its result and may remove it at the end. it will not return memoized results that are tainted (but compute them afresh).
-
Sven M. Hallberg authored
-
Sven M. Hallberg authored
without it, our test for issue 92 is no good (will always pass). we could probably officially put it back if we simplify "dead" symbols (that have no productions) out of the grammar beforehand.
-
- Feb 17, 2020
-
-
Sven M. Hallberg authored
there is a case where fs can be empty: when reducing by lhs would lead to certain parse failure, by means of h_nothing_p() for instance. fixes issue 83.
-
Sven M. Hallberg authored
cf. hammer/hammer#83
-
Sven M. Hallberg authored
-
Sven M. Hallberg authored
-
Sven M. Hallberg authored
-
Sven M. Hallberg authored
-
Sven M. Hallberg authored
-
Sven M. Hallberg authored
this makes the computation more wasteful but avoids issue 92. intermediate results could end up in the memoization table and be treated as final by later calls to h_follow(). this problem could appear or not depending on the order of nonterminals (i.e. pointers) in a hashtable.
-
Sven M. Hallberg authored
-
Sven M. Hallberg authored
-
Sven M. Hallberg authored
-
Sven M. Hallberg authored
-
Sven M. Hallberg authored
hammer/hammer#92
-
- Feb 14, 2020
- Feb 11, 2020
-
-
Sven M. Hallberg authored
fixes issue 91
-
Sven M. Hallberg authored
-
Sven M. Hallberg authored
"assertion failure with ambiguous LALR compiles" hammer/hammer#91
-
Sven M. Hallberg authored
i was trying to find out why the test suite suddenly insisted on being so noisy. turns out glib now does TAP by default and all messages get printed, --verbose or not. the old mode is considered deprecated. cf. https://en.wikipedia.org/wiki/Test_Anything_Protocol https://gitlab.gnome.org/GNOME/glib/commit/ad175766575b23be920f41cdb1c350447c743347 https://gitlab.gnome.org/GNOME/glib/commit/19aafc4ca4dba2b63d24f01d23890ff30ef9b133
-
- Feb 09, 2020
-
-
Sven M. Hallberg authored
this omission has nagged me a number of times and i think it must have been a simple oversight.
-
Sven M. Hallberg authored
this way the assert will fire from the user's code rather than the one in glue.c:h_seq_index() which is not informative without a stack trace.
-
Sven M. Hallberg authored
also includes commented-out tests for functionality that i discovered we never provided, namely position and length information at the granularity of HParsedTokens. at the moment, these fields always seem to be 0. we should probably fix that or get rid of them. in the latter case it might make sense to move this information to HParseResult, so the user can get access to it via h_action() as needed.
-
Sven M. Hallberg authored
the regex backend already returned 2 for an internal failure, contrary to documentation, so this mainly brings the latter in line with existing behavior. at the same time, fix a bug: h_compile would previously return "false" (0) on exceptions (longjmp). make use of our new freedom to signal different error conditions from the context-free backends, notably "incompatible combinator" vs. "unresolvable conflict".
-
- Feb 03, 2020
-
-
Andrea Shepard authored
-
- Jan 12, 2020
-
-
Andrea Shepard authored
-
Andrea Shepard authored
-
Andrea Shepard authored
-
Andrea Shepard authored
Provide an alternate interface to the arena allocator to avoid wasting time on unnecessary calls to memset()
-
- Jan 11, 2020
-
-
Andrea Shepard authored
Eliminate unnecessary hash computations in the packrat backend (roughly 2.5x speed in one benchmark)
-
Andrea Shepard authored
-
- Jan 07, 2020
-
-
picomeg authored
-
- Dec 09, 2019
-
-
Andrea Shepard authored
-
- Dec 05, 2019
-
-
Meredith L. Patterson authored
A working h_drop_from which rewrites its underlying sequence as a sequence containing some ignored parsers.
-
- Dec 03, 2019
-
-
Sven M. Hallberg authored
-
- Dec 02, 2019
-
-
Sven M. Hallberg authored
-