-
Notifications
You must be signed in to change notification settings - Fork 789
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
Collection of issues with byref analysis #862
Comments
Would it make sense to tackle (parts of) this planned User Voice item at the same time, since it will also affect the safety rules by loosening them in some cases? |
Regarding my last comment, byref locals and returns have now been merged into the Roslyn tree - see here. |
This is worth going through. |
I've updated the checklist. These still have issues:
|
The tupling one is a bit more concerning. We need to always error if we can't guarantee the compiler will not make a tuple, which we do in some situations. For example, this will not compile: type Test() =
static member Cool(r: inref<int>, x: int) = ()
type Test2() =
static member Dooby((r: inref<int>, x: int) as y) =
Test.Cool y |
We have resolved these in 15.9 now. |
There are a number of holes in checking the use of byref values. I'm collecting these into one issue since if we fix any one of them we may as well go through and address them all.
Addressed:
I'll close the individual bug entries and reactivate if we don't fix them all in one go.
The text was updated successfully, but these errors were encountered: