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

Champion: relax ordering constraints around ref and partial modifiers on type declarations #946

Open
1 of 5 tasks
agocke opened this issue Sep 28, 2017 · 3 comments
Open
1 of 5 tasks
Assignees
Labels
Needs Implementation The specification for this issue has been approved, it needs an implementation Proposal champion Proposal
Milestone

Comments

@agocke
Copy link
Member

agocke commented Sep 28, 2017

Currently, partial must appear directly before struct, class, or another type declaration keyword. If the type is a ref struct, ref must appear immediately before partial or struct. It seems likely that various other keywords could be used to disambiguate these contextual modifiers and allow us to relax the constraints on where partial and ref can appear in the modifier list.

  • Proposal added
  • Discussed in LDM
  • Decision in LDM
  • Finalized (done, rejected, inactive)
  • Spec'ed

See https://github.com/dotnet/csharplang/blob/master/meetings/2017/LDM-2017-12-04.md

@CyrusNajmabadi
Copy link
Member

Note: i've looked at https://github.com/dotnet/csharplang/blob/master/meetings/2017/LDM-2017-12-04.md, but i can't find where in it it refers to this issue. Can you link/copy the appropriate section?

Thanks!

@jcouv jcouv modified the milestones: 7.3, 8.0 candidate Apr 5, 2018
@jcouv jcouv assigned jcouv and unassigned mattwar Apr 6, 2018
@Joe4evr
Copy link
Contributor

Joe4evr commented Apr 6, 2018

Can restrictions around partial just be relaxed entirely? I'd like it if partial abstract class worked just the same as abstract partial class.

@gafter gafter added this to 8.0 Candidate in Language Version Planning Mar 6, 2019
@gafter gafter moved this from 8.0 Candidate to C# 7.3 in Language Version Planning Mar 6, 2019
@jcouv jcouv moved this from C# 7.3 to 8.0 Candidate in Language Version Planning Mar 13, 2019
@jcouv jcouv modified the milestones: 8.0 candidate, 8.X candidate Jul 18, 2019
@jcouv jcouv moved this from 8.0 Candidate to 8.x Candidate in Language Version Planning Jul 23, 2019
@gafter gafter moved this from 8.x Candidate to 9.0 Candidate in Language Version Planning Sep 16, 2019
@gafter gafter modified the milestones: 8.X candidate, 9.0 candidate Sep 16, 2019
@MadsTorgersen MadsTorgersen modified the milestones: 9.0 candidate, Any Time Sep 9, 2020
@333fred 333fred moved this from 9.0 Candidate to Any Time in Language Version Planning Sep 9, 2020
@333fred 333fred added the Needs Implementation The specification for this issue has been approved, it needs an implementation label Oct 15, 2020
@333fred 333fred removed this from Any Time in Language Version Planning Feb 6, 2021
@Joe4evr
Copy link
Contributor

Joe4evr commented Apr 29, 2022

See https://github.com/dotnet/csharplang/blob/master/meetings/2017/LDM-2017-12-04.md

So that link does not talk about partial anywhere (as @CyrusNajmabadi noted), so I did a quick search for the paper trail myself:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Needs Implementation The specification for this issue has been approved, it needs an implementation Proposal champion Proposal
Projects
None yet
Development

No branches or pull requests

9 participants