-
-
Notifications
You must be signed in to change notification settings - Fork 38
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Fix "match" not incrementing certain bindings
When matching against patterns such as `Foo(Bar(var))`, if the outer-most variable was a reference, the pattern matching compiler would generate match variables with an incorrect type. This would then result in the MIR code moving a value into `var` _without_ an increment, instead of performing an increment and moving the reference into the variable. This would then manifest itself as a reference counting error when dropping an owned value matched against. This fixes #580. Changelog: fixed
- Loading branch information
1 parent
31a8a17
commit 20fa7f6
Showing
2 changed files
with
24 additions
and
1 deletion.
There are no files selected for viewing
This file contains 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
This file contains 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