From 5fd2f6b8c594c6cbc1313efbcc28b53c15ba85d5 Mon Sep 17 00:00:00 2001 From: Bruce Hill Date: Sat, 14 May 2022 16:04:07 -0400 Subject: [PATCH] Bugfix for (Foo: :X blah) parsing as (Foo:: X blah) --- pattern.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pattern.c b/pattern.c index be2fb76..83f2b29 100644 --- a/pattern.c +++ b/pattern.c @@ -210,7 +210,7 @@ static pat_t *_bp_definition(const char *start, const char *end) const char *str = after_name(start, end); size_t namelen = (size_t)(str - start); if (!matchchar(&str, ':', false, end)) return NULL; - bool is_tagged = matchchar(&str, ':', false, end); + bool is_tagged = str < end && *str == ':' && matchchar(&str, ':', false, end); pat_t *def = bp_pattern_nl(str, end, false); if (!def) parse_err(str, end, "Could not parse this definition."); str = def->end;