-
Notifications
You must be signed in to change notification settings - Fork 825
Move language features from preview to langversion 10 #18708
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
base: main
Are you sure you want to change the base?
Conversation
|
…into move-from-9-to-10
…etters and do separately
I noticed a lot of changes triggered for signature generation and printing due to AllowAccessModifiersToAutoPropertiesGettersAndSetters (from #16861 ). I will raise a PR just for enabling that to see the impact in isolation, would then kindly ask you for help in identifying if those changes are desired or not.
=> I think its OK and it prints a different, but equally correct thing. Just want to be safe ... |
EDIT: I was fully ignorant of the comment which was there, @Martin521 already thought of that scenario upfront. @Martin521 : When moving nowarn from preview to stable, a .fsx behavior broke - it relied on Is the break in behaviour here expected and part of breaking changes, or accidental and this feature was ( // #nowarn seen in closed .fsx is global to the closure
[<Fact>]
member public this.``Fsx.NoError.ScriptClosure.TransitiveLoad16``() =
use _guard = this.UsingNewVS()
let solution = this.CreateSolution()
let project = CreateProject(solution,"testproject")
let thisProject = AddFileFromText(project,"ThisProject.fsx",
["#nowarn \"44\""
])
let script1 = AddFileFromText(project,"Script1.fsx",
["#load \"ThisProject.fsx\"" // Should bring in #nowarn "44" so we don't see this warning:
"[<System.Obsolete(\"x\")>]"
"let fn x = 0"
"let y = fn 1"
])
let script1 = OpenFile(project,"Script1.fsx")
MoveCursorToEndOfMarker(script1,"let y = f")
TakeCoffeeBreak(this.VS)
AssertNoErrorsOrWarnings(project)
// AssertExactlyOneErrorSeenContaining(project, "This construct is deprecated. x") // This is expected for langVersion >= 10.0
|
Yes, this by design. |
It is not necessary but more explicit.
Could you please show the cases when there are unnecessary access modifiers added?
It will only unify the getter and setter which has the same indexer type for indexed properties. And the indexed-and-normal-mixed properties cannot be compiled. |
@ijklam : I will finish the existing block of features first and then open a PR separately for it, to make it more apparent. |
No description provided.