Skip to content

Conversation

@zharinov
Copy link
Member

@zharinov zharinov commented Jan 3, 2026

Summary

  • Fix recursive quantified patterns breaking outer sequence matching
  • Save cursor position in Frame after Call navigation, restore on Return
  • Ensures Nav::Next in quantifier loops finds correct sibling

Root Cause: After a Call instruction returns, cursor was left wherever callee left it (potentially deep in subtree). Outer quantifier's Nav::Next navigated from wrong tree depth.

Test plan

  • All 751 existing tests pass
  • Recursive query (closure (Rec)*) now returns all matching siblings

@zharinov zharinov enabled auto-merge (squash) January 3, 2026 17:58
@zharinov zharinov merged commit 4e57b22 into master Jan 3, 2026
4 checks passed
@zharinov zharinov deleted the fix/cursor-restore branch January 3, 2026 17:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants