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

remove prohibition of unmanaged constructed types #604

Merged
merged 6 commits into from
Dec 11, 2024

Conversation

RexJaeschke
Copy link
Contributor

No description provided.

@RexJaeschke RexJaeschke added the Review: pending Proposal is available for review label Aug 4, 2022
@RexJaeschke RexJaeschke added this to the C# 8.0 milestone Aug 4, 2022
@RexJaeschke RexJaeschke marked this pull request as draft August 4, 2022 19:00
@RexJaeschke RexJaeschke removed the Review: pending Proposal is available for review label Aug 8, 2022
@RexJaeschke RexJaeschke changed the base branch from draft-v7 to draft-v8 August 8, 2022 13:05
@BillWagner BillWagner force-pushed the unmanaged-constructed-types branch 2 times, most recently from 1ac0cd3 to 629b005 Compare February 6, 2023 13:19
@RexJaeschke RexJaeschke added the type: feature This issue describes a new feature label Jul 22, 2023
@BillWagner BillWagner force-pushed the unmanaged-constructed-types branch from 629b005 to 0e19e09 Compare September 26, 2023 18:10
@BillWagner
Copy link
Member

rebased on the latest draft v8 branch on 9/26/2023

@RexJaeschke RexJaeschke added the Review: pending Proposal is available for review label Oct 13, 2023
@RexJaeschke RexJaeschke marked this pull request as ready for review January 11, 2024 13:53
@jskeet jskeet added the meeting: discuss This issue should be discussed at the next TC49-TG2 meeting label Apr 30, 2024
Copy link
Member

@BillWagner BillWagner left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This LGTM @RexJaeschke

I'm happy to merge at the next meeting.

@jskeet
Copy link
Contributor

jskeet commented May 9, 2024

The title talks about unmanaged constructed types - the text seems to be about pointer types. (It looks like constructed types still count as managed.)
I think I need a bit more context to understand this change.

Copy link
Member

@BillWagner BillWagner left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added one possible suggestion.

standard/types.md Outdated Show resolved Hide resolved
Copy link
Contributor

@Nigel-Ecma Nigel-Ecma left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

One comment added in context as its in the range of the changes.

Lines 515, 617 & 699 probably also need to be changed. Also need to consider the unmanaged_type grammar (line 693), should it now allow a type parameter with the unmanaged constraint?

standard/types.md Outdated Show resolved Hide resolved
@jskeet jskeet self-assigned this May 15, 2024
@jskeet
Copy link
Contributor

jskeet commented May 15, 2024

(@jskeet to have another pass at this - in this PR.)

@jskeet
Copy link
Contributor

jskeet commented May 15, 2024

And look for other places, e.g. 515.

@jskeet
Copy link
Contributor

jskeet commented May 15, 2024

Also (try to) remove the grammar as type parameters can be unmanaged - instead, make references to it specify that the type must be unmanaged. (Do this in a separate commit.)

@jskeet
Copy link
Contributor

jskeet commented Oct 28, 2024

We should talk about this again - I'm finding it hard to get my head back into it, so when we talk, let's make verbose notes.

@jskeet
Copy link
Contributor

jskeet commented Dec 10, 2024

The latest merge has undone all the changes here... suggest we revert the last commit.

@BillWagner BillWagner force-pushed the unmanaged-constructed-types branch from c155346 to be915bc Compare December 11, 2024 16:55
@BillWagner
Copy link
Member

OK, I went through the merge, tried to revert and that failed to make any sensible changes (the only change left was the revert of the links for the "pointer" restriction.

Tried a rebase as well, and the same issue remained.

I've tried looking at a reflog and I can't find the actual changes there either.

This is the only change I could find.
@BillWagner
Copy link
Member

BillWagner commented Dec 11, 2024

Here's the original proposal as an issue in C# lang: dotnet/csharplang#1504

And the championed issue is here: dotnet/csharplang#1744

Finally, this issue contains some notes and details: dotnet/csharplang#1937

standard/types.md Outdated Show resolved Hide resolved
standard/types.md Outdated Show resolved Hide resolved
@jskeet jskeet merged commit ce4d2dc into dotnet:draft-v8 Dec 11, 2024
6 checks passed
@BillWagner BillWagner deleted the unmanaged-constructed-types branch December 11, 2024 21:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
meeting: discuss This issue should be discussed at the next TC49-TG2 meeting Review: pending Proposal is available for review type: feature This issue describes a new feature
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants