Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

"Stabilizable" prototype for expanded const generics #100

Open
4 tasks
nikomatsakis opened this issue Jul 22, 2024 · 5 comments
Open
4 tasks

"Stabilizable" prototype for expanded const generics #100

nikomatsakis opened this issue Jul 22, 2024 · 5 comments

Comments

@nikomatsakis
Copy link
Contributor

nikomatsakis commented Jul 22, 2024

Metadata
Owner(s) @BoxyUwU
Team(s) lang, types
Goal document 2024h2/min_generic_const_arguments

Summary

Experiment with a new min_generic_const_args implementation to address challenges found with the existing approach. The design for min_generic_const_args is outlined in this document written by @BoxyUwU

Tasks and status

@nikomatsakis nikomatsakis added this to the 2024h2 milestone Jul 22, 2024
@rust-lang rust-lang locked and limited conversation to collaborators Jul 25, 2024
@nikomatsakis
Copy link
Contributor Author

This issue is intended for status updates only.

For general questions or comments, please contact the owner(s) directly.

@BoxyUwU
Copy link
Member

BoxyUwU commented Jul 28, 2024

Key Developments: #125915 landed which is necessary to start implementation work on min_generic_const_args, a draft outlining the ideas behind the proposed feature has also been written
Blockers: no
Help Wanted: not currently in need of anything

@BoxyUwU
Copy link
Member

BoxyUwU commented Sep 12, 2024

The past ~month has been spent figuring out some implementation constraints arising from DefId creation of anon consts. My time has also been somewhat diverted to other things though that should have cleared up now :-)

@BoxyUwU
Copy link
Member

BoxyUwU commented Oct 5, 2024

camlid has started working on using the new lowering schema for more than just const parameters which once done will allow us to introduce a min_generic_const_args feature gate. compiler-errors has been working on removing the eval_x methods on Const that do not perform proper normalization and are incompatible with this feature

@BoxyUwU
Copy link
Member

BoxyUwU commented Nov 20, 2024

min_generic_const_args now exists as a feature gate (though without any functionality only some gated refactorings), shouldn't be long before it has actual functionality behind it 🤞 The refactoring to remove all the eval_x methods on ty::Const has been completed so it will now be possible to correctly implement normalization for constants.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

2 participants