Harald van Dijk

Results 35 comments of Harald van Dijk

This is a common problem with Git, especially on systems where both the file system and make support sub-second resolution for file modification time. When cloning a repository, Git will...

Sorry for potentially making this worse, but isn't subtraction only defined in ISO EBNF, rather than ABNF? If so, that would mean there's both an issue in libfsm for using...

Thinking about this a bit more, it occurs to me that there are more cases that weren't handled, and aren't handled by my PR. `a{2,3}{2,3}` can be rewritten to `a{4,9}`....

> Thinking about this a bit more, it occurs to me that there are more cases that weren't handled, and aren't handled by my PR. `a{2,3}{2,3}` can be rewritten to...

Yeah, that's fine, that's a good observation to make. It still needs to be handled in the AST, but perhaps all the existing `a{...}{...}` PCRE tests and the new one...

A brute force search found one edge case that would be mishandled if it hadn't already been handled by earlier code: it is invalid to rewrite `a{0,0}{x,}` or `a{x,}{0,0}` as...

> Looking at the first few backtraces I wonder if there's a `ast_free` missing if `ast_rewrite` fails in https://github.com/katef/libfsm/blob/main/src/libre/re.c#L116-L118. There is an `ast_free` missing there, but if parsing fails, it...

> Thanks for the idea @hvdijk! @katef also mentioned that. The downside is that the sid code ends up littered with try/catch blocks, and if you miss one you still...

Doing this in the parser: if actions in the parser are rewritten to take `:ast_expr &` reference parameters, instead of returning `:ast_expr` by value, it is possible to avoid a...

The idea is that after `node = ();`, `node` is a null pointer. No expression is constructed yet at that point, this merely declares that `node` is a local variable...