This finishes support for dispatch sharing, and refactors the Silver compiler to use it.
Remove support for unique references and undecorates to. Uniqueness analysis is kept, but significantly condensed into a check for multiple non-mutually-exclusive sharing of the same tree.
Significant refactoring of the flow analysis, inherited completeness checking is now expressed as a rewriting process over a DecSiteTree decision tree. Introduced flow graphs for dispatch signatures. Updated and fix bugs with hidden transitive dependency checks.
Fixes #812, fixes #810. Depends on #831.
Changes
This finishes support for dispatch sharing, and refactors the Silver compiler to use it.
Remove support for unique references and
undecorates to
. Uniqueness analysis is kept, but significantly condensed into a check for multiple non-mutually-exclusive sharing of the same tree.Significant refactoring of the flow analysis, inherited completeness checking is now expressed as a rewriting process over a
DecSiteTree
decision tree. Introduced flow graphs for dispatch signatures. Updated and fix bugs with hidden transitive dependency checks.Documentation
https://github.com/melt-umn/melt-website/pull/60
Also added source comments as needed.
Testing
Please briefly describe the tests you have written for the changes included in this pull request, or why it is not possible to test the changes.
Please remove all the prefilled text other than the headings before submitting your pull request.