From df5ad0550626a4f6b4c6fc46b8822c98607e858f Mon Sep 17 00:00:00 2001 From: Krasimir Angelov Date: Sun, 13 Sep 2026 16:21:13 +0200 Subject: [PATCH] don't allow syntagmatic words where BIND is expected --- src/runtime/c/pgf/parser.cxx | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/runtime/c/pgf/parser.cxx b/src/runtime/c/pgf/parser.cxx index 4c8e1e73b..86a5e43bf 100644 --- a/src/runtime/c/pgf/parser.cxx +++ b/src/runtime/c/pgf/parser.cxx @@ -1479,9 +1479,16 @@ PgfAbstractParser::State *PgfParser::new_state(const PgfTextSpot &start, prob_t void PgfParser::symbol_token(Item *item, State *state, ref symks) { - PgfTextSpot next = state->end; - if (text_symbol_cmp(sentence,&next,symks,case_sensitive) != 0) + if (state->needs_bind) { + delete item; return; + } + + PgfTextSpot next = state->end; + if (text_symbol_cmp(sentence,&next,symks,case_sensitive) != 0) { + delete item; + return; + } State *next_state = new_state(next, item->inside_prob+item->outside_prob);