Repository navigation
fix(union)!: a zero fixed union weight disables its child - #187
Merged
Merged
Conversation
The docs said a zero weight disables a union child; the compiler rejected every zero weight instead. Zero weights are now accepted: the scheduler never pulls from such a child, the composition never opens its cursor, and the union's size leaves it out, so an enclosing `candidate_count` union weighs it as absent. Fixed weights that are all zero are rejected, because such a union can never produce a move. Closes #178. BREAKING CHANGE: the configuration error for fixed union weights changed from "must all be positive" to "need at least one positive weight"; a union with some zero weights now compiles and runs without those children.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #178. Base
main@601f8968, one commit2ecd40c1.Gate on
2ecd40c1(fmt, clippy -D warnings, doc-names file-length facade-reachability public-api deps, rustdoc -D warnings, examples, workspace all-feature tests, doctests): EXIT 0, 1531 passed, 0 failed, 65 result lines. Mutation check: counting a disabled child in the union size failsa_disabled_child_is_not_counted_in_the_union_size.