Skip to content

A unified framework for dataflow analysis #202

Closed
@ecstatic-morse

Description

@ecstatic-morse

Meeting proposal info

After rust-lang/rust#64566, which was a prerequisite for dataflow-based const validation, there are two different frameworks for dataflow analysis in the compiler. I've written a prototype along with a design document for unifying the two frameworks.

The dataflow framework is an internal API (with the exception of one use in cargo-clippy), so this is a good time to improve it if desired. Accordingly, I've made some changes in the prototype, like passing Statements and Terminators directly into the effect methods, and making the signature of call_return_effect more similar to the others. If anyone has had difficulties implementing or inspecting the results of a dataflow analysis, it would be awesome to get your feedback here.

About this issue

This issue corresponds to a meeting proposal for the compiler team
steering meeting. It corresponds to a possible topic of
discussion. You can read more about the steering meeting procedure
here
.

Comment policy

These issues are meant to be used as an "announcements channel"
regarding the proposal, and not as a place to discuss the technical
details. Feel free to subscribe to updates. We'll post comments when
reviewing the proposal in meetings or making a scheduling decision.
In the meantime, if you have questions or ideas, ping the proposers
on Zulip (or elsewhere).

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions