Skip to content

fix evalLand empty-branch guard and propagate INSTANCE substitutions in evalUserBoundOp#84

Open
mmsqe wants to merge 13 commits intowill62794:masterfrom
mmsqe:fix_substitution
Open

fix evalLand empty-branch guard and propagate INSTANCE substitutions in evalUserBoundOp#84
mmsqe wants to merge 13 commits intowill62794:masterfrom
mmsqe:fix_substitution

Conversation

@mmsqe
Copy link
Contributor

@mmsqe mmsqe commented Mar 17, 2026

  • dd8824a: evalLand assumed both LHS and RHS always produce non-empty boolean results. When a branch returned [], it could access invalid values and throw instead of returning no branch.
  • cc2cbd6: evalUserBoundOp did not always carry INSTANCE ... WITH substitutions into evaluation of imported operator definitions, substituted identifiers could be resolved in wrong context and lookup fails.
  • 72ff13d: fixed implicit substitution handling for module instantiation, so symbols already in scope can be resolved implicitly without requiring redundant explicit self-substitutions.

mmsqe added a commit to mmsqe/blockstm-spec that referenced this pull request Mar 18, 2026
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.

1 participant